- 新建 docs/13-令牌桶限流设计.md,覆盖算法原理、内存/Redis 双实现、配置设计、接入点、测试用例等 - 更新 docs/01-架构设计.md Rate Limiter 模块行链接至新文档 - 更新 docs/README.md 文档索引和推荐阅读顺序
CamTalk 设计文档
CamTalk 是一款多模态实时 AI 视觉对话助手。用户通过摄像头和麦克风与 AI 交互,AI 理解视觉场景和语音输入后,以文字和语音形式给出自然回应。
文档索引
| 文档 | 说明 |
|---|---|
| 01-架构设计 | 系统架构、技术栈、模块设计、数据库、部署架构(含 Mermaid 图) |
| 02-接口文档 | WebSocket 协议、REST API、AI 服务层、Eino 编排器、Session Manager、配置管理、数据模型、错误码 |
| 03-技术选型 | 各技术的选型对比与决策理由(含 Eino 框架选型) |
| 04-用户故事 | P0/P1/P2 用户故事、验收标准 |
| 05-语音交互 | VAD → STT → LLM → TTS 全链路、延迟优化 |
| 06-视觉理解 | 帧采样策略、图像编码、多模态 LLM 输入机制 |
| 07-成本控制 | 智能采样、端云协同、模型分级、缓存复用 |
| 08-功能创意 | 未来功能创意清单 |
| 09-技术名词解释 | 前端/后端/AI 服务/Eino 框架技术名词简明解释 |
| 10-Eino重构方案 | Eino Graph 替换手写 goroutine 管道的设计方案 |
| 11-Eino框架技术文档 | Eino 框架在 CamTalk 中的使用指南(Graph、Lambda、Callback、State) |
| 12-鉴权体系设计 | JWT 双 token 轮转认证、bcrypt 密码哈希、Refresh Token Rotation、安全机制 |
| 13-令牌桶限流设计 | 令牌桶限流算法、内存/Redis 双实现、Gin 中间件、WebSocket query 限流、配置设计 |
推荐阅读顺序
- 01-架构设计 — 理解三层架构、技术栈和模块全貌
- 02-接口文档 — 前后端通信契约,实现时的最高依据
- 03-技术选型 — 了解为什么选这些技术(含 Eino 框架)
- 04-用户故事 — 明确功能优先级
- 05~07 — 各技术领域的详细设计
- 09-技术名词解释 — 遇到不熟悉的名词时查阅
- 10~12 — Eino 重构相关(方案、框架文档、实施记录)
- 12-鉴权体系设计 — 认证授权机制详细设计(JWT、bcrypt、Refresh Token Rotation)
- 13-令牌桶限流设计 — 速率限制设计(令牌桶算法、成本控制、防暴力破解)