TheStageAI/TheWhisper

Optimized Whisper models for streaming and on-device use

📚 快速概览

TheWhisper 是一个开源的语音转文本系统,构建于 OpenAI 的 Whisper 模型之上。该项目提供:

  • 微调后的 Whisper 检查点,可接受短音频块(10–30 秒),而非原本固定的 30 秒窗口。
  • 针对两大硬件家族的高性能推理引擎:
    • NVIDIA GPU(RTX 4090、L40s、H100、A100、Jetson-Thor),通过自定义的 TheStage AI“ElasticModels”引擎,也可通过标准的 Hugging Face Transformers。
    • Apple Silicon / macOS,通过 CoreML(以及 MLX)引擎,以约 2 W 功耗与约 2 GB RAM 运行。
  • 流式 API,可让您从麦克风或文件持续输入音频,并获取词级时间戳。
  • 简单的 Python 封装(ASRPipeline、StreamingPipeline),以及用 JavaScript/Electron 编写的示例前端。
  • 预构建的 macOS 桌面应用 TheNotes,可演示实时转录。
  • 与原生 Whisper 相比的基准测试(延迟、内存、功耗、WER),发布在 benchmark/ 文件夹中。

该仓库适合想要在自托管环境、云端或设备上自行托管低延迟、低功耗 ASR 服务的开发者。


🛠️ 核心组件

组件 功能 关键技术
模型权重 微调后的 Whisper-large-v3(以及“turbo”变体),具备灵活的块大小。 Hugging Face 🤗 hub
推理引擎 针对 NVIDIA(基于 TensorRT 的 ElasticModels)与 Apple Silicon(CoreML/MLX)优化的运行时。 TheStage AI、NVIDIA、Apple
Python API ASRPipeline 用于单文件转录;StreamingPipeline 用于连续音频。 PyTorch、Torch-Audio、自定义封装
流式工具 MicStream、FileStream、StdoutStream,用于输入音频块并输出结果。 纯 Python
前端演示 Electron 应用与 React 示例,展示实时字幕。 Electron、ReactJS

🚀 快速开始(典型流程)

  1. 安装 – 选择硬件目标:
    # Apple Silicon
    pip install .[apple]
    
    # NVIDIA GPU
    pip install .[nvidia]
    # (optional) TheStage AI optimized engine
    pip install 'thestage-elastic-models[nvidia]==0.2.4.post0' ...
    
  2. 配置 – 若使用 TheStage AI 引擎,请从 TheStage AI 平台获取 API token 并运行:
    thestage config set -t <YOUR_API_TOKEN>
    
  3. 运行快速转录(单文件):
    from thestage_speechkit.nvidia import ASRPipeline
    model = ASRPipeline(model='TheStageAI/thewhisper-large-v3-turbo',
                        chunk_length_s=10, device='cuda')
    result = model('speech.wav')
    print(result['text'])
    
  4. 流式示例 – 采集麦克风音频并打印实时字幕:
    from thestage_speechkit.streaming import StreamingPipeline, MicStream, StdoutStream
    pipe = StreamingPipeline(model='TheStageAI/thewhisper-large-v3-turbo',
                             chunk_length_s=10, platform='apple')
    mic = MicStream(step_size_s=0.5)
    out = StdoutStream()
    while (chunk := mic.next_chunk()) is not None:
        txt, _ = pipe(chunk)
        out.write(txt, None)
    
  5. 桌面应用 – 下载预构建的 macOS TheNotes 包,或按照 React/Electron 教程构建自己的版本。

📊 性能亮点

  • NVIDIA L40s:whisper-large-v3 模型约 220 tokens/秒(10 秒块约 0.5 秒延迟)。
  • Apple Silicon:约 2 W 功耗、约 2 GB RAM,在 M2/M3 芯片上可实时流式处理。
  • 准确度:在 Open ASR 多语言排行榜上评估;WER 与原生 Whisper 相当,同时提供更低延迟。
  • 不同块大小(10 秒、15 秒、20 秒、30 秒)的基准测试位于 benchmark/README.md。

📦 仓库内容

  • thestage_speechkit/ – Python 包,包含 Apple 与 NVIDIA 流水线、VAD 及流式辅助工具。
  • electron_app/ – Electron 前端的源码与构建说明。
  • benchmark/ – 汇总延迟、内存、功耗与 WER 的脚本与表格。
  • README.md – 本文档、快速入门与使用示例。
  • Hugging Face 上 thewhisper-large-v3 与 thewhisper-large-v3-turbo 的模型卡。

🛡️ 许可证与商业使用

  • 代码以 MIT License 发布(见 LICENSE)。
  • 模型权重在 Hugging Face 上开源。
  • 若企业每年需要超过 4 张 GPU 的 TheStage AI 优化引擎,可通过 TheStage AI 联系页面申请商业许可。

🎯 适用对象

  • 构建实时字幕、语音助手或会议转录服务的开发者。
  • 在 Jetson 设备或 Apple Silicon 笔记本上部署 ASR 的边缘/IoT 团队。
  • 想要可预测延迟与成本、可自托管以替代云端 STT API 的企业。

📚 延伸阅读与资源


TheWhisper 是一套实用、可投入生产的语音转文本技术栈,弥合了研究级 Whisper 模型与真实世界硬件性能限制之间的差距。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目