# 电脑模拟版测试指南 ## 0 成本测试完整流程 按以下 5 步操作,可在 5-10 分钟内验证整个智能音箱流程。 ## Step 1: 启动后端服务 ```bash cd c:/Users/caoyg/ai/audio-tts/audio_codebuddy/server npm run dev ``` **等待看到类似输出**: ``` Server running on port 3000 TTS Provider initialized ``` **如果启动失败**: - 检查端口 3000 是否被占用 - 检查 `.env` 配置(数据库、TTS API Key 等) ## Step 2: 测试同步端点(新加的) 打开新终端: ```bash curl -X POST http://localhost:3000/tts/synthesize \ -H "Content-Type: application/json" \ -d '{"text":"你好世界测试","voiceId":"female-shaonv"}' ``` **成功响应**: ```json { "code": 0, "message": "success", "data": { "audioUrl": "https://xxx.cloud/audio.mp3", "audioId": "sync-uuid", "duration": 2.5, "text": "你好世界测试", "voiceId": "female-shaonv" } } ``` **失败排查**: - 返回 404 → 服务没重启,新代码没生效 - 返回 500 → 查看 server 日志 - 返回 timeout → TTS provider 配置问题 ## Step 3: 安装 Python 依赖 ```bash cd c:/Users/caoyg/ai/audio-tts/audio_codebuddy/hardware-integration/pc-simulator pip install -r requirements.txt ``` **可能需要的系统依赖**: **macOS**: ```bash brew install portaudio ``` **Linux**: ```bash sudo apt install python3-pyaudio portaudio19-dev ``` **Windows**: ```bash pip install pipwin pipwin install pyaudio ``` ## Step 4: 配置环境变量 ```bash cp .env.example .env ``` 编辑 `.env`,**至少配置以下 3 项**: ```env TTS_BASE_URL=http://localhost:3000 TTS_VOICE_ID=female-shaonv OPENAI_API_KEY=sk-your-key # ASR 需要 LLM_API_KEY=sk-your-key # LLM 需要 ``` **最小配置(只测试 TTS)**: ```env TTS_BASE_URL=http://localhost:3000 ``` **ASR/LLM 可选**,没配置也能跑部分测试。 ## Step 5: 运行冒烟测试 ```bash python test_smoke.py ``` **预期输出**: ``` ============================================================ 智能音箱电脑模拟版 - 冒烟测试 ============================================================ ============================================================ 测试 1: 配置验证 ============================================================ ✅ 配置 OK TTS: http://localhost:3000 ... ============================================================ 测试 2: TTS 服务连通 ============================================================ ✅ TTS 服务可达,N 个音色 ============================================================ 测试 3: 同步合成端点 (/tts/synthesize) ============================================================ ✅ 同步合成成功 (0.85s) 音频 URL: https://... ============================================================ 测试 4: 音频下载 ============================================================ ✅ 下载成功 (35.2 KB) 🎉 所有测试通过!可以运行 python main.py 体验完整流程 ``` ## Step 6: 运行完整流程 ```bash python main.py ``` **操作流程**: 1. 按回车 → 开始录音 2. 说话(任何内容) 3. 自动停止(检测到停顿) 4. 看到 ASR 识别结果 5. 看到 LLM 回复 6. 听到 TTS 播放 ## 常见错误排查 ### ❌ `ModuleNotFoundError: No module named 'pyaudio'` ```bash # macOS brew install portaudio && pip install pyaudio # Linux sudo apt install python3-pyaudio # Windows pip install pipwin && pipwin install pyaudio ``` ### ❌ `Connection refused` (TTS 服务连不上) ```bash # 检查后端服务是否在跑 curl http://localhost:3000/health # 检查端口 lsof -i :3000 # macOS/Linux netstat -ano | findstr :3000 # Windows ``` ### ❌ 同步端点返回 404 ```bash # 检查路由是否注册 grep -n "router.post.*synthesize" c:/Users/caoyg/ai/audio-tts/audio_codebuddy/server/src/modules/tts/tts.controller.ts ``` 应该能看到: ``` router.post('/synthesize', optionalAuth, async (ctx: Context) => { ``` ### ❌ TTS provider 失败 查看 server 日志,常见原因: - API Key 无效 - 余额不足 - 网络不可达 - 音色 ID 不存在 ### ❌ 麦克风没声音 - macOS: 系统设置 → 隐私 → 麦克风 → 允许 Python - Windows: 设置 → 隐私 → 麦克风 → 允许应用 - Linux: `arecord -l` 检查设备 ## 测试清单 ``` [ ] Step 1: 后端服务启动 [ ] Step 2: curl 测试同步端点成功 [ ] Step 3: pip install 成功 [ ] Step 4: .env 配置完成 [ ] Step 5: test_smoke.py 全部通过 [ ] Step 6: main.py 端到端跑通 ``` ## 时间预估 ``` Step 1: 1-2 分钟(如果服务能起来) Step 2: 30 秒 Step 3: 1-2 分钟(含编译 pyaudio) Step 4: 2 分钟 Step 5: 30 秒 Step 6: 1 分钟 ───────────────── 总计: 5-10 分钟 ``` ## 下一步 跑通后: 1. 🎬 录 3 分钟演示视频 2. 📦 决定是否买树莓派(演示给客户) 3. 📞 联系硬件厂商(找客户)