ai-robot-core/spec/ai-service-admin/tasks.md

15 KiB
Raw Blame History

module title status version owners last_updated principles
ai-service-admin AI 中台管理界面ai-service-admin任务清单 in-progress 0.6.0
frontend
backend
2026-02-27
atomic
page-oriented

tasks.mdASA

原则:

  • 原子性:每个任务应在 0.5 ~ 1.5 天内完成,且可独立提交与回滚。
  • 页面导向:以页面/路由为骨架拆分,组件/能力封装作为页面任务的前置或并行支撑。
  • 可追溯每个任务必须标注关联的验收标准AC-ASA-*)。

Phase 1: 基础建设Foundation

  • (P1-01) 初始化 ai-service-admin 前端工程Vue 3 + Element Plus + RuoYi-Vue 基座对齐),落地基础目录结构与路由骨架。

    • AC: [AC-ASA-01]
  • (P1-02) 接入 Pinia实现 tenant storecurrentTenantId并持久化localStorage提供切换租户能力最小 UI/逻辑)。

    • AC: [AC-ASA-01]
  • (P1-03) Axios/SDK 请求层封装:创建统一 request 实例,自动注入必填 Header X-Tenant-Id(从 Pinia 读取)。

    • AC: [AC-ASA-01]
  • (P1-04) 全局异常拦截:实现 401/403 响应拦截策略401 跳转登录/清理凭证403 统一提示 + 页面级占位)。

    • AC: [AC-ASA-01]
  • (P1-05) 基础组件封装:BaseTable(分页/筛选/加载态/空态)、BaseForm(校验/提交态/错误提示)并给出示例页。

    • AC: [AC-ASA-01]

Phase 2: 知识库管理(列表页/上传/任务轮询)

页面导向:知识库文档列表页 + 上传入口 + 索引任务状态观测。

  • (P2-01) 知识库文档列表页实现列表展示与多条件筛选kbId、状态、时间、来源对接 /admin/kb/documents(若后端未提供 GET则先 Mock

    • AC: [AC-ASA-01]
  • (P2-02) 上传组件:封装 KbDocumentUpload(基于 el-upload),支持多文件上传、上传中队列展示、失败重试提示。

    • AC: [AC-ASA-01]
  • (P2-03) 上传后任务回显:上传成功后从响应中提取 jobId,在列表或详情抽屉中展示任务卡片(状态/进度)。

    • AC: [AC-ASA-01]
  • (P2-04) 任务状态轮询:实现 useJobPolling(jobId) composable3s 轮询 /admin/kb/index/jobs/{jobId};完成/失败自动停止;切页/关闭抽屉自动取消)。

    • AC: [AC-ASA-01, AC-ASA-02]
  • (P2-05) 失败任务错误详情:实现错误展示弹窗/抽屉(展示 errorMsg + requestId并在列表行高亮失败状态。

    • AC: [AC-ASA-02]

Phase 3: RAG 实验室(双栏对比/调试联调)

页面导向RAG 实验室主页面,突出“双栏对比视图”。

  • (P3-01) RAG 实验室页面骨架左侧参数面板query、kbIds、检索参数、prompt 版本选择),右侧双栏结果区占位。

    • AC: [AC-ASA-05]
  • (P3-02) RAG 专用组件:实现 RagRetrievalList召回片段列表score/来源/片段)、FinalPromptViewer(最终 Prompt 只读展示,支持复制)。

    • AC: [AC-ASA-05]
  • (P3-03) 调试 API 联调:对接 /admin/rag/experiments/run,将返回的 retrievalResultsfinalPrompt 绑定到双栏视图;处理 Loading/错误态。

    • AC: [AC-ASA-05]
  • (P3-04) 双配置对比模式MVP支持保留“上一次运行结果”作为对照或同时运行两组参数视后端能力并在 UI 中标注差异。

    • AC: [AC-ASA-06]

Phase 4: 会话监控与详情(列表筛选/全链路详情)

页面导向:会话列表页 + 全链路详情弹窗。

  • (P4-01) 会话监控列表页实现多字段过滤tenantId、sessionId、时间范围、状态/是否错误等)与分页,对接 /admin/sessions(若后端未提供,则先 Mock

    • AC: [AC-ASA-07]
  • (P4-02) 会话详情弹窗:点击列表行打开弹窗,对接 /admin/sessions/{sessionId}展示消息流Timeline/气泡流)与基础元信息。

    • AC: [AC-ASA-07]
  • (P4-03) Trace 展开视图:在详情中实现“检索命中/工具调用/错误信息”折叠面板,支持按消息节点展开查看。

    • AC: [AC-ASA-07]

待澄清Open Questions

  • (Q-01) 已确认:后端将补齐 GET /admin/kb/documents 列表接口。

    • 影响 AC: [AC-ASA-01]
  • (Q-02) 已确认:后端将补齐 GET /admin/sessions 列表接口。

    • 影响 AC: [AC-ASA-07]
  • (Q-03) 已确认:对比模式采用“前端串行调用两次 /admin/rag/experiments/run 接口”的方式实现。

    • 影响 AC: [AC-ASA-06]

Mock 支撑(在 Python 后端未完成前)

结论:需要 Mock 支撑,以便前端在后端未完成时并行开发页面与交互。

建议优先 Mock 覆盖(最小闭环):

  • /admin/kb/documentsGET 列表,分页 + 筛选)
  • /admin/kb/documentsPOST 上传,返回 jobId
  • /admin/kb/index/jobs/{jobId}GET 任务状态流转pending -> processing -> completed/failed
  • /admin/rag/experiments/runPOST 实验结果retrievalResults + finalPrompt
  • /admin/sessionsGET 列表,分页 + 筛选)
  • /admin/sessions/{sessionId}GET 详情messages + trace

Phase 5: 嵌入模型管理(配置页面/测试连接)

页面导向:嵌入模型配置页面,支持提供者切换、参数配置、连接测试。

  • (P5-01) API 服务层与类型定义:创建 src/api/embedding.ts 和 src/types/embedding.ts

    • AC: [AC-ASA-08, AC-ASA-09]
  • (P5-02) 提供者选择组件:实现 EmbeddingProviderSelect 下拉组件,对接 /admin/embedding/providers

    • AC: [AC-ASA-09]
  • (P5-03) 动态配置表单:根据 config_schema 动态渲染配置表单,实现表单校验

    • AC: [AC-ASA-09, AC-ASA-10]
  • (P5-04) 测试连接组件:实现 EmbeddingTestPanel,展示测试结果和错误信息

    • AC: [AC-ASA-11, AC-ASA-12]
  • (P5-05) 支持格式组件:实现 SupportedFormats,展示支持的文档格式列表

    • AC: [AC-ASA-13]
  • (P5-06) 页面骨架与路由:创建 /admin/embedding 页面,布局包含各功能区

    • AC: [AC-ASA-08]
  • (P5-07) 配置加载与保存:实现配置加载、保存逻辑

    • AC: [AC-ASA-08, AC-ASA-10]
  • (P5-08) 组件整合与测试:整合所有组件完成功能闭环

    • AC: [AC-ASA-08~AC-ASA-13]

Phase 5 任务进度追踪

任务 描述 状态
P5-01 API 服务层与类型定义 已完成
P5-02 提供者选择组件 已完成
P5-03 动态配置表单 已完成
P5-04 测试连接组件 已完成
P5-05 支持格式组件 已完成
P5-06 页面骨架与路由 已完成
P5-07 配置加载与保存 已完成
P5-08 组件整合与测试 已完成

Phase 6: LLM 模型配置与 RAG 调试输出v0.3.0

页面导向LLM 模型配置页面 + RAG 实验室 AI 输出增强。

6.1 LLM 模型配置

  • (P6-01) LLM API 服务层与类型定义:创建 src/api/llm.ts 和 src/types/llm.ts

    • AC: [AC-ASA-14, AC-ASA-15]
  • (P6-02) LLM 提供者选择组件:实现 LLMProviderSelect 下拉组件

    • AC: [AC-ASA-15]
  • (P6-03) LLM 动态配置表单:根据 config_schema 动态渲染配置表单

    • AC: [AC-ASA-15, AC-ASA-16]
  • (P6-04) LLM 测试连接组件:实现 LLMTestPanel,展示测试回复和耗时

    • AC: [AC-ASA-17, AC-ASA-18]
  • (P6-05) LLM 配置页面:创建 /admin/llm 页面,整合所有组件

    • AC: [AC-ASA-14, AC-ASA-16]

6.2 RAG 实验室 AI 输出增强

  • (P6-06) AI 回复展示组件:实现 AIResponseViewer,展示 AI 最终输出

    • AC: [AC-ASA-19]
  • (P6-07) 流式输出支持:实现 SSE 流式输出展示,支持实时显示 AI 回复

    • AC: [AC-ASA-20]
  • (P6-08) Token 统计展示:展示 Token 消耗、响应耗时等统计信息

    • AC: [AC-ASA-21]
  • (P6-09) LLM 选择器:在 RAG 实验室中添加 LLM 配置选择器

    • AC: [AC-ASA-22]
  • (P6-10) RAG 实验室整合:将 AI 输出组件整合到 RAG 实验室页面

    • AC: [AC-ASA-19~AC-ASA-22]

Phase 6 任务进度追踪

任务 描述 状态
P6-01 LLM API 服务层与类型定义 已完成
P6-02 LLM 提供者选择组件 已完成
P6-03 LLM 动态配置表单 已完成
P6-04 LLM 测试连接组件 已完成
P6-05 LLM 配置页面 已完成
P6-06 AI 回复展示组件 已完成
P6-07 流式输出支持 已完成
P6-08 Token 统计展示 已完成
P6-09 LLM 选择器 已完成
P6-10 RAG 实验室整合 已完成

Phase 7: 租户管理v0.4.0

页面导向:租户选择器与租户管理功能。

  • (P7-01) 租户 API 服务层:创建 src/api/tenant.ts 和 src/types/tenant.ts

    • AC: [AC-ASA-01]
  • (P7-02) 租户选择器组件:实现 TenantSelector 下拉组件,支持租户切换

    • AC: [AC-ASA-01]
  • (P7-03) 租户持久化:租户选择持久化到 localStorage

    • AC: [AC-ASA-01]

Phase 7 任务进度追踪

任务 描述 状态
P7-01 租户 API 服务层 已完成
P7-02 租户选择器组件 已完成
P7-03 租户持久化 已完成

Phase 8: Prompt 模板管理v0.6.0

页面导向Prompt 模板列表页 + 模板编辑器 + 版本管理。

  • (P8-01) API 服务层与类型定义:创建 src/api/prompt-template.tssrc/types/prompt-template.ts

    • AC: [AC-ASA-23, AC-ASA-24, AC-ASA-25, AC-ASA-26, AC-ASA-27, AC-ASA-28]
  • (P8-02) Prompt 模板列表页:实现模板列表展示(名称、场景标签、发布版本号、更新时间),支持按场景筛选

    • AC: [AC-ASA-23]
  • (P8-03) 模板创建/编辑表单:实现模板表单(名称、场景选择、系统指令编辑区),系统指令编辑区支持 {{variable}} 语法高亮

    • AC: [AC-ASA-24, AC-ASA-25]
  • (P8-04) 内置变量参考面板在编辑区侧边展示可用变量列表persona_name/current_time/channel_type 等),支持点击插入

    • AC: [AC-ASA-24]
  • (P8-05) 模板详情与版本历史:实现详情页/抽屉,展示当前发布版本内容 + 版本历史时间线

    • AC: [AC-ASA-28]
  • (P8-06) 发布与回滚操作:实现发布确认对话框 + 版本历史中的回滚按钮

    • AC: [AC-ASA-26, AC-ASA-27]

Phase 9: 多知识库管理v0.6.0

页面导向:知识库列表页(替代原有单一文档列表)+ 知识库内文档管理。

  • (P9-01) API 服务层与类型定义:创建 src/api/knowledge-base.tssrc/types/knowledge-base.ts

    • AC: [AC-ASA-29, AC-ASA-30, AC-ASA-32, AC-ASA-33]
  • (P9-02) 知识库列表页:实现知识库卡片/列表视图(名称、类型标签色块、文档数、优先级、启用状态开关)

    • AC: [AC-ASA-29]
  • (P9-03) 知识库创建/编辑表单:实现创建表单(名称、类型选择下拉、描述、优先级数字输入)

    • AC: [AC-ASA-30, AC-ASA-32]
  • (P9-04) 知识库删除确认:实现二次确认对话框,提示将删除所有关联文档和索引

    • AC: [AC-ASA-33]
  • (P9-05) 知识库内文档管理:点击知识库进入文档列表视图,复用现有文档列表组件,上传时自动关联 kbId

    • AC: [AC-ASA-31]
  • (P9-06) 改造现有知识库页面:将原有 /kb 页面从单一文档列表改为知识库列表 → 文档列表的两级结构

    • AC: [AC-ASA-29, AC-ASA-31]

Phase 10: 意图规则管理v0.6.0

页面导向:意图规则列表页 + 规则创建/编辑表单。

  • (P10-01) API 服务层与类型定义:创建 src/api/intent-rule.tssrc/types/intent-rule.ts

    • AC: [AC-ASA-34, AC-ASA-35, AC-ASA-36]
  • (P10-02) 意图规则列表页:实现规则列表(意图名称、关键词摘要、响应类型标签、优先级、命中次数、启用开关),支持按响应类型筛选

    • AC: [AC-ASA-34]
  • (P10-03) 规则创建/编辑表单实现动态表单响应类型切换时动态展示对应配置区fixed→文本编辑、rag→知识库多选、flow→流程选择、transfer→话术编辑

    • AC: [AC-ASA-35]
  • (P10-04) 关键词标签输入组件:实现多关键词标签输入(支持回车添加、点击删除)

    • AC: [AC-ASA-35]
  • (P10-05) 正则表达式输入组件:实现多正则输入(支持添加/删除,带基础语法校验提示)

    • AC: [AC-ASA-35]
  • (P10-06) 规则删除确认与启用/禁用切换

    • AC: [AC-ASA-36]

Phase 11: 话术流程管理v0.6.0

页面导向:话术流程列表页 + 流程步骤编辑器。

  • (P11-01) API 服务层与类型定义:创建 src/api/script-flow.tssrc/types/script-flow.ts

    • AC: [AC-ASA-37, AC-ASA-38, AC-ASA-39]
  • (P11-02) 话术流程列表页:实现流程列表(名称、步骤数、启用状态、关联规则数)

    • AC: [AC-ASA-37]
  • (P11-03) 流程步骤编辑器:实现步骤列表编辑(添加/删除/拖拽排序),每个步骤卡片包含话术内容、等待输入开关、超时配置、下一步条件

    • AC: [AC-ASA-38]
  • (P11-04) 步骤条件配置组件:实现下一步条件编辑(关键词匹配 + 跳转目标步骤选择)

    • AC: [AC-ASA-38]
  • (P11-05) 流程预览视图:以步骤时间线/流程图形式展示完整流程,直观呈现步骤间跳转关系

    • AC: [AC-ASA-39]

Phase 12: 输出护栏管理v0.6.0

页面导向:护栏管理页面(禁词标签页 + 行为规则标签页)。

  • (P12-01) API 服务层与类型定义:创建 src/api/guardrail.tssrc/types/guardrail.ts

    • AC: [AC-ASA-40, AC-ASA-41, AC-ASA-42, AC-ASA-43, AC-ASA-44]
  • (P12-02) 护栏管理页面骨架:创建 /admin/guardrails 页面,实现「禁词管理」和「行为规则」双标签页布局

    • AC: [AC-ASA-40]
  • (P12-03) 禁词列表与筛选:实现禁词表格(词语、类别标签、策略标签、命中次数、启用开关),支持按类别筛选

    • AC: [AC-ASA-41]
  • (P12-04) 禁词添加/编辑表单实现动态表单策略切换时展示对应配置replace→替换文本、block→兜底话术

    • AC: [AC-ASA-42]
  • (P12-05) 禁词批量导入:实现 CSV/文本批量导入功能(每行一个词,可选默认类别和策略)

    • AC: [AC-ASA-41]
  • (P12-06) 行为规则列表与管理:实现行为规则表格(规则描述、类别、启用开关),支持添加/编辑/删除

    • AC: [AC-ASA-43, AC-ASA-44]
  • (P12-07) 路由注册与导航菜单:将新增的 5 个页面Prompt 模板、知识库、意图规则、话术流程、输出护栏)注册到路由和侧边导航菜单

    • AC: [AC-ASA-23~AC-ASA-44]