模型文档 RAG 分块策略

针对 API 文档这类强结构化文本,设计一套按「接口」而不是按字数的分块策略,并给出评测方法。

更新于 4天前

适用场景

  • 把模型 API 文档灌进知识库,问参数用法总召回错接口
  • 按固定字数切块把接口说明切成了两半
  • 要给检索效果做一次可量化的评测
PROMPT
团队把 DeepSeek 和 Claude 的两份 API 文档灌进了知识库,工程师问「temperature 参数怎么设」却总召回另一个接口的说明,需要重做分块策略时用这个。

【需求】
设计面向 API 文档的分块方案:
1. 分块单位:以「一个接口」为一块(含路径、方法、参数表、返回示例、错误码),而不是按固定字数;
2. 边界规则:遇到下一个 `##` 级标题或「请求参数」表结束时切块;单个接口超过 1200 字则按「请求 / 响应 / 错误码」再切;
3. 元数据:每块打上接口名、HTTP 方法、所属产品(deepseek / claude)三个字段,检索时先按产品过滤;
4. 重叠:只在参数表被切开时补 1 行表头,不做全文重叠;
5. 评测:准备 30 个真实问题,统计 Top1 命中率与 Top4 命中率。

【输出要求】
1. 给出分块算法(伪代码即可)与元数据结构;
2. 说明为什么固定字数切块在这类文档上必然出错,举一个具体例子;
3. 给评测脚本思路,含 30 个问题的构造方法(从文档小节标题反向生成);
4. 最后给 3 条上线后的监控指标。

---
标签
RAG 分块 检索