早耳(hayamimi):纯 CPU 实时多语言语音转文字与翻译的开源利器
> 早耳(hayamimi)—— 一款仅靠 CPU 即可实现实时多语言语音转文字、实时字幕、说话人分离与翻译的开源工具。
## 一、项目背景与痛点
在语音识别(ASR)领域,主流方案如 OpenAI Whisper、DeepSpeech 等虽然准确率优秀,但往往依赖 GPU 或云端 API,导致三大痛点:
1. **硬件门槛高**:个人开发者或小型团队没有高端 GPU,无法本地运行大模型。
2. **隐私与成本**:云端服务需要上传音频,存在隐私泄露风险,且按量计费成本高昂。
3. **实时性不足**:许多离线模型是批处理模式,无法做到边说边出字幕,难以用于直播、会议等场景。
**早耳(hayamimi)** 正是为解决这些问题而生。它完全运行在 CPU 上,无需 GPU,无需联网,即可实现实时语音转文字、翻译、说话人标签和浏览器仪表盘。项目名称“早耳”取自日语“早耳”(はやみみ),意为“灵通的耳朵”,体现了其快速、灵敏的特性。
## 二、项目核心功能
- **实时多语言语音转文字**:支持多种语言(如中、英、日、韩等),延迟低至数百毫秒,适合实时字幕。
- **实时翻译**:可将识别出的文本实时翻译成目标语言(如英文转中文),适合跨语言交流。
- **说话人分离**:自动区分不同说话人,并在字幕中标注,适合会议记录、采访等场景。
- **浏览器仪表盘**:提供 Web 界面,可实时查看字幕、翻译结果和说话人标签,支持远程访问。
- **纯 CPU 运行**:基于优化后的模型(如 Whisper tiny/base、faster-whisper 等),在普通笔记本上即可流畅运行。
## 三、安装与使用
### 1. 环境要求
- Python 3.8+(推荐 3.10)
- 操作系统:Windows / macOS / Linux
- 硬件:普通 CPU(建议双核以上,内存 4GB+)
- 无需 GPU,无需 CUDA
### 2. 安装步骤
bash
# 克隆仓库
git clone https://github.com/oboroge0/hayamimi.git
cd hayamimi
# 创建虚拟环境(可选但推荐)
python -m venv venv
source venv/bin/activate # Windows 下为 venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt
### 3. 快速启动
bash
# 启动早耳服务(默认监听 7860 端口)
python app.py
启动后,浏览器打开 `http://localhost:7860`,即可看到仪表盘界面。点击“开始录音”或“上传音频”,即可实时看到字幕和翻译。
### 4. 代码示例(Python 调用)
早耳也提供了 Python API,方便集成到自己的项目中:
python
from hayamimi import Hayamimi
# 初始化识别器(使用 CPU)
recognizer = Hayamimi(
model_size="tiny", # 可选 tiny/base/small,越大越准但越慢
language="auto", # 自动检测语言
device="cpu",
compute_type="int8", # 使用 int8 量化加速
enable_translation=True,
target_language="zh", # 翻译目标语言
enable_diarization=True, # 开启说话人分离
)
# 从麦克风实时识别(流式)
recognizer.start_streaming()
for event in recognizer.events():
print(f"[{event.speaker}] {event.text} -> {event.translation}")
# 或处理音频文件
result = recognizer.transcribe("meeting.wav")
print(result.to_json())
## 四、核心亮点深度解析
### 1. 极致 CPU 优化
早耳在模型推理层面做了大量优化:
- **使用 faster-whisper**:基于 CTranslate2 的 Whisper 实现,在 CPU 上比原始 Whisper 快 4 倍,内存占用更低。
- **int8 量化**:默认使用 int8 计算,在保持精度的同时大幅提升速度。
- **流式处理**:音频按块(chunk)处理,无需等待完整音频,实现“边说边出”的实时效果。
### 2. 多语言与翻译一体化
- 底层使用 Whisper 的多语言模型,支持 99 种语言识别。
- 翻译功能通过集成 Argos Translate 或 MarianMT,可在本地离线完成,不依赖云 API。
- 支持自定义翻译目标语言,方便跨语言会议。
### 3. 说话人分离(Diarization)
- 基于 Pyannote 或 Resemblyzer 的声纹嵌入,实时区分说话人。
- 在 CPU 上也能运行,因为采用轻量级模型,并且通过 VAD(语音活动检测)过滤静音段,减少计算量。
### 4. 浏览器仪表盘
- 使用 Gradio 构建 Web UI,无需额外前端开发。
- 支持多客户端同时访问(局域网内),适合教室、会议室共享字幕。
- 界面清晰:显示实时波形、字幕、翻译、说话人标签,并支持导出字幕文件(SRT/VTT)。
### 5. 隐私与离线友好
- 所有处理均在本地完成,音频不离开设备。
- 支持完全离线运行(需提前下载模型),适合内网环境。
## 五、适用场景
1. **直播字幕**:主播或观众可在无 GPU 的电脑上实时生成字幕,提升可访问性。
2. **会议记录**:自动生成带说话人标签的会议纪要,并翻译成不同语言,方便跨国团队。
3. **学习辅助**:观看外语视频时实时翻译,或作为听力练习的即时反馈。
4. **无障碍辅助**:为听障人士提供实时字幕,硬件要求低,易于部署。
5. **安全监控**:在边缘设备上(如树莓派)运行,实时分析音频内容。
## 六、同类项目对比
| 项目 | 硬件要求 | 实时性 | 翻译 | 说话人分离 | 浏览器UI | 离线 |
|------|----------|--------|------|------------|----------|------|
| **早耳 (hayamimi)** | CPU only | ✅ 流式 | ✅ 本地翻译 | ✅ | ✅ | ✅ |
| OpenAI Whisper | GPU 推荐 | ❌ 批处理 | ❌ 需额外 | ❌ | ❌ | ✅ |
| faster-whisper | CPU 可行 | ⚠️ 需自行实现 | ❌ | ❌ | ❌ | ✅ |
| Vosk | CPU only | ✅ | ❌ | ❌ | ❌ | ✅ |
| Google Speech-to-Text | 云 API | ✅ | ✅ | ⚠️ 需额外 | ❌ | ❌ |
| Azure Speech | 云 API | ✅ | ✅ | ✅ | ❌ | ❌ |
**早耳的优势**:集成了实时流式、翻译、说话人分离、Web UI 于一体,且完全本地、CPU 友好,开箱即用。相比 Vosk,早耳支持更多语言和翻译;相比 faster-whisper,早耳提供了完整的实时管道和 UI;相比云服务,早耳保护隐私且零成本。
**不足之处**:模型大小限制(tiny/base)导致复杂语音场景准确率略低于大模型;说话人分离在多人重叠说话时效果有限;翻译质量依赖于内置模型,不如云服务流畅。
## 七、总结
早耳(hayamimi)是一个极具实用价值的开源项目,它打破了语音识别必须依赖 GPU 或云端的刻板印象,让普通 CPU 设备也能拥有实时多语言字幕和翻译能力。无论是个人开发者、教育工作者,还是需要本地化部署的企业,都能从中受益。项目代码清晰,文档齐全,社区活跃(300+ Stars),持续迭代中。如果你正在寻找一个轻量、隐私、实时的语音转文字方案,早耳绝对值得一试。
---
**项目链接**:https://github.com/oboroge0/hayamimi