站内精选

一句话结论

别把整本手册塞进知识库。按标题切成 200~400 字的小块,再用 20 条真实问题测 Top3 命中,两轮就能把切片方案定下来。

这篇解决什么问题

公司有一本 300 页上下的产品手册,想做成能问答的知识库。整本丢进去,问「三级报警怎么复位」,召回来的常常是前言或者目录页。

适用:章节标题清楚的说明书、规范、操作指引这类文档。不适用:纯扫描件、没有文字层的图文混排件,那种得先做 OCR,切片是下一步的事。

开始前要准备什么

  • 一个能建知识库的工具,扣子、Dify 都有免费额度,够跑测试
  • DeepSeek 的接口或网页版,用来做结构整理和切片判定
  • 手册原始 PDF,外加一份能复制出来的文字版
  • 20 条真实提问,从客服工单和内部群里捞
  • 一张四列表:问题、召回块、答案在不在、本该命中哪节
  • 整条流程跑一遍,通常一个下午能收工

具体怎么做

第 1 步 · 先把手册变成带层级的文本

转文字这一步不难,难的是标题层级全丢了,转出来一片平文。哪儿该切、哪儿不能切,后面就只能靠猜。

你是文档结构整理助手。我给你一份从产品手册转出来的纯文本,请做三件事:1. 识别标题层级,用 # / ## / ### 标注;2. 去掉页眉、页脚、页码,以及每页重复出现的公司名和版权行;3. 把表格转成 Markdown 表格,图注单独成行并保留原有图号。输出要求:只输出整理后的正文,不要解释过程;章节编号原样保留,不要重排;识别不出层级的行,在行尾加 <!– 待确认 –> 标记。文档内容如下:””” {粘贴转出的文本} “””

预期产出:一份带标题层级的结构文本,页眉页脚清干净,图注和表格都在原位。这一步的人工量在于校对标题,机器标错的地方得自己改。

第 2 步 · 让模型只判断「该不该拆」

我一开始直接让它切,结果块大小全凭它心情。后来把动作拆开:先只让它出一张处理方式表,人过一眼再动手。

你是知识库切片顾问。下面是一份手册的目录结构,我要切成适合检索的小块,请判断哪些章节整节保留、哪些必须再往下拆。判断依据:一节正文超过 600 字且含多个操作步骤或多张参数表,需要拆;一节是概念解释、术语定义,整节保留;一节是多张对照表,按表拆,一表一块。输出一张三列表:章节编号 | 处理方式(保留/拆分/按表拆) | 建议块大小区间。不要输出正文内容。目录如下:””” {粘贴目录} “””

预期产出:一张可以直接照着执行的处理方式表。表里标「按表拆」的那几节,往往就是后面检索最容易翻车的地方。

第 3 步 · 批量切片并补上上下文前缀

切完最麻烦的不是块多,是块里全是「它」「该值」「上述参数」。单看一块,谁也读不懂它在说哪个型号。

你是切片执行器。把下面这段手册正文切成若干块,规则如下:每块 200~400 字,不跨小节标题;每块开头补一行上下文前缀,格式为【手册名 > 二级标题 > 三级标题】;代码、参数表、命令示例整块保留,不许切断;文中的代词(它、该值、上述)替换成具体名词。输出 JSON 数组,每个对象含四个字段:chunk_id(从 01 递增)、section_path、text、note(一句话说明这块讲什么)。正文如下:””” {粘贴一章正文} “””

预期产出:一批带章节路径和一句话摘要的切片。那个 note 字段后面会很有用,检索失败时一眼能看出块本身是不是讲偏了。

第 4 步 · 攒 20 条真实问题,跑第一轮

自己编的问题最容易自欺欺人——用词和正文高度一致,命中率好看得离谱。真实提问往往是「屏幕一直闪红灯是咋了」这种。

我在给一份产品手册做检索测试,需要一组贴近真实提问的测试题。请根据下面的章节清单出 20 条问题:12 条是「怎么办」「报错怎么解决」类,模拟一线使用者的口语问法;5 条是跨章节对比问题,比如两个型号的差异;3 条是术语解释。每条问题后面用括号标出你认为应该命中的章节编号。问题里不要直接复用章节标题的原词。章节清单:””” {粘贴目录} “””

预期产出:一份 20 条的测试问题集,每条都带标准答案章节。建议从客服工单里挑几条替换掉模型生成的,那几条才是真话。

第 5 步 · 看失败样本,回改规则再跑一轮

命中率卡住不动的时候,多数不是检索模型的问题,是切片边界把答案劈成了两半。这一步别急着换工具。

下面是几条检索失败记录,每条包含:用户问题、实际召回的前三块摘要、人工判断该命中的章节。请逐条判断失败原因,归到四类之一:切片边界切断了答案 / 缺少上下文导致指代不清 / 问题用词和正文差距太大 / 手册里根本没有这个内容。输出格式:问题编号 → 原因分类 → 一句话改法(改切片规则,还是补同义词表)。记录如下:””” {粘贴失败记录} “””

预期产出:一份失败归因清单,直接告诉你下一轮该动哪条规则。多数情况下来回改两轮,命中就稳住了。

实测记录

环节 实际情况
结构化整理 300 页跑一遍约十几分钟,人工校对标题层级另花小半天
批量切片 单章一分钟以内,全书产出四百块上下
建问题集 20 条约半小时,从工单里抄比让模型生成快
首轮命中 Top3 命中约一半,参数对照题和跨章节对比题几乎全错
二轮命中 改完切片边界后接近九成,仍有几条手册里压根没写

成本上没什么压力,消耗的 token 量级跑一两次免费额度基本能覆盖。和手工翻 PDF 对照相比,前期多花的两三个小时,都省在后面反复被人问同一个问题的工夫里。

最容易错的 3 个地方

  1. 按固定字数硬切。一刀下去参数表被劈成两半,检索永远只召回半张表。纠正:把表格和代码块设成不可切分单元。
  2. 只记「有没有搜到」。搜到了但答案不在块里,也算失败。纠正:表里加一列,判断答案是否真的落在召回块内。
  3. 拿自己写的问题测。用词和正文重合度太高,命中率虚高。纠正:至少一半问题来自真实工单原话。

可复用的东西

这五段提示词其实是一条流水线:结构整理 → 判定处理方式 → 批量切片 → 生成问题集 → 失败归因。每段的输出都是下一段的输入,中间人只需要在校对和过目这两个卡点停一下。把占位符换成你自己的章节内容,直接能跑。

切片方案不用一次定死,先出一版能跑的,让命中记录告诉你哪儿不对。你手上那本手册,最难切的是哪一章?

常见问题解答

手册只有几十页,也要切片吗?

要,但可以粗一点。几十页的文档按二级标题整节保留通常就够,重点是别忘了测——不测你永远不知道检索到底命中了哪一块。

不用扣子、Dify,自己写脚本能做完吗?

能。切片和调接口这两步脚本都能做,工具主要省的是建库和可视化看召回结果的时间。测试环节建议还是找个能直接看召回块的界面。

切片大小到底定多少合适?

200~400 字是个稳妥区间,但别当成铁律。操作步骤类和参数表类要更小,概念解释类整节留着反而更好,判断依据是有没有多个独立信息点。

小程序阅读免费
微信扫码进入小程序,按岗位找 AI 实操步骤
微信扫码进小程序
按岗位找 AI 实操步骤 · 提示词可收藏

发表回复

后才能评论