Quantatirsk/AsrServe

Self-hosted realtime and offline ASR with SOTA open models, speaker diarization and an OpenAI-compatible API. GPU, CPU, macOS Apple Silicon.

AsrServe – セルフホスト型音声テキスト変換サービス

概要

  • 音声をテキストに変換する、すぐに使える API。ローカルで動作するためクラウド呼び出しは不要で、リアルタイムストリーミングとバッチファイル転写の両方をサポートします。
  • このサービスは最新のオープンソース音声モデル(認識用の Confucius4‑R2T2、句読点用の CT‑Transformer、話者分離用の Nemotron‑3)をバンドルし、お使いのハードウェア(CUDA GPU、CPU、Apple Silicon)に最適な推論パスを選択します。

主要功能

  • 最先进的准确性 – 使用 Confucius4‑R2T2 模型和标点转换器,在处理完整个文件后恢复句子边界。
  • 实时和离线模式 – 相同的模型权重支持低延迟 WebSocket 流和批量 /v1/audio/transcriptions 端点。
  • 说话人分离 – 使用 Nemotron‑3 分离模型识别录音中最多 8 个说话人。
  • 单词级时间戳 – 来自 Qwen3‑ForcedAligner 的可选时间戳。
  • 兼容 OpenAI 的 API – 端点遵循 OpenAI /v1/audio/transcriptions 和 /v1/realtime 约定,因此现有 SDK 可直接使用。
  • 热词和提示 – 您可以提供术语列表和录音上下文(最多 2048 个字符),以指导识别器而不强制替换。
  • 跨平台 – 适用于 GPU(quantatrisk/asrserve:gpu)、CPU(:cpu)和 Ascend 910B(:ascend)的 Docker 镜像。通过捆绑的 Rust 后端原生支持 macOS,无需 Docker。
  • 易于部署 – 用于 GPU/CPU 的 Docker‑Compose 文件、用于 macOS 的基于 uv 的简单 Python 启动脚本,以及用于离线机器预下载模型的脚本。

如何开始

# GPU(Docker)– 拉取镜像并启动服务
docker compose up -d               # 使用 quantatrisk/asrserve:gpu

# 仅 CPU(Docker)
docker compose -f compose.cpu.yml up -d   # 拉取 quantatrisk/asrserve:cpu

# macOS 原生(无需 Docker)
uv sync --frozen && ./scripts/build-rust.sh
HF_HOME="$PWD/models/huggingface" uv run --no-sync python start.py   # http://localhost:17003
  • 首次运行会将所需的模型文件下载到 ./models。
  • 服务监听端口 17003;Swagger 文档位于 /docs。

典型 API 调用

  • 文件转录(README 中的 curl 示例)– 发送 WAV 文件,可选的 hotwords、prompt、enable_speaker_diarization 和 word_timestamps 标志。
  • 实时流式传输 – 打开 ws://localhost:17003/v1/stream 的 WebSocket,并流式传输 16 kHz PCM16 音频,或使用兼容 OpenAI 的端点 /v1/realtime?intent=transcription 并带有 Base64 编码的 24 kHz 音频。

适用场景

  • 不允许将音频发送到外部服务的私有或受监管环境。
  • 需要低延迟转录(语音助手、实时字幕)以及偶尔批量处理较长录音的应用程序。
  • 说话人标签有用的多说话人会议。

限制 / 注意事项

  • 需要性能良好的 GPU 才能获得最快性能;CPU 模式较慢但仍可用。
  • 标点恢复在 CPU 上运行,因此会在主转录后增加一个后处理步骤。
  • 热词/提示长度限制为 2048 个字符;更长的输入返回 HTTP 400。
  • 模型文件很大(数百 MB 到几 GB),首次启动时需要下载。

了解更多

  • 实时演示:https://asr.ieeio.com
  • 完整文档:docs/ 文件夹(部署、实时协议、OpenAI 实时示例)。
  • 发布说明详细介绍了准确性改进和破坏性更改。

联系方式

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト