ffmpeg+pyannote+Qwen-ASR音频转写模型部署(linux离线环境)
任务
角色区分+音频撰写
方案测试对比
方案一:FunASR,功能:角色区分+音频转写
问题:漏字,漏标点,同音字识别错误,角色区分不开
方案二:ffmpeg+pyannote+Qwen-ASR
优势:区分较细,可以理解为:根据说话人的换气进行分段,再识别角色,再转写音频,识别同音字的错误率低于FunASR,但对于说话人语音重叠部分识别不出来
离线部署
错误1:在windows环境下打包环境依赖,不适配linux
错误2:Could not load libtorchcoder…
原因分析:pyannote模型在安装的时候会调整至适配的cuda和torch版本。(如何发现:nvidia-smi查看cuda版本,pip list查看torch版本)
解决:要求安装库的时候不自动升级:pip install packeg --no-deps,未解决
原因分析:pyannote与torch的版本不对应
总结:4.x版本适配torch=2.8.0,cuda126(这是我遇到的主要原因)
解决:降级到3.1版本,适配torch=2.1~2.5,cuda118、cu124…
pip install pyannote==3.4.0
错误3:还是不行
原因分析:只更改了库的版本,使用的说话人分离模型没有更改:pyannote/speaker-diarization-community-1
解决:应该使用pyannote/speaker-diarization-3
错误4:更改pyannote/speaker-diarization模型后仍然不行
原因分析:pyannote/speaker-diarization-3模型必要的两个模型:segmentation-3.0(语音活动检测和说话人分段),wespeaker-voxceleb-resnet34-LM(说话人嵌入提取)。
解决:下载两个模型,并在pyannote-diarization_config.yaml中修改pipeline下params字段的embedding和segmentation两个属性为你下载模型的绝对路径,可查看博客
https://blog.csdn.net/gitblog_00923/article/details/151769527
小结
总的来说,在使用ffmpeg+pyannote+Qwen-ASR进行音频转写的过程中,转写的效率和准确率都比较高,但是在离线部署到linux电脑上的时候,真的是关关难过关关过。
总结一下说话人分离模型:pyannote/speaker-diarization-3安装路线:
https://ai.gitcode.com/Ascend-SACT/pyannote-speaker-diarization-3.1
以下为通过大模型查询到的信息:
pyannote/speaker-diarization系列共有5个官方模型,其中4个开源,1个付费
开源的分别是:
pyannote/speaker-diarization,
pyannote/speaker-diarization-3.0,
pyannote/speaker-diarization-3.1(最推荐),
pyannote/speaker-diarization-community-1(准确率高于3.1版本)。
付费商用:pyannote/speaker-diarization-precision-2,准确率更高,每天有免费额度。
最终选择pyannote/speaker-diarization-3.1还是pyannote/speaker-diarization-community-1,大部分取决于你电脑的cuda版本。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)