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 实时示例)。
  • 发布说明详细介绍了准确性改进和破坏性更改。

联系方式

  • 电子邮件:pengzhia@gmail.com
  • 仓库中包含微信二维码,用于直接联系。

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트