158 lines
4.1 KiB
Markdown
158 lines
4.1 KiB
Markdown
# Chat 模块需求分析
|
||
|
||
## 1. 模块定位
|
||
|
||
`apps.chat` 已从传统“问答页面”升级为:
|
||
|
||
> 审核智能体工作台
|
||
|
||
它是 V1 的主入口,负责把资料包、对话、任务模板、节点结果、结构化结论、飞书通知结果串成一个完整的人机协作界面。
|
||
|
||
## 2. 模块目标
|
||
|
||
本模块需要实现以下目标:
|
||
|
||
1. 让用户通过对话发起审核任务。
|
||
2. 让对话始终绑定到具体资料包和具体产品名称。
|
||
3. 让任务结果按节点展示,而不是只返回一段自然语言。
|
||
4. 让用户能直接看到 RAG 命中的法规依据、风险摘要和导出建议。
|
||
5. 支持执行完成或异常后触发飞书 `@` 处理人。
|
||
|
||
## 3. 页面形态要求
|
||
|
||
基于最新版原型,Chat 模块页面形态固定为三栏:
|
||
|
||
### 3.1 左栏:对话历史
|
||
|
||
1. 按资料包会话展示历史记录。
|
||
2. 会话名称直接使用解析后的产品名称。
|
||
3. 会话至少显示时间、状态、摘要。
|
||
4. 点击会话可切换当前资料包上下文。
|
||
|
||
### 3.2 中栏:主对话区
|
||
|
||
1. 展示欢迎区、推荐提示词和节点导航。
|
||
2. 展示用户消息、Agent 计划、节点结果和最终结论。
|
||
3. 支持节点点击跳转。
|
||
4. 支持底部输入框继续追问。
|
||
|
||
### 3.3 右栏:上传栏 + 功能卡片
|
||
|
||
1. 上半区展示上传资料入口和当前会话已上传附件。
|
||
2. 下半区展示能力卡片。
|
||
3. 能力卡片随任务模板变化展示不同内容。
|
||
|
||
## 4. 关键业务约束
|
||
|
||
### 4.1 对话必须绑定资料包
|
||
|
||
用户不能在无上下文状态下执行审核。每次任务都应绑定:
|
||
|
||
1. `conversation_id`
|
||
2. `batch_id`
|
||
3. `product_name`
|
||
4. `document_scope`
|
||
|
||
### 4.2 对话名称必须来源于解析结果
|
||
|
||
会话标题默认使用资料包解析出的产品名称,而不是“新对话”或“注册批次审核主线”。
|
||
|
||
### 4.3 结果必须结构化
|
||
|
||
Chat 模块至少要展示:
|
||
|
||
1. 目录汇总结果
|
||
2. 完整性检查结果
|
||
3. 字段抽取结果
|
||
4. 一致性核查结果
|
||
5. 风险结论
|
||
6. 飞书通知结果
|
||
|
||
## 5. 输入需求
|
||
|
||
### 5.1 输入类型
|
||
|
||
1. 自然语言任务指令
|
||
2. 资料上传
|
||
3. 节点模板选择
|
||
4. 建议提示词点击
|
||
|
||
### 5.2 建议提示词
|
||
|
||
V1 推荐固定提供:
|
||
|
||
1. 自动汇总文件夹目录与页数
|
||
2. 执行法规完整性检查
|
||
3. 抽取字段并生成字段池
|
||
4. 解释冲突字段原因
|
||
5. 给出整改与导出建议
|
||
|
||
### 5.3 附件上传
|
||
|
||
Chat 模块中的上传不是独立附件功能,而是资料包流程的会话入口,因此上传后应自动触发:
|
||
|
||
1. 资料包批次创建或追加
|
||
2. 产品名称解析
|
||
3. 对话上下文绑定
|
||
|
||
## 6. 输出需求
|
||
|
||
### 6.1 节点式结果
|
||
|
||
结果不能只有长文本,必须形成节点:
|
||
|
||
1. 目录汇总
|
||
2. 完整性检查
|
||
3. 字段抽取
|
||
4. 风险结论
|
||
|
||
### 6.2 RAG 依据展示
|
||
|
||
当 Agent 在对话中引用法规或业务依据时,应展示:
|
||
|
||
1. 依据来源文档
|
||
2. 命中条款或切片标签
|
||
3. 解释摘要
|
||
|
||
### 6.3 飞书通知结果展示
|
||
|
||
当执行完成或发生异常后,Chat 模块应能展示:
|
||
|
||
1. 是否已触发飞书通知
|
||
2. 通知原因
|
||
3. 被 `@` 的处理人
|
||
4. Web 详情链接
|
||
5. 发送状态或失败原因
|
||
|
||
## 7. 飞书相关需求
|
||
|
||
Chat 模块需要消费角色信息中的飞书字段。责任人实体至少包含:
|
||
|
||
1. `owner_role`
|
||
2. `owner_name`
|
||
3. `department`
|
||
4. `chapter_scope`
|
||
5. `risk_scope`
|
||
6. `feishu_user_id`
|
||
7. `feishu_open_id`
|
||
8. `feishu_name`
|
||
9. `notify_enabled`
|
||
|
||
当前 Demo 通知策略固定为:
|
||
|
||
1. 审核任务执行完成后,飞书摘要卡片 `@` 处理人。
|
||
2. 审核任务执行异常后,飞书异常消息 `@` 处理人。
|
||
|
||
## 8. 与其他模块边界
|
||
|
||
1. `documents` 提供资料包、产品名称、文件范围和目录事实。
|
||
2. `agent_core` 提供任务编排、RAG 检索和结构化输出。
|
||
3. `audit` 提供处理历史和通知留痕。
|
||
|
||
## 9. 验收标准
|
||
|
||
1. 用户能在一个会话中完成资料上传、任务发起和结果查看。
|
||
2. 对话历史以产品名称展示,而不是泛化标题。
|
||
3. 节点式结果、RAG 依据和飞书通知结果都能在页面上承载。
|
||
4. 执行完成或异常的飞书通知逻辑有明确展示位和字段依赖。
|