Repolode
m-bain

m-bain/whisperX

基于 Whisper 的开源语音转文字工具,支持词级时间戳和说话人分离。

可替代:Otter.aiDescript

Star
24,693
Fork
2,495
未关闭 Issue
229
最近提交
前天

这是什么?

WhisperX 是一个 Python 语音识别工具,在 OpenAI Whisper 的基础上加入批处理推理,并使用 faster-whisper 作为后端。原始 Whisper 只能给出句子级时间戳,误差可达几秒;WhisperX 通过 wav2vec2 强制对齐为每个词提供更准确的时间信息。

转写前,项目会先做语音活动检测(VAD)切分音频,用于减少幻觉并支持批处理。借助 pyannote-audio 进行说话人分离,可为每段或每个词标注说话人 ID,已知说话人数量时还可以加以限定。

工具可通过 PyPI 安装,既能用命令行(如 `whisperx audio.wav`)调用,也提供 Python 接口。英语、法语、德语、西班牙语、意大利语等语言会自动选择对齐模型,并支持 CPU 与 GPU 运行。

核心功能

  • 01借助 faster-whisper 后端进行批处理推理,加快转写速度。
  • 02通过 wav2vec2 强制对齐输出词级时间戳。
  • 03基于 pyannote-audio 进行说话人分离并标注说话人 ID。
  • 04转写前使用语音活动检测预处理,减少幻觉输出。
  • 05同时提供命令行与 Python 接口,支持 CPU 和 CUDA GPU。

适用场景

  • 为录制的视频或音频生成时间精确的字幕(SRT)。
  • 转写多人会议或访谈,并标注说话人。
  • 构建需要对齐转录文本的语音数据集或研究流程。
  • 借助对应语言的对齐模型转写非英语音频。

快速上手

  1. 1

    若使用GPU,先安装CUDA工具包12.8(仅CPU可跳过)

  2. 2

    从PyPI安装WhisperX

    pip install whisperx
  3. 3

    转录音频文件

    whisperx path/to/audio.wav

使用前须知

  • 要快速使用GPU需要支持CUDA 12.8的NVIDIA显卡;在CPU上运行需使用int8计算类型。
  • 说话人分离需要Hugging Face令牌,并需接受pyannote模型的用户协议。
  • 含有对齐模型词典之外字符的词(如带符号的数字)无法获得时间戳。
  • 其他语言需要对应语言的音素对齐模型。

标签

常见问题

whisperX 是什么?
基于 Whisper 的开源语音转文字工具,支持词级时间戳和说话人分离。 WhisperX 是一个 Python 语音识别工具,在 OpenAI Whisper 的基础上加入批处理推理,并使用 faster-whisper 作为后端。原始 Whisper 只能给出句子级时间戳,误差可达几秒;WhisperX 通过 wav2vec2 强制对齐为每个词提供更准确的时间信息。
whisperX 可以免费使用吗?用的什么许可证?
whisperX 以 BSD-2-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
whisperX 还在维护吗?
活跃维护中。whisperX 最近一次提交是在 2026年10月18日。
whisperX 适合用来做什么?
为录制的视频或音频生成时间精确的字幕(SRT)。 转写多人会议或访谈,并标注说话人。 构建需要对齐转录文本的语音数据集或研究流程。 借助对应语言的对齐模型转写非英语音频。
whisperX 怎么安装和运行?
若使用GPU,先安装CUDA工具包12.8(仅CPU可跳过) 从PyPI安装WhisperX: pip install whisperx 转录音频文件: whisperx path/to/audio.wav
在哪里获取 whisperX?
源代码和安装说明在 GitHub 上:https://github.com/m-bain/whisperX

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目