
TorchTPU
TorchTPU 是谷歌联合 Meta 推出的 Apache2.0 开源 Cloud TPU 原生 PyTorch 后端,取代 PyTorch/XLA,一行代码即可把 PyTorch 模型跑在 TPU。支持 Eager 调试 + torch.compile 生产编译,配套 vLLM、SGLang、Hugging Face 生态,支持 8192 片 Ironwood 大规模集群训练与推理。
Gemma Translator 是一个开源项目,实现在 Raspberry Pi 5 (8GB) 上完全离线的双向语音翻译。系统由 Google Gemma 4 (gemma4-e2b) 通过 LiteRT-LM 驱动文本翻译,Moonshine 负责语音识别(STT)与合成(TTS),所有推理均在设备端完成,无需联网。
Gemma Translator 是一个开源项目,实现在 Raspberry Pi 5 (8GB) 上完全离线的双向语音翻译。系统由 Google Gemma 4 (gemma4-e2b) 通过 LiteRT-LM 驱动文本翻译,Moonshine 负责语音识别(STT)与合成(TTS),所有推理均在设备端完成,无需联网。
项目包含为480×320小屏优化的复古终端风格Web UI、Python API服务器及一键部署脚本,支持横向(单人操作)与纵向(双人独立)两种键盘模式。硬件需Pi 5 8GB、麦克风、扬声器及显示屏;软件依赖Python 3.10+、Node.js 18+,提供setup.sh/download_model.sh/start.sh/deploy-pi.sh自动化流程,并含3D打印外壳STL文件。
全栈本地化设计
| 组件 | 技术选型 | 离线保障 |
|---|---|---|
| 翻译引擎 | Gemma 4 e2b + LiteRT-LM | 模型量化后<4GB,Pi 5 NPU/GPU加速 |
| 语音识别 | Moonshine STT | 轻量级端到端模型,CPU实时推理 |
| 语音合成 | moonshine-voice TTS | 低资源消耗,支持多语言音色 |
| 前端交互 | React + Vite | 编译为静态资源,无外部CDN依赖 |
| 服务通信 | Python http.server | 本地回环接口,零网络请求 |
关键离线验证点
frontend/dist/静态文件,无运行时fetchdownload_model.sh需联网,后续完全隔离四步标准化部署
# 1. 赋予脚本执行权限
chmod +x setup.sh download_model.sh start.sh deploy-pi.sh
# 2. 创建虚拟环境并安装依赖
./setup.sh
# 3. 下载Gemma4模型并导入LiteRT(需联网一次)
./download_model.sh
# 4. 启动服务(开发/生产模式)
./start.sh # 开发:Vite热重载 @ localhost:5173
./start.sh --prod # 生产:静态UI + API @ localhost:3000
树莓派专用信息亭部署
./deploy-pi.sh
该脚本自动完成:
gemma-translator.servicehttp://localhost:3000硬件兼容性清单
| 组件 | 最低要求 | 推荐配置 | 注意事项 |
|---|---|---|---|
| 主板 | Raspberry Pi 5 8GB | 同左 | 4GB版本内存不足,无法运行 |
| 音频输入 | USB麦克风/采集卡 | 带降噪的USB会议麦 | 模拟口噪声大,影响STT准确率 |
| 音频输出 | 3.5mm耳机/USB声卡 | USB DAC+小音箱 | HDMI音频可能延迟,优先USB |
| 显示屏 | 480×320 SPI/DSI | 5寸IPS触摸屏 | 分辨率非此尺寸需调整CSS |
| 存储 | 32GB microSD | 64GB A2卡 | 模型+系统占约12GB,预留日志空间 |
横向模式(Landscape)——单人主导
纵向模式(Vertical)——双人平等
通用安全机制
性能边界
扩展可能性
故障排查优先级
start.sh日志,确认venv激活与端口占用download_model.sh完整性,重跑导入步骤arecord -l / aplay -l 确认设备索引,检查PulseAudio配置npm run build,开发模式检查Vite进程systemctl status gemma-translator 查看错误码






