44 lines
2.6 KiB
Markdown
44 lines
2.6 KiB
Markdown
# 需求分析 — 2026-04-19-02-26-05
|
||
|
||
## 1. 需求背景
|
||
为 ReportEditor 加入 AI 撰写功能,接入 Kimi-2.5 多模态模型,实现智能化的手术报告辅助撰写。参考 "参考-ReportEditor.tsx" 的设计范式,构建现代化的沉浸式 AI 对话 UI。
|
||
|
||
## 2. 需求拆解
|
||
- [ ] **Task 1**:TemplateManage 工具栏新增 "插入AI可编辑区域" 按钮,支持命名且不可重名
|
||
- [ ] **Task 2**:ReportEditor 工具栏同步新增同样的 AI 区域插入按钮
|
||
- [ ] **Task 3**:SystemSettings 完善 AI 接口集成,适配 Kimi-2.5 API(baseURL + apiKey)
|
||
- [ ] **Task 4**:ReportEditor 右侧新增 "AI撰写" Tab 面板,包含:
|
||
- 类微信风格的聊天对话 UI(气泡、Loading 动画)
|
||
- 定向区域锚定(下拉选择 `ai-region`)
|
||
- "允许修改正文" 沙盒开关
|
||
- 多模态输入:语音输入(Web Speech API)、视频关键帧选择、本地图片上传
|
||
- 快捷指令胶囊(可添加/删除/编辑)
|
||
- Diff 二次确认弹窗(左右对比、可编辑右侧、确认后注入)
|
||
- 注入后视觉反馈(深蓝→淡蓝→透明渐变高亮)
|
||
- [ ] **Task 5**:AI 调用逻辑:Fetch API 调用 Kimi API,严格 JSON Schema 输出(reply + updatedHtml)
|
||
|
||
## 3. 影响范围
|
||
| 文件 | 修改类型 | 风险等级 |
|
||
|------|----------|----------|
|
||
| `src/types.ts` | 修改(扩展 SystemSettings) | 低 |
|
||
| `src/pages/SystemSettings.tsx` | 修改(AI设置UI) | 中 |
|
||
| `src/pages/TemplateManage.tsx` | 修改(工具栏+插入逻辑) | 中 |
|
||
| `src/pages/ReportEditor.tsx` | 大规模修改(工具栏、状态、右侧面板、Diff弹窗、API调用) | **高** |
|
||
|
||
## 4. 优先级
|
||
- P0:ReportEditor AI 面板核心功能(聊天、API调用、Diff确认)
|
||
- P1:TemplateManage / ReportEditor 工具栏 AI 区域插入
|
||
- P1:SystemSettings Kimi 接口配置
|
||
- P2:语音输入、快捷指令编辑等增强体验
|
||
|
||
## 5. 验收标准
|
||
- [ ] 可在 TemplateManage 中插入 `ai-region` 区域,重名时弹窗阻止
|
||
- [ ] 可在 ReportEditor 中插入 `ai-region` 区域
|
||
- [ ] SystemSettings 可配置 Kimi API Key 和 Base URL,保存后持久化
|
||
- [ ] ReportEditor 右侧有 "AI撰写" Tab,点击可展开聊天面板
|
||
- [ ] 可向 AI 发送文本+图片(关键帧/本地上传),AI 返回 JSON 结构化回复
|
||
- [ ] 勾选"允许修改正文"时,AI 返回的 HTML 会触发 Diff 弹窗,确认后才注入
|
||
- [ ] 不勾选"允许修改正文"时,AI 回复仅在聊天气泡中展示,不修改正文
|
||
- [ ] 注入后目标区域有视觉高亮反馈
|
||
- [ ] 重新部署后页面可正常访问,无构建错误
|