Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ Good-Interpreter — 会议同声传译

基于火山引擎 AST 2.0 的实时双向同声传译系统
🇨🇳 中文 ↔ 英文 🇺🇸 | 实时语音识别 · 同声翻译 · TTS 朗读 · AI 会议总结


🎬 功能演示

✨ 功能特性

功能 说明
🎤 实时语音识别 基于火山引擎 AST 2.0,毫秒级延迟
🔄 自动双向同传 单连接自动判断中文/英文并翻译为另一种语言
🔊 TTS 语音播报 翻译结果自动朗读,支持静音控制
📝 双列字幕显示 左列中→英,右列英→中,清晰分离
🤖 AI 会议总结 基于火山方舟豆包模型的智能会议摘要
📤 导出会议记录 支持导出文本和 Markdown 格式
🌗 亮/暗色主题 一键切换
🎨 现代 UI 毛玻璃特效 + 动画 + 音量可视化

🚀 快速开始

前置要求

1. 克隆项目

git clone https://github.com/yo-WASSUP/Good-Interpreter.git
cd Good-Interpreter

2. 配置环境变量

backend/ 目录下创建 .env 文件:

# 豆包语音:实时同声传译
VOLC_API_KEY=your_api_key

# 火山方舟:豆包会议总结
ARK_API_KEY=your_ark_api_key
ARK_MODEL=doubao-seed-2-0-lite-260215

# 服务端口
PORT=3100

免费体验额度

火山引擎没有把本项目使用的两项能力合并成一个“每月总额度”。截至 2026-07-26,官方公开页面给出的常见体验口径如下:

能力 常见免费体验额度 说明
火山方舟文本模型 每个支持体验的模型 50 万 tokens 属于模型体验额度,是否按月重置、有效期及可用模型以账号控制台为准
豆包流式语音识别 20 小时 官方价格页列出的流式识别额度;本项目使用的是同声传译 2.0,实际赠送额度以「开通管理」页面为准

会议总结通常只消耗几千到一万左右 tokens,50 万 tokens 大致可支持数十到上百次总结,实际数量取决于会议长度。免费额度和活动规则可能调整,请在使用前查看豆包模型价格与免费额度以及控制台中的剩余额度。不要把体验额度当作固定的永久免费月包。

3. 启动后端

cd backend
python -m venv venv

# macOS / Linux
source venv/bin/activate

# Windows
.\venv\Scripts\Activate

pip install -r requirements.txt
python -m app.main

后端服务将启动在 http://localhost:3100

4. 启动前端

cd frontend
npm install
npm run dev

打开浏览器访问 http://localhost:5173

生产部署

cd frontend
npm run build
# 构建产物在 frontend/dist/,由后端自动托管
# 只需运行后端即可,访问 http://localhost:3100

🎨 界面预览

应用提供精美的暗色/亮色双主题界面:

  • 暗色模式:深色背景 + 毛玻璃卡片 + 渐变光晕动画
  • 亮色模式:柔和浅灰背景 + 清爽配色

点击右上角 ☀️/🌙 按钮即可切换。

🏗️ 项目结构

Good-Interpreter/
├── backend/              # Python 后端 (aiohttp)
│   ├── app/
│   │   ├── main.py       # 应用入口
│   │   ├── config.py     # 配置管理
│   │   ├── database.py   # SQLite 数据库
│   │   ├── routes/       # API & WebSocket 路由
│   │   └── services/     # 火山引擎语音与方舟服务
│   ├── requirements.txt
│   └── README.md
├── frontend/             # React 前端 (Vite + TypeScript)
│   ├── src/
│   │   ├── components/   # UI 组件
│   │   ├── hooks/        # WebSocket / 录音 / 播放
│   │   ├── services/     # REST API 调用
│   │   └── utils/        # 工具函数
│   ├── package.json
│   └── README.md
└── README.md             # 本文件

📡 通信架构

浏览器 ←WebSocket→ Python 后端 ←WebSocket→ 火山引擎 AST API
  │                    ├─HTTPS────→ 火山方舟豆包模型
  │ REST API           │
  │ (会议总结/历史)     └─SQLite(会话存储)
  1. 浏览器采集麦克风音频,通过 WebSocket 发送 PCM 数据到后端
  2. 后端使用单个 zhen → zhen 会话,由火山引擎自动判断中英文并完成 ASR + 翻译 + TTS
  3. 识别结果、翻译文本、TTS 音频实时回传浏览器
  4. 前端渲染双列字幕并播放合成语音

📄 License

本项目采用 MIT License 开源。你可以自由使用、复制、修改、 分发和商用本项目,但需要在副本或主要代码中保留原始版权声明和许可声明。 软件按“原样”提供,作者不承担使用本软件产生的担保或责任。

🙏 致谢

About

🎙️ Real-time bidirectional simultaneous interpretation system (Chinese ↔ English)

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages