ai-robot-core/spec/metadata-governance/requirements.md

88 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
feature_id: "IDSMETA"
title: "多知识库元数据模型与拆解治理(迭代需求)"
status: "draft"
version: "0.2.0"
active_version: "0.1.0-0.2.0"
version_history:
- version: "0.2.0"
ac_range: "AC-IDSMETA-13~22"
description: "基于已上线元数据配置界面的联动增强与治理闭环"
- version: "0.1.0"
ac_range: "AC-IDSMETA-01~12"
description: "建立多知识库元数据配置与数据拆解治理能力"
owners:
- "product"
- "backend"
- "frontend"
- "ops"
last_updated: "2026-03-02"
source:
type: "doc"
ref: "docs/spec-product-zh.md + spec/contracting.md + spec/intent-driven-script/data-decomposition-methodology.md"
---
# 多知识库元数据模型与拆解治理IDSMETA
## 1. 背景与目标
### 1.1 背景
当前系统已具备 Knowledge Base / Intent Rules / Script Flow / Prompt Template 的录入能力,并支持灵活话术流程。**元数据配置界面已上线**,但在跨模块复用与检索治理层仍存在缺口:
- 知识录入口径不一致,导致检索命中与召回不稳定
- 已上线 metadata 配置能力尚未在 KB/Intent/Flow/Prompt 录入链路中完全联动
- 新增业务文本时,难以稳定判断应录入 KB、Intent、现有 Flow 或新建 Flow
- 多知识库场景下缺少“意图路由 + metadata 过滤”的标准执行策略
### 1.2 目标
- 在现有 metadata 配置界面基础上补齐字段生命周期治理draft/active/deprecated
- 在 KB/Intent/Flow/Prompt 管理界面统一联动 metadata 配置与校验
- 建立“数据拆解方法论”到系统配置对象的落库闭环
- 提升多知识库检索准确率与可维护性
### 1.3 非目标Out of Scope
- 不调整现有 LLM 供应商与模型切换机制
- 不实现全新的向量引擎或替换 Qdrant
- 不在本迭代内重构既有全部历史数据,仅提供迁移与增量治理方案
## 2. 用户故事User Stories
- [US-IDSMETA-01] 作为运营配置人员,我希望在后台统一配置 metadata 字段与可选值,以便不同模块复用同一套标签标准。
- [US-IDSMETA-02] 作为话术与知识库管理人员,我希望录入内容时自动显示适配字段并进行校验,以便减少脏数据。
- [US-IDSMETA-03] 作为系统路由引擎,我希望根据意图自动选择知识库并附加 metadata 过滤,以便提高召回相关性。
- [US-IDSMETA-04] 作为产品经理,我希望把“拆解方法论”沉淀为标准输出格式,以便在不同 AI 上下文中稳定复用。
## 3. 验收标准Acceptance Criteria, EARS
### 📌 当前活跃版本v0.2.0
- [AC-IDSMETA-13] WHEN 管理员在元数据配置界面创建或编辑字段 THEN 系统 SHALL 支持字段级状态管理draft/active/deprecated并在列表中可筛选。
- [AC-IDSMETA-14] WHEN 字段状态为 deprecated THEN 系统 SHALL 禁止其在新建对象中被选择,但历史数据仍可读取。
- [AC-IDSMETA-15] WHEN 在 KB 文档录入页创建/编辑内容 THEN 系统 SHALL 根据知识库类型与 scope 自动渲染 metadata 字段并执行 required 校验。
- [AC-IDSMETA-16] WHEN 在 Intent Rule、Script Flow、Prompt Template 页面编辑配置 THEN 系统 SHALL 复用统一 metadata 组件并以一致的数据结构保存。
- [AC-IDSMETA-17] WHEN 页面切换对象类型(如 FAQ -> Product THEN 系统 SHALL 保留兼容字段值,并对不兼容字段给出“移除/映射”的显式提示。
- [AC-IDSMETA-18] WHEN 命中 Intent Rule 且 response_type=rag THEN 系统 SHALL 按路由策略选择目标知识库集合(支持多库)。
- [AC-IDSMETA-19] WHEN 进入 RAG 检索 THEN 系统 SHALL 注入会话上下文提取出的 metadata 过滤条件(至少包含 grade、subject、scene
- [AC-IDSMETA-20] WHEN 路由或过滤后无有效召回 THEN 系统 SHALL 执行兜底策略fallback kb 或固定话术)并记录结构化原因码。
- [AC-IDSMETA-21] WHEN 运营或 AI 提交“待录入文本” THEN 系统 SHALL 按固定模板输出拆解结果(归类结论、理由、落库建议、风险冲突)。
- [AC-IDSMETA-22] WHEN 新增或更新拆解模板 THEN 系统 SHALL 保存模板版本并支持查询最近一次生效版本。
### 📦 历史版本(已归档)
<details>
<summary>v0.1.0元数据配置能力建立AC-IDSMETA-01~12</summary>
- [AC-IDSMETA-01] 元数据配置页面支持字段定义创建field_key、label、type、required、options、default、scope、is_filterable、is_rank_feature、status
- [AC-IDSMETA-02] 保存字段定义时校验 field_key 全局唯一且仅允许小写字母数字下划线。
- [AC-IDSMETA-03] enum 或 array(enum) 类型要求 options 非空且无重复。
- [AC-IDSMETA-04] required 且 scope 命中时,录入保存前执行必填校验并返回字段级错误。
- [AC-IDSMETA-05] KB 文档录入根据知识库类型展示适用 metadata 字段。
- [AC-IDSMETA-06] Intent Rule / Script Flow / Prompt Template 支持保存结构化 metadata。
- [AC-IDSMETA-07] 切换对象类型时保留可兼容字段并提示不兼容处理。
- [AC-IDSMETA-08] Intent 命中后支持按路由选择目标知识库集合。
- [AC-IDSMETA-09] RAG 检索支持注入关键 metadata 过滤条件。
- [AC-IDSMETA-10] 无召回时触发兜底并记录原因日志。
- [AC-IDSMETA-11] 支持按固定结构输出拆解结果。
- [AC-IDSMETA-12] 支持拆解模板版本保留与回溯。
</details>