feat: 异步沉淀主题摘要和成长档案

This commit is contained in:
2026-08-03 11:35:58 +08:00
parent a3946013f5
commit d2e08ab36c
24 changed files with 825 additions and 58 deletions

View File

@@ -163,6 +163,26 @@ PERIODIC_REPORT_STALE_MINUTES=30
PERIODIC_REPORT_MAX_ATTEMPTS=3
```
## 主题沉淀后台任务
用户点击“沉淀本主题”后,接口只结束当前主题并创建持久化任务,不再等待模型生成摘要和成长档案。用户可以立即继续聊天、切换会话或关闭页面。
任务状态保存在 `sys_topic_summary`
- `pending`:等待后台执行;
- `running`:正在生成摘要和成长档案;
- `success` / `fallback`:沉淀完成;
- `failed`:达到最大重试次数后仍失败,可在后台用户详情中手动重试。
多进程部署时 Redis 用于限制同一时间只有一个主题沉淀 Worker 执行MySQL 负责持久化任务、幂等和失败重试。服务中断超过配置时间后,任务会自动恢复,不需要用户重复结束主题。
```text
TOPIC_SETTLEMENT_WORKER_ENABLED=true
TOPIC_SETTLEMENT_POLL_SECONDS=2
TOPIC_SETTLEMENT_STALE_MINUTES=30
TOPIC_SETTLEMENT_MAX_ATTEMPTS=3
```
## 多模型分流
模型管理现在区分两个概念:

View File

@@ -23,6 +23,8 @@
- [ ] 已确认权益版本、能力开关和学员当前权益配置正确。
- [ ] 已验证后台 Agent 预览能够按模拟学员和具体主题加载上下文。
- [ ] 已确认“结束主题”在当前网关超时范围内完成;如已异步化,已验证任务状态、幂等和失败重试。
- [ ] 已确认主题沉淀 Worker 已启用,等待、执行中、成功和失败状态均可查询。
- [ ] 已验证主题沉淀任务在服务重启后自动恢复,后台可以手动重试最终失败任务。
## 发布中
@@ -45,6 +47,7 @@
- [ ] 用户端可以提问并收到回答。
- [ ] 用户发送后输入框立即清空,思考状态与流式 Markdown 回答显示正常。
- [ ] 连续提问能够继续使用同一主题的上下文。
- [ ] 结束主题接口快速返回,用户可以立即新建主题或继续使用系统。
- [ ] 无命中问题返回固定兜底。
- [ ] 管理后台可以登录。
- [ ] 管理后台可以查看 Dashboard。