whisper-diarization

给语音转写加上说话人标签,会议记录一目了然

这是一个基于OpenAI Whisper的自动语音识别与说话人分离工具,解决的是多说话人场景下语音转写时无法区分谁在说话的问题。它结合Whisper的强大多语种识别能力和说话人分离技术,输出带时间戳和说话人标签的转录文本。核心能力包括:支持Whisper多种模型尺寸,提供说话人嵌入提取与聚类,可生成SRT/VTT字幕文件,并支持在Google Colab中直接运行。项目以Jupyter Notebook为主要形态,提供了完整的使用示例,适合快速上手。

开源 free 语音识别
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 5659
维护状态 维护中
是否开源 是
定价模式 free

项目数据

分类语音识别
开发团队MahmoudAshraf97
所属国家
官网地址
定价模式free
价格说明开源项目,免费使用
访问状态
是否开源是
开源协议BSD-2-Clause
主要语言Jupyter Notebook
技术栈/模型asr,speaker-diarization,speech,speech-recognition,speech-to-text,whisper
GitHub 星标★ 5659
30天Star增速
HF 下载量
上线时间2023-01-25 00:00:00
最近更新2026-09-26 00:00:00
维护状态维护中
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-13
浏览次数12

使用教程

难度:进阶 约 30 分钟 部署方式:本地安装 6 步

环境要求

  • Python >= 3.10(Python 3.9 也能用,但需手动逐个安装依赖)
  • 系统已安装 FFMPEG(安装依赖的前置条件)
  • 安装依赖前需先准备好 Cython
  • 本地运行需有可用 GPU/足够显存(并行脚本要求 >=10GB VRAM)

安装与启动步骤

  1. 1准备 Python 环境

    确认 Python 版本不低于 3.10;若用 3.9,需按 README 提示手动逐个安装依赖,不能直接批量装。

    python --version
  2. 2安装 Cython 与 FFMPEG

    Cython 与 FFMPEG 是安装依赖的前置条件。Linux 可用 apt 装 cython3,其他平台用 pip 安装。

    pip install cython
  3. 3安装项目依赖

    README 的安装章节要求先装好 FFMPEG 与 Cython 后再安装依赖,具体依赖清单请按仓库 README 给出的安装命令执行。

  4. 4运行说话人分离

    用 diarize.py 处理音频,-a 后接音频文件名,替换成你自己的文件路径。

    python diarize.py -a audio.mp3
  5. 5高显存并行运行

    显存 >=10GB 时可改用并行脚本,NeMo 与 Whisper 同时跑,结果相同但该功能仍为实验性。

    python diarize_parallel.py -a audio.mp3
  6. 6或用 Colab 免装

    不想本地配环境,可直接打开 README 中的 Colab Notebook 在云端运行完整示例。

如何确认成功

命令执行结束且无报错,得到带时间戳与说话人标签的转录文本。

常见问题

Q:Python 3.9 可以运行吗?

A:可以运行,但不能直接装依赖,需要按 README 说明手动逐个安装各项依赖,建议直接使用 3.10 及以上版本。

Q:显存不够怎么办?

A:使用 diarize.py 即可;只有显存 >=10GB 时才建议改用 diarize_parallel.py 并行运行。

Q:diarize_parallel.py 报错正常吗?

A:该并行方式在 README 中标为实验性,可能出现错误和边界问题,结果与普通脚本一致,可反馈问题。

Q:不想装本地环境怎么办?

A:可直接打开 README 里的 Colab Notebook,在 Google Colab 中运行 Whisper 转写加 NeMo 说话人分离示例。

注意事项

  • FFMPEG 与 Cython 必须先于依赖安装完成,否则依赖装不上。
  • diarize.py 与 diarize_parallel.py 结果相同,差别只是并行执行速度。
  • 命令中的 audio.mp3 是示例文件名,请替换为真实音频路径。

核心亮点

  • 直接复用Whisper的识别结果,无需额外训练,安装配置简单
  • 内置说话人分离流程,自动标注说话人,输出带标签的转录文本
  • 支持生成字幕文件,方便视频后期制作

不足之处

  • 说话人分离效果依赖音频质量和说话人数量,重叠语音场景准确率下降
  • 文档和社区支持相对薄弱,问题排查依赖个人经验

适用场景

  • 会议录音转写并区分发言人
  • 访谈、播客内容整理与字幕生成
  • 视频课程或讲座的多说话人内容分析

替代项目

pyannote.audio、SpeechBrain、NVIDIA NeMo

项目介绍

whisper-diarization 是语音识别领域的开源项目,由 MahmoudAshraf97 开发,2023 年首次发布。

在全站 13,148 个收录项目中,它的 GitHub 星标数(5,659)位列前 8%,在语音识别分类的 214 个项目里位列前 12%。

近 45 天,它的 GitHub 星标从 5,617 增加到 5,659,净增 42。

项目仍在小幅维护中,最近一次代码更新于 2026-09-26。免费使用。

它主要面向的使用场景是:会议录音转写并区分发言人。同类可对比的替代方案包括 pyannote.audio、SpeechBrain、NVIDIA NeMo。

上一篇:LiveCaptions-Translator

下一篇:WhisperLiveKit

同类项目推荐

obs-localvocal 开源

直播录屏时,本地AI实时生成字幕,保护隐私零延迟

OBS plugin for local speech recognition and captioning using AI

★ 1617 2026-09-10
LiveCaptions-Translator 开源

实时捕获系统音频,一键翻译成你懂的语言

Lightweight and powerful real-time audio/speech translation tool based on Windows Li···

★ 3767 2026-08-10
speechbrain 开源

一站式 PyTorch 语音工具箱,快速搞定识别、说话人验证等任务

A PyTorch-based Speech Toolkit

★ 11841 2026-08-26
whisper-diarization 开源

给语音转写加上说话人标签,会议记录一目了然

Automatic Speech Recognition with Speaker Diarization based on OpenAI Whisper

★ 5659 2026-08-13