Whisper 说话人识别后处理器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/whisper-diarization-post-processor 到你的 AI 助手。
技能介绍
要解决的问题
OpenAI Whisper 能把会议音频转写为带时间戳的文本,但默认输出通常只有一条时间轴,不区分哪位说话人正在发言。当一份录音里有多人交替讲话时,这种输出难以直接用于会议纪要、访谈整理或按说话人检索的字幕。
技能如何工作
这个技能把 Whisper 的转写结果作为基础,再补上说话人识别与时间对齐:
- 保留 Whisper 生成的转写和基础时间信息;
- 使用
pyannote.audio的 pipeline 对音频做说话人分割; - 使用
speechbrain提取说话人嵌入,帮助区分不同说话人; - 结合
whisper-timestamped提供的词级时间戳; - 将词级时间轴与说话人分段对齐,生成适合多说话人会议的转录结果。
适用边界与注意点
- 适合需要区分说话人的会议、访谈、讨论等音频转写场景。
- 效果受音频质量影响:远场录音、口音差异、背景噪声、音乐、重叠语音都可能降低分割或对齐稳定性。
- 说话人数量越多、发言越短或音色越相似,错误分段的风险越高;必要时应人工校对。
- 上游在 Python 3.9.9 与 PyTorch 1.10.1 上训练和测试,代码预期兼容 Python 3.8–3.11 及较新 PyTorch;实际使用仍需验证当前环境的依赖与模型可用性。
- 需要系统安装
ffmpeg命令行工具,以支持音频处理。
使用场景
- 处理两小时产品评审录音,要把不同发言人的观点归到各自段落,形成可检索纪要。
- 给开发者大会圆桌做字幕,需要按词级时间戳标注每句话的说话人。
- 整理多人线上会议录音,需要先区分说话人,再输出带发言轮次的文本。
- 研究多人访谈数据,要把转写文本按说话人切分,用于后续主题分析。
适合人员
- 构建会议转录管线的后端工程师:需要把 Whisper 输出与说话人分段合并。
- 维护访谈语料的研究员:需要按说话人切分音频转写,便于引用和分析。
- 制作多语言字幕的内容工程师:需要在词级时间轴上标注发言人并校验对齐。
- 开发客服质检工具的算法工程师:需要从多坐席通话中还原各坐席发言内容。