AX 爱鲜报

Whisper 语音识别

OpenAI 开源的通用语音识别模型,基于大规模弱监督训练,支持多语言语音转写、语音翻译与语种识别,提供多种模型尺寸与命令行、Python 两种调用方式。

过去 7 天收获 2 颗 Star

爱鲜报评分

0.0

0 人评分

111k

星数

否

中文

Python

主语言

是

活跃

84

贡献者

人工分析

EDITORIAL

推荐理由

Whisper 是当前最主流的开源语音识别方案之一,识别效果稳定、多语言覆盖广,且模型从 tiny 到 large 可按显存与速度灵活取舍。它同时提供 CLI 与 Python API,接入成本低,适合快速搭建转写、字幕与语音翻译能力。MIT 协议商用友好,社区生态成熟。

适用场景

  • 音视频字幕自动生成
  • 会议与访谈录音转写
  • 播客/课程内容文字化
  • 多语言语音翻译
  • 语音语种识别与预处理

优点

  • 多语言识别与翻译一体化,单模型替代传统多阶段流程
  • 提供 tiny 到 large、turbo 多种尺寸,兼顾速度与精度
  • CLI 与 Python API 双入口,集成简单
  • MIT 协议,商用限制少,社区活跃

缺点

  • 大模型推理需要较大显存,纯 CPU 速度较慢
  • turbo 模型不支持翻译任务,需改用多语言模型
  • 长音频依赖 30 秒滑窗处理,需自行做分段与拼接
  • 不同语种识别质量差异明显,中文等需实测调优
上手难度 入门

Whisper 简介

Whisper 是 OpenAI 开源的通用语音识别模型,论文标题为 Robust Speech Recognition via Large-Scale Weak Supervision。它在大规模多样化音频上训练,是一个多任务模型,可同时完成:

  • 多语言语音识别(转写)
  • 语音翻译(非英语语音转英文文本)
  • 语种识别
  • 语音活动检测等辅助任务

技术思路

模型采用 Transformer 序列到序列结构,把多种语音处理任务统一表示为待预测的 token 序列,通过特殊 token 指定任务类型。这样一个模型即可替代传统语音流水线中的多个阶段。

模型规格

官方提供多种尺寸,按速度与精度取舍(显存为大致需求):

尺寸 参数量 仅英文 多语言 显存 相对速度
tiny 39M tiny.en tiny ~1GB ~10x
base 74M base.en base ~1GB ~7x
small 244M small.en small ~2GB ~4x
medium 769M medium.en medium ~5GB ~2x
large 1550M - large ~10GB 1x
turbo 809M - turbo ~6GB ~8x

其中 turbo 是 large-v3 的优化版本,速度更快、精度略有下降,但不支持翻译任务。

安装与依赖

通过 pip 安装,并需要系统安装 ffmpeg:

pip install -U openai-whisper
# Ubuntu/Debian
sudo apt install ffmpeg
# macOS
brew install ffmpeg

若 tiktoken 无预编译包,可能还需要 Rust 工具链。

命令行使用

# 默认使用 turbo 模型转写
whisper audio.mp3 --model turbo

# 指定语种
whisper japanese.wav --language Japanese

# 翻译为英文(需多语言模型)
whisper japanese.wav --model medium --language Japanese --task translate

Python 调用

import whisper

model = whisper.load_model("turbo")
result = model.transcribe("audio.mp3")
print(result["text"])

transcribe() 内部以 30 秒滑动窗口对音频做自回归预测,长音频会自动切分处理。也可使用 detect_language()、decode() 等底层接口自行控制流程。

使用建议

  • 纯英文场景优先选 .en 模型,小尺寸下提升明显。
  • 需要翻译时避开 turbo,改用 medium 或 large。
  • 显存有限时从 small/base 起步,再按效果升级。
  • 中文等语种效果差异较大,建议用真实数据先做小规模评测。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。