一句话总结
2026 年 8 月 25 日,开源项目 hayamimi(早耳) 上线 GitHub,两天斩获 253+ Star。它用「按语言路由到专用模型」的思路,在纯 CPU、无 GPU、无云 API、不到 2GB 内存的条件下实现实时多语言语音转文字——日语广播实测 CER 只有 5.8%,不到 whisper-large-v3-turbo 13.8% 的一半,还能叠加说话人标签、实时翻译和 OBS 直播字幕。
数据来源
本文事实依据来自 hayamimi 官方仓库 README(oboroge0/hayamimi,GitHub API 2026-08-27 抓取,⭐253)、其 docs/SCORECARD.md 与 docs/GOALS.md 性能数据,以及 sherpa-onnx 项目公开文档。
名字的由来:「早耳」要的就是快
「早耳」(hayamimi)在日语里指「耳朵很灵、消息灵通的人」。项目的设计目标也照这个名字来:你还在说话,字幕就已经开始出现;停止说话约 100ms 后,一条定稿的字幕就落地了。
这背后是一个很现实的痛点:大多数「纯 CPU 实时转写」的方案,都会退回到一个通用模型(通常是 Whisper),然后接受它的精度上限。hayamimi 反其道而行——把每一句话路由到最适合它语言的专用模型,全部以 INT8 量化 ONNX 的形式通过 sherpa-onnx 运行,不碰 PyTorch、不碰 CUDA。

核心功能:从语言路由到直播字幕
1. 五路语言路由,1600+ 语言兜底
hayamimi 内置了一个「5 路由语言目录」:日语 / 中文 / 韩语 / 粤语 / 英语 + 24 种欧盟语言,每种语言都走各自最擅长的模型;剩下的约 1600 种语言则回退到 Meta 的 Omnilingual ASR。这意味着它不像通用模型那样「一碗水端平」,而是让每种语言都用上「行家」模型。
2. 部分字幕 + 快速定稿 + 两遍精炼
这是它「快」的核心机制:
- 部分字幕:说话进行中,草稿文字每约 0.5 秒刷新一次
- 快速定稿:停止说话后约 100ms,一条定稿字幕就落地(日语;其他语言见 GOALS)
- 两遍精炼:静音 2 秒后,把最近几句话批量重新解码,得到更高精度的「干净」版本(日语广播 CER 从 15.5% 降到 12.0%)

3. 说话人标签 + 实时翻译
用 CAM++ 说话人嵌入,给每句话打上 S1 / S2 / … 标签(轮次切分,非完整说话人分离);--translate en,zh,ko 可以实时把日语翻译成英语 / 中文 / 韩语(英语走 FuguMT,中韩走 M2M-100)。
4. OBS 直播字幕 + 本地仪表盘
--serve 会起一个本地 HTTP 服务,暴露三个视图:
/dashboard:实时仪表盘——进行中语音的部分文本条、带语言徽章和说话人标签的定稿流、每行延迟、逐行翻译、以及落地中的两遍精炼结果/:极简 OBS 浏览器源叠加层(在 OBS 里加这个 URL 当 Browser Source 就能出直播字幕)/transcript:纯文本滚动历史记录
5. 网络音频输入(手机 / ESP32 都能喂)
--input ws 会起一个 WebSocket 摄取端点,让手机或 stackchan 级 ESP32 板子通过局域网把麦克风音频流送进来,走同一条转写流水线。协议简单:连到 /ingest,发一条 JSON 文本帧(采样率 16000、pcm_s16le、单声道),然后直接流式发 PCM 音频。仓库里还附带一个零依赖的参考客户端 ws_mic_client.py。
6. 内存有上限
用 LRU 模型驱逐,让常驻模型始终控制在一个可配置的上限内(默认 < 2GB 总量)。这对低配机器或长期运行的场景很重要。
性能:为什么它能跑赢 Whisper
这是项目最有说服力的部分。在真实日语广播音频上(见 docs/SCORECARD.md),hayamimi 的路由方案拿到 5.8% CER,而 whisper-large-v3-turbo 在同样片段上是 13.8%——不到后者的一半。同时它在 6 核桌面 CPU 上能跑到 10-50 倍实时(即 1 秒音频只需 0.02-0.1 秒处理)。

数字背后的逻辑很简单:通用模型要为所有语言兜底,专用模型只为一种语言做到极致。当你明确知道输入是日语时,用日语专用模型自然更准、更快。hayamimi 的价值,就是把这套「按语言选模型」的路由,打包成一个开箱即用的实时工具。
安装与上手
要求 Python 3.10+ 和 PATH 里的 ffmpeg,开发与测试环境是 Windows 11(macOS / Linux 预期可用,端到端 CI 尚未覆盖)。
python -m venv .venv
# Windows
.venv\Scripts\pip install -r requirements.txt
.venv\Scripts\python scripts\download_models.py
# 实时转写(麦克风输入)
.venv\Scripts\python scripts\realtime_transcribe.py
# 带仪表盘 + OBS 叠加层
.venv\Scripts\python scripts\realtime_transcribe.py --serve
# -> 浏览器打开 http://localhost:8833/dashboard
download_models.py 默认拉取约 3.1GB 预训练模型到 models/;加 --minimal 则只装约 1.1GB 的日英版(ReazonSpeech、whisper-tiny、Silero VAD、日语标点)。各模型的许可证责任在 THIRD_PARTY_NOTICES.md 里列得很清楚,商用前务必过一遍。
适合谁用
- 直播 / 录播字幕制作者:OBS 浏览器源叠加 + 实时字幕,一条命令搞定,纯本地、零订阅
- 多语言会议 / 访谈记录:说话人标签 + 实时翻译,日语为主的场景尤其受益
- 隐私敏感、不能上云的场景:全程无云 API,音频不出本机
- 低配机器 / 嵌入式玩家:< 2GB 内存 + 纯 CPU,ESP32 还能当远端麦克风
- 想折腾语音识别的开发者:语言路由 + 两遍精炼 + 量化 ONNX 是干净的参考实现
访问说明
- 仓库地址:github.com/oboroge0/hayamimi
- 纯本地运行,无在线服务;模型下载约 1.1GB(最小版)~3.1GB(完整版)
- 中文 / 韩语 / 粤语 / 英语等均在 5 路由目录内,开箱即用
一句话收尾:当「通用」成为精度的天花板,「专一」就成了突破点。早耳用 5 条路由 + 量化 ONNX 证明,纯 CPU 也能做到实时、更准、还不用上云。
数据来源:GitHub API repos/oboroge0/hayamimi(2026-08-27 抓取,⭐253)+ hayamimi 官方 README、docs/SCORECARD.md、docs/GOALS.md + sherpa-onnx 项目文档。