Hugging Face 推理端点:快速 Whisper 转录

Hugging Face 在推理端点上推出了新的 OpenAI Whisper 部署选项,相比之前的版本提供了高达 8 倍的性能提升。此更新使用户能够使用以社区为中心、利用开源优化的方式部署专用且具成本效益的转录模型。

优化的推理栈

新的 Whisper 端点由 vLLM 项目提供支持,能够在各种硬件系列上实现高效的模型执行,特别针对计算能力为 8.9 或更高(Ada Lovelace)的 NVIDIA GPU,例如 L4 和 L40s。

为实现这些性能提升,栈采用了三项主要的软件优化:

  • PyTorch 编译 (torch.compile): 以即时(JIT)方式生成优化的内核,允许系统修改计算图并重新排序操作。
  • CUDA 图(CUDA Graphs): 通过记录顺序操作并将其分组为更大的工作单元,减少 GPU 调度开销、数据移动和同步。
  • Float8 KV 缓存: 动态量化激活以降低内存需求。计算在 bfloat16(半精度)下进行,而输出存储为 float8(1 字节 vs bfloat16 的 2 字节),通过在 KV 缓存中存储更多元素来提升缓存命中率。

性能基准

评估在单个 L4 GPU 上使用 bfloat16 进行,解码设置(语言、束宽、批量大小)保持一致。基准测试聚焦于三种模型:Whisper Large V3、Whisper Large V3‑Turbo 和 Distil‑Whisper Large V3.5。

转录质量

转录准确度使用词错误率(WER)在来自 Open ASR Leaderboard 的八个标准数据集上进行测量,包括 AMI、GigaSpeech、LibriSpeech(Clean 和 Other)、SPGISpeech、Tedlium、VoxPopuli 和 Earnings22。结果表明,所有三种 Whisper 变体的 WER 表现与其 Transformers 库基线相当,这意味着尽管速度提升,转录质量并未下降。

运行时效率

使用 rev16 长篇数据集(音频片段超过 45 分钟),Hugging Face 测量了实时因子(RTFx)——音频时长与转录时间的比值。Whisper Large V3 的 RTFx 相比之前的实现提升了近 8 倍。

部署与实现

用户可以通过 Hugging Face 端点选择模型并配置参数,部署 ASR(自动语音识别)推理流水线。

Python 实现示例

可以使用对已部署端点的简单 HTTP 请求进行推理。以下是测试已部署检查点的实现示例:

import requests

ENDPOINT_URL = "https://<your‑hf‑endpoint>.cloud/api/v1/audio/transcriptions"
HF_TOKEN     = "hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
AUDIO_FILE   = "sample.wav"

headers = {"Authorization": f"Bearer {HF_TOKEN}"}

with open(AUDIO_FILE, "rb") as f:
    files = {"file": f.read()}

response = requests.post(ENDPOINT_URL, headers=headers, files=files)
response.raise_for_status()

print("Transcript:", response.json()["text"])

实时应用

这些端点的加速使得实时转录应用的开发成为可能。Hugging Face 通过使用 FastRTC 构建的演示展示了此能力,用户可以实时转录来自麦克风的语音。

Sources