WhisperLiveKit
本地实时语音识别工具,支持流式ASR与说话人分离
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
本地实时语音识别工具,支持流式ASR与说话人分离
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下:团队正在开一场跨时区会议,来自法国、西班牙、日本的同事轮流发言,传统云端语音识别要么因为网络延迟而卡顿,要么因为多人重叠说话而一团糟。更关键的是——公司的商业机密讨论,谁都不想上传到第三方服务器。
这就是 WhisperLiveKit 诞生的直接原因。
WhisperLiveKit 的开发者 QuentinFuxa 在项目文档中明确指出:现有开源语音识别方案存在三个核心问题——延迟高、无法区分说话人、云端方案存在隐私风险。项目基于 OpenAI Whisper 和 Faster-Whisper 构建,通过流式管道(Streaming Pipeline)设计,实现了端到端 80ms 的超低延迟。配合说话人分离(Speaker Diarization)技术,系统能够自动识别"谁在什么时候说了什么",解决了会议记录场景中最棘手的痛点。

WhisperLiveKit 的架构设计体现了明确的模块化思路,整个流水线分为以下几个关键阶段:
音频输入层:支持 PCM 输入(原生流式)和 WAV 文件两种模式。PCM 输入允许从麦克风实时捕获音频流,是实时对话场景的核心;WAV 模式则支持对已有录音文件进行批量处理。
VAD(语音活动检测)层:使用 Silero VAD 模型检测语音边界,过滤静音和背景噪声,避免无效数据进入下游处理。这一层直接决定了整体延迟——VAD 响应越快,整体延迟越低。
ASR 识别层:核心使用 Faster-Whisper(OpenAI Whisper 的 CTranslate2 优化版),支持 tiny/base/small/medium/large 等多种模型规模。Faster-Whisper 通过 INT8 量化将推理速度提升 4 倍,内存占用减少 50%,在消费级 GPU 上即可流畅运行。
说话人分离层:集成 SortFormer 和 pyannote-audio 两种说话人分离方案。SortFormer 是更轻量的选择,适合 2-4 人会议;pyannote 在复杂多人场景下准确率更高。两者都是开源方案,部署在本地无需调用任何云 API。
翻译层:内置 Whisper 原生翻译能力,支持从任意语言直接翻译为英语。对于需要多语言会议记录的国际团队,这一功能省去了额外的翻译管道。

项目提供了完整的 Docker 部署方案,包含 GPU 和 CPU 两个版本。GPU 版本使用 NVIDIA CUDA 12.9 多阶段构建,运行时仅包含 CUDA 运行时和 Python 依赖,镜像大小控制在合理范围内;CPU 版本则适合没有独立显卡的服务器环境,虽然推理速度较慢,但功能完整。
docker-compose.yml 中预置了两种服务模板:wlk-gpu-sortformer 使用 SortFormer 进行说话人分离,wlk-gpu-voxtral 则使用 Voxtral 模型。默认配置为 medium 模型(3B 参数),如果对识别质量要求更高,可以切换到 large-v3 模型,但显存需求也会从 8GB 提升至 10GB 以上。
部署步骤极为简洁——克隆仓库、修改 compose.yml 中的模型配置(如需要)、执行 docker compose up -d 即可。HuggingFace 模型会在首次启动时自动下载,整个过程无需手动干预。

WhisperLiveKit 提供 OpenAI Whisper API 兼容端点和 Deepgram Streaming API 兼容端点。对于已有 OpenAI Whisper API 集成经验的开发者,迁移成本几乎为零;对于使用 Deepgram 的团队,也可以通过简单的端点切换接入。
除了 HTTP API,项目还提供 Python SDK,支持 TestHarness 直接在代码中进行实时音频测试,开发者可以在本地验证模型效果后再决定部署方式。SDK 的设计遵循了现代异步风格,支持 async/await,方便集成到 FastAPI 或其他异步 web 框架中。
需要坦诚说明的是,WhisperLiveKit 目前的最大局限在于硬件门槛。即使是 CPU 版本,实测 medium 模型实时转录也需要约 4 核以上 CPU 持续满载,large 模型则几乎只能在高端 GPU 上运行实时模式。对于笔记本用户,低功耗场景下电池续航会受显著影响。
其次,说话人分离功能虽然开源,但 pyannote-audio 的模型需要用户自行从 HuggingFace 下载并接受相应的使用许可(pyannote/speaker-diarization-3.0 需同意用户协议),这给自动化部署带来了一点小摩擦。
此外,项目目前缺乏 Web UI 界面,所有交互都需要通过 API 或 Python SDK 完成。对于非技术用户而言,入门门槛略高。不过,考虑到其核心定位是面向开发者的后端服务,这一设计选择是合理的。
截至目前,WhisperLiveKit 已获得超过 10,000 颗 GitHub Stars,在开源语音识别项目中增长势头强劲。项目的成功折射出一个更大的趋势:本地化 AI 推理正在从极客玩具走向工程化落地。随着 Whisper、Faster-Whisper 等模型在消费级硬件上的可行性不断提升,越来越多的开发者开始探索"数据不出本地"的 AI 应用范式。
WhisperLiveKit 的出现,填补了本地流式语音识别 + 说话人分离这一细分场景的工具空白。它不是最简单的方案,也不是功能最全的方案,但在"本地运行 + 实时流式 + 多说话人 + 翻译"这四个约束的交叉点上,它是目前开源世界里最接近工业化可用的选择。