项目简介
CleanLearn 是一个英语学习微信小程序(AppID: wx861f66f8f805b5f2),前端使用 Taro 3.6.32 + React + Zustand,后端是 Python FastAPI + MariaDB 10.11,部署在腾讯云服务器上。核心功能包括单词学习、真题模拟和 AI 对话(口语陪练)。
这篇文章是系列修复实录的目录索引,记录了从用户反馈”AI 语音识别不了”开始,经历 STT 重写、TTS 分段播放、UI 合并重构、数据库密码更换,到最后建立部署监控体系的完整过程。每个问题拆成独立章节,方便按需跳转。
目录
- AI 语音识别(STT) — 录音后提示”语音识别失败”,接口超时/500,从模型下载到格式兼容全链路排查
- AI 语音朗读(TTS) — AI 回复一长就只读开头,三处硬截断 200 字符的根因与分段队列播放方案
- AI 对话 UI 重构 — 打字与语音模式合二为一,提示条清理、状态栏留白、分支管理
- 数据库运维实录 — 密码更换导致服务 500,skip-grant-tables 踩坑与恢复全过程
- 部署监控与持续迭代 — 路径管理、缓存陷阱、接口监控、构建流程规范化
技术栈速览
| 层级 | 技术 |
|---|---|
| 前端框架 | Taro 3.6.32 (React + TypeScript) |
| 状态管理 | Zustand 4.5 |
| 后端框架 | Python FastAPI |
| 数据库 | MariaDB 10.11 (SQLAlchemy ORM) |
| AI 模型 | DeepSeek Chat + faster-whisper-tiny (STT) + edge-tts (TTS) |
| 部署 | 腾讯云 CentOS, Nginx + systemd, Docker |
快速跳转
如果你只关心某个具体问题:
- 录音识别失败 → 第一章:STT 语音识别
- 朗读只读一半 → 第二章:TTS 分段播放
- UI 交互调整 → 第三章:对话页重构
- 数据库故障 → 第四章:运维实录
- 部署规范 → 第五章:监控与迭代
本系列所有内容基于实际项目操作记录,代码路径和配置文件均可在项目仓库中找到。
发表回复