M2-05 Vector & Retrieval 对接 #25

Open
opened 2026-05-22 21:09:49 +08:00 by wangdl · 0 comments
Owner

目标

将 M1-02 Vector & Retrieval Module 的设计与 M2 知识库主链路对接,确保 Ingestion 产出的 embedding 能正确写入 Qdrant,RAG Chat 的检索请求能正确组装上下文。

本 Issue 只做对接设计,Vector 模块自身和 Ingestion/RAG 模块的架构设计在各自的 Issue 中完成。

背景说明

M1-02 设计了 Vector & Retrieval 模块的接口(upsert/delete/search/rerank),M2-04 设计了 Ingestion 的导入流水线,M2-07 将设计 RAG Chat 的对话能力。本 Issue 负责确保这三个模块之间的接口契约一致、数据格式对齐、调用链路畅通。

对接内容

  1. Ingestion → Vector 对接:

    • Ingestion 产出 chunk + embedding 后的数据格式定义
    • Vector upsert 接口的批量写入参数约定(batch size、并发控制)
    • 写入失败的回滚和重试策略
    • Qdrant collection 与 KnowledgeBase 的映射策略
  2. Vector → RAG Chat 对接:

    • RAG Chat 请求检索时的参数约定(topK、filter、rerank 开关)
    • 检索结果的数据格式(含 source 信息用于 citation)
    • citation context 组装的输入输出格式
    • 无结果或低相关度结果的兜底策略
  3. 数据一致性:

    • Material 删除时如何触发 Vector 中对应向量的清理
    • chunk 重新解析时旧向量的替换策略
    • Ingestion 失败时已写入 Vector 的数据清理

基础设施依赖

本 Issue 不引入新依赖,仅协调三个已有模块的接口。

Domain Event(对接相关)

  • VectorsUpserted(Vector 发布)← Ingestion 等待此事件确认写入完成
  • VectorsDeleted(Vector 发布)← Material 删除触发

验收标准

  1. Ingestion → Vector 数据格式契约文档
  2. Vector → RAG Chat 检索接口契约文档
  3. 数据一致性方案(删除/更新/失败清理)
  4. citation context 组装规范
  5. 集成测试覆盖端到端链路:导入 → embedding → 检索 → citation

禁止事项

  • 禁止 Ingestion 绕过 Vector 模块直接操作 Qdrant SDK
  • 禁止 RAG Chat 绕过 Vector 模块直接检索 Qdrant
  • 禁止 chunk 不关联 KnowledgeSource 直接写入 Vector
## 目标 将 M1-02 Vector & Retrieval Module 的设计与 M2 知识库主链路对接,确保 Ingestion 产出的 embedding 能正确写入 Qdrant,RAG Chat 的检索请求能正确组装上下文。 本 Issue 只做对接设计,Vector 模块自身和 Ingestion/RAG 模块的架构设计在各自的 Issue 中完成。 ## 背景说明 M1-02 设计了 Vector & Retrieval 模块的接口(upsert/delete/search/rerank),M2-04 设计了 Ingestion 的导入流水线,M2-07 将设计 RAG Chat 的对话能力。本 Issue 负责确保这三个模块之间的接口契约一致、数据格式对齐、调用链路畅通。 ## 对接内容 1. Ingestion → Vector 对接: - Ingestion 产出 chunk + embedding 后的数据格式定义 - Vector upsert 接口的批量写入参数约定(batch size、并发控制) - 写入失败的回滚和重试策略 - Qdrant collection 与 KnowledgeBase 的映射策略 2. Vector → RAG Chat 对接: - RAG Chat 请求检索时的参数约定(topK、filter、rerank 开关) - 检索结果的数据格式(含 source 信息用于 citation) - citation context 组装的输入输出格式 - 无结果或低相关度结果的兜底策略 3. 数据一致性: - Material 删除时如何触发 Vector 中对应向量的清理 - chunk 重新解析时旧向量的替换策略 - Ingestion 失败时已写入 Vector 的数据清理 ## 基础设施依赖 本 Issue 不引入新依赖,仅协调三个已有模块的接口。 ## Domain Event(对接相关) - VectorsUpserted(Vector 发布)← Ingestion 等待此事件确认写入完成 - VectorsDeleted(Vector 发布)← Material 删除触发 ## 验收标准 1. Ingestion → Vector 数据格式契约文档 2. Vector → RAG Chat 检索接口契约文档 3. 数据一致性方案(删除/更新/失败清理) 4. citation context 组装规范 5. 集成测试覆盖端到端链路:导入 → embedding → 检索 → citation ## 禁止事项 - 禁止 Ingestion 绕过 Vector 模块直接操作 Qdrant SDK - 禁止 RAG Chat 绕过 Vector 模块直接检索 Qdrant - 禁止 chunk 不关联 KnowledgeSource 直接写入 Vector
wangdl added this to the M2:知识库主链路闭环(P1) milestone 2026-05-22 21:09:49 +08:00
wangdl self-assigned this 2026-05-22 21:09:49 +08:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wangdl/api-server#25
No description provided.