Files
get_wechat/chatlab-web
yuanzhipeng 646efa132e ```
feat(api): 添加万川平台模型配置获取和同步功能

- 新增 getWanchuanModelConfig 函数,按模型编码获取平台模型配置
- 新增 syncWanchuanModelToSettings 函数,从万川平台拉取模型配置并写入后端 AI 设置
- 支持按用途分多个模型编码(generic/vision/voice)分别同步配置
- 配置失败时跳过对应字段,不影响其他模型同步

feat(settings): 重构AI模型配置界面支持多模块分组

- 将AI配置按话题分析、报告生成、视觉、语音四个模块分组展示
- 每个模块独立配置接口地址、密钥和模型名称
- 添加从万川平台获取配置的按钮和同步功能
- 优化配置状态指示和错误提示信息

refactor(config): 扩展AI配置支持独立的语音视觉报告网关

- 新增 voice_base_url/voice_api_key 配置项
- 新增 vision_base_url/vision_api_key 配置项
- 新增 summary_base_url/summary_api_key 配置项
- 留空时回退到 ai_base_url/ai_api_key 兼容单网关场景

refactor(http): 统一使用共享HTTP客户端减少连接开销

- 替换各处 httpx.AsyncClient 为 shared_client
- 在 lifespan 中正确关闭共享客户端资源
- 优化 get_current_wxid 和 health 检查中的HTTP请求

refactor(ai): 按用途缓存AI客户端支持不同网关配置

- 重构 get_openai_client 支持按(base_url, api_key)缓存
- 新增 get_client_for 函数按用途获取对应客户端
- 支持语音、视觉、报告等不同用途使用独立网关和密钥
```
2026-06-24 20:34:10 +08:00
..
```
2026-06-24 20:34:10 +08:00

ChatLab Web MVP

设备售后微信知识库 — Web 端 MVP

目录结构

chatlab-web/
├── frontend/       # React (Vite) 前端
└── backend/        # Python FastAPI 后端

⚠️ 此目录与 get_wechat 主项目完全独立,不修改任何现有文件


快速启动

1. 启动前端(含 Mock 数据,无需后端)

cd chatlab-web/frontend
npm run dev
# 浏览器访问 http://localhost:5173

2. 启动后端(接入 chatlog API

cd chatlab-web/backend
pip install -r requirements.txt
cp .env .env.local  # 按需修改 CHATLOG_API 地址
python main.py
# 后端运行在 http://localhost:8000

3. 前端切换到真实后端

编辑 frontend/src/api/index.js,将 USE_MOCK = true 改为 false


接口说明

存量查询(前端主动拉取)

接口 方法 说明
/api/chatroom GET 获取群聊列表
/api/v1/chatlog GET 拉取存量聊天记录(分页)
/api/session GET 最近会话列表
/api/contact GET 联系人搜索

增量推送Webhook → SSE

接口 方法 说明
/api/webhook POST chatlog 推送新消息(配置到 chatlog
/api/sse/chatlog?talker=群ID GET (SSE) 前端订阅实时推送
/api/health GET 健康检查

chatlog API 对接

后端代理到 http://127.0.0.1:5030,参考接口:

GET /api/v1/chatlog?talker={群ID}&time={start,end}&limit={n}&offset={n}&format=json
POST {本后端 webhook URL}  ← chatlog 配置 Webhook 推送地址

具体入参出参待确认后更新 backend/main.py 中的代理逻辑。


MVP 功能范围

  • 深色主题 UI + 完整设计系统
  • 群聊列表 Sidebar
  • 聊天记录检索(时间范围 / 发送人多选 / 关键词)
  • 消息气泡展示(按天分组)
  • 关键词高亮
  • Webhook 增量接收 + SSE 实时推送
  • Mock 数据层(可一键切换真实 API
  • AI 话题分类P0待接入
  • 知识库P0待接入