146 lines
6.7 KiB
Markdown
146 lines
6.7 KiB
Markdown
# 元数据职责分层模块边界(Scope)
|
||
|
||
## 1. 模块边界说明
|
||
|
||
### 1.1 覆盖范围
|
||
|
||
本模块聚焦于**元数据字段的职责分层与运行时消费解耦**,具体包括:
|
||
|
||
1. **字段职责分层**
|
||
- 为元数据字段引入 `field_roles` 多选属性
|
||
- 支持四种职责角色:`resource_filter`、`slot`、`prompt_var`、`routing_signal`
|
||
- 单个字段可同时承担多种职责
|
||
|
||
2. **分层视图能力**
|
||
- 后端提供按 role 查询字段的能力
|
||
- 工具与模块按 role 消费,不再全量混用
|
||
|
||
3. **槽位模型增强**
|
||
- 引入独立的槽位定义模型(可复用元数据字段但有独立运行时语义)
|
||
- 支持 `slot_key/type/required/extract_strategy/validation_rule/ask_back_prompt`
|
||
- 运行时值包含 `source/confidence/updated_at`
|
||
|
||
4. **工具协同改造**
|
||
- `kb_search_dynamic` 只消费 `resource_filter` 角色
|
||
- `memory_recall` 只消费 `slot` 角色
|
||
- `intent_hint/high_risk_check` 只消费 `routing_signal` 角色
|
||
- prompt 渲染只消费 `prompt_var` 角色
|
||
|
||
5. **管理端可配置能力**
|
||
- 元数据字段编辑界面增加 `field_roles` 配置
|
||
- 提供"按 role 过滤查看"能力
|
||
- 允许删除重建配置(无需迁移兼容)
|
||
|
||
### 1.2 不覆盖范围
|
||
|
||
- **历史数据迁移**:本迭代不负责历史数据的自动迁移,允许删除重建配置
|
||
- **向量引擎替换**:不涉及 Qdrant 或其他向量引擎的替换
|
||
- **LLM 模型切换**:不涉及模型供应商或模型选型的变更
|
||
- **渠道端实现**:不覆盖渠道侧 SegmentDispatcher/InterruptManager 等具体实现
|
||
- **元数据字段类型扩展**:不新增字段类型(string/number/boolean/enum/array_enum 保持不变)
|
||
|
||
---
|
||
|
||
## 2. 依赖盘点
|
||
|
||
### 2.1 内部依赖
|
||
|
||
| 依赖模块 | 用途说明 | 接口 |
|
||
|---------|---------|------|
|
||
| `metadata-governance` | 元数据字段定义基础能力 | `/admin/metadata-schemas` |
|
||
| `intent-driven-mid-platform` | 中台运行时工具链 | `kb_search_dynamic`, `memory_recall`, `intent_hint`, `high_risk_check` |
|
||
| `ai-service-admin` | 管理端前端页面 | 元数据配置界面 |
|
||
|
||
### 2.2 外部依赖
|
||
|
||
| 依赖服务 | 用途说明 |
|
||
|---------|---------|
|
||
| PostgreSQL | 元数据字段定义、槽位定义存储 |
|
||
| Redis | 运行时缓存 |
|
||
|
||
---
|
||
|
||
## 3. 依赖接口清单
|
||
|
||
### 3.1 本模块依赖的外部接口(Consumer)
|
||
|
||
| 接口 | 来源模块 | 用途 |
|
||
|------|---------|------|
|
||
| `GET /admin/metadata-schemas` | metadata-governance | 获取元数据字段列表 |
|
||
| `POST /admin/metadata-schemas` | metadata-governance | 创建元数据字段 |
|
||
| `PUT /admin/metadata-schemas/{id}` | metadata-governance | 更新元数据字段 |
|
||
| `DELETE /admin/metadata-schemas/{id}` | metadata-governance | 删除元数据字段 |
|
||
|
||
### 3.2 本模块对外提供的接口(Provider)
|
||
|
||
| 接口 | 用途 |
|
||
|------|------|
|
||
| `GET /admin/metadata-schemas/by-role` | 按 role 查询字段定义 |
|
||
| `GET /admin/slot-definitions` | 获取槽位定义列表 |
|
||
| `POST /admin/slot-definitions` | 创建槽位定义 |
|
||
| `PUT /admin/slot-definitions/{id}` | 更新槽位定义 |
|
||
| `DELETE /admin/slot-definitions/{id}` | 删除槽位定义 |
|
||
| `GET /mid/slots/by-role` | 运行时按 role 获取槽位定义 |
|
||
|
||
---
|
||
|
||
## 4. 数据模型边界
|
||
|
||
### 4.1 新增模型
|
||
|
||
| 模型名 | 说明 |
|
||
|-------|------|
|
||
| `SlotDefinition` | 槽位定义表(独立于 MetadataFieldDefinition) |
|
||
|
||
### 4.2 扩展模型
|
||
|
||
| 模型名 | 扩展字段 |
|
||
|-------|---------|
|
||
| `MetadataFieldDefinition` | 新增 `field_roles: list[str]` 字段 |
|
||
|
||
---
|
||
|
||
## 5. 工具消费关系
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ 元数据字段职责分层 │
|
||
├─────────────────────────────────────────────────────────────────┤
|
||
│ │
|
||
│ MetadataFieldDefinition │
|
||
│ └── field_roles: [resource_filter, slot, prompt_var, │
|
||
│ routing_signal] │
|
||
│ │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
│
|
||
┌─────────────────────┼─────────────────────┐
|
||
▼ ▼ ▼
|
||
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
|
||
│resource_filter│ │ slot │ │ prompt_var │
|
||
└───────┬───────┘ └───────┬───────┘ └───────┬───────┘
|
||
│ │ │
|
||
▼ ▼ ▼
|
||
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
|
||
│kb_search_ │ │memory_recall │ │template_engine│
|
||
│dynamic │ │ │ │ │
|
||
└───────────────┘ └───────────────┘ └───────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ routing_signal │
|
||
└───────┬─────────────────────────────────────────────────────────┘
|
||
│
|
||
├───────────────┐
|
||
▼ ▼
|
||
┌───────────────┐ ┌───────────────┐
|
||
│intent_hint │ │high_risk_check│
|
||
└───────────────┘ └───────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
## 6. 版本与迭代
|
||
|
||
- 当前版本:`v0.1.0`
|
||
- AC 范围:`AC-MRS-01 ~ AC-MRS-16`
|
||
- 迭代策略:允许删除重建配置,不考虑历史数据迁移
|