#3252 本地Qwen-asr支持说话人分离吗?

140.235* Posted at: 20 days ago 👁99

在用Qwen-asr本地模型进行语音转字幕时,不管选哪个说话人分离模型,最后输出的内容都没有插入说话人标签。

4 Replies

这是因为 Qwen-ASR 本地模型本身不支持说话人分离功能。

  1. 核心原因:根据知识库,Qwen-ASR(Qwen3-ASR)是一个语音识别模型,其功能是将语音转换为文字。说话人分离(区分不同说话人)是一个独立的功能,需要依赖专门的说话人分离模型(如 Pyannote 3.1、CAM++ 或内置简单模型)来实现。在软件中,即使选择了说话人分离模型,如果语音识别渠道(如 Qwen-ASR)本身不具备或未集成说话人分离能力,最终输出就不会包含说话人标签。
  2. 解决方案

    • 方案A(使用支持分离的识别渠道):如果需要说话人分离,请改用支持此功能的语音识别渠道。例如:

      • WhisperX API:需独立部署 whisperx-api 服务,它集成了说话人分离。
      • 配置了说话人分离模型的 faster-whisper:在“语音识别参数”的高级选项中开启说话人分离,并正确配置模型(如使用 Pyannote 3.1 需 HuggingFace Token)。
    • 方案B(后续处理):先使用 Qwen-ASR 生成无说话人标签的字幕,然后通过其他工具或软件内的“说话人识别”功能进行二次处理(但这通常需要原始音频和已识别的文本,流程更复杂)。
  3. 操作确认:请检查您在“语音识别参数”->“说话人分离”中选择的模型是否已正确下载并配置(特别是 Pyannote 需要 Token)。但请注意,即使这里配置了,如果上方的“语音识别渠道”选择的是 Qwen-ASR,该渠道可能不会调用这些分离模型。

请查阅相关文档:

qwen-asr本身不支持,依赖于 选中识别说话人插入说话人,以及使用的 说话人分离模型,目前只有 pyannote支持所有语言的说话人分离,其他分离模型仅支持中文和英文分离

很奇怪,windows打包版,即使选中识别说话人和插入说话人选项,使用pyannote模型输出结果还是没有说话人,但是用源码部署的就没问题。另外最新的3.97打包版,选择funasr-nano-2512识别语音时会出现错误:语音别阶段出错[阿里FunASR(本地]程序内部错误:partially initialized module'pandas'has noattribute'_pandas_datetime_CAPl' (most likely due to a circular import)concurrent.futures.process._RemoteTraceback:,Ai分析出的问题:1.
打包缺陷:pyVideoTrans 的 PyInstaller 打包配置未能完整包含 Pandas 的 C 扩展( _libs 中的 .pyd 文件)

  1. 多进程导入冲突:当 FunASR 使用 concurrent.futures.ProcessPool 时,子进程尝试重新导入 Pandas,但由于 PyInstaller 的导入钩子( pyimod02_importers )机制,导致循环导入
  2. 版本兼容:Pandas 2.2+ 在 PyInstaller 环境下更容易触发此问题 。

根据开发者回复和您的描述,这两个问题都与Windows打包版的环境封装有关。

问题一:Qwen-ASR使用Pyannote无说话人标签

原因:Windows打包版(PyInstaller打包)在调用Pyannote模型时可能存在环境或路径问题,导致说话人分离功能未能正常生效,而源码部署环境完整,功能正常。
解决方案

  1. 临时方案:使用源码部署版本(通过 uv 运行 sp.py)来处理需要说话人分离的任务。
  2. 反馈与等待:将此问题反馈给开发者,等待后续打包版本的修复。您可以尝试在官方论坛或GitHub Issues中报告此特定于打包版的问题。

问题二:FunASR-nano-2512识别报错 partially initialized module 'pandas'

原因:您的AI分析基本正确。这是Windows打包版(PyInstaller)在封装Pandas库时的一个已知缺陷,特别是在使用多进程(ProcessPool)时,容易引发模块循环导入错误。
解决方案

  1. 首选方案:避免在Windows打包版中使用 funasr-nano-2512 模型。请改用其他语音识别渠道,例如 faster-whisper 或在线API。
  2. 替代方案:如需使用FunASR,请切换到源码部署环境运行。
  3. 根本解决:此问题需要开发者调整PyInstaller打包配置以正确包含Pandas的依赖。您可以向开发者反馈此错误,促使其在未来的打包版本中修复。

总结建议:如果您的工作流严重依赖说话人分离或FunASR模型,目前最稳定的方案是使用源码部署方式运行pyVideoTrans。

请查阅相关文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Related resource