
很多新手用扣子(Coze)做智能体,最常遇到的挫败就是知识库效果差。大家习惯性把十几份 PDF 或者 Word 原文直接往里一扔,结果实际提问时,AI 要么张冠李戴,要么直接回答“知识库中未找到相关内容”。
这通常不是底座大模型理解能力不行,而是你在文档清洗、分块切片规则和召回参数配置这几个环节没调对。下面我把扣子知识库从零搭建到参数调优的实操流程梳理清楚。
第一步:按数据形态选对知识库类型
进入扣子工作空间,点击左侧导航栏的“知识库”,点击“创建知识库”。扣子目前主要提供三种数据类型:文本格式、表格格式和照片/图片格式。很多人直接把带表格的 PDF 往文本库里塞,这是最典型的错误操作。
不同格式的底层解析逻辑完全不同:
| 知识库类型 | 适用数据形态 | 索引与切分机制 | 常见问题与避坑提示 |
|---|---|---|---|
| 文本知识库 (Text) | 政策说明、操作手册、问答对、文章等长段落文本 | 按字符数或标点符号切分,转为向量存储 | 不要直接上传包含复杂表格的 PDF,表格结构会被打碎成混乱文本,导致数值对应错误。 |
| 表格知识库 (Table) | 员工花名册、商品价格表、规格参数表、FAQ 清单 | 按数据行切分,每行作为独立数据块 | 必须有明确的列名(表头)。每一行的数据必须具备独立含义,不能跨行合并单元格。 |
| 图片知识库 (Image) | 产品外观图、流程架构图、设计素材 | 依赖图像识别(OCR)与人工标注描述 | 图片如果不加详细的文字标注,检索召回率会非常低。 |
如果你手头的数据是产品报价单或者问答清单,优先整理为 Excel 或 CSV 表格再上传;如果是规章制度或者产品白皮书,再走文本知识库通道。
第二步:文本分块(Chunking)的核心规则
把文档上传后,扣子会让你选择分段方式。这里有两个选项:自动分段与自定义分段。
平时做严肃业务场景,尽量不要选自动分段。 自动分段通常按照固定字符数暴力截断,经常会把一句话切成两半,或者把一个步骤的“前提条件”和“具体操作”强行拆进两个切片里。一旦分开,大模型检索时只拿到后半句,就会给出错误答案。
正确做法是选择自定义分段,重点调整以下三个参数:
1.分段标识符:建议使用自定义标记,比如在整理文档时,每个独立知识点前面加上特定的二级标题或特定符号(例如 `### ` 或双换行 `nn`)。让扣子按照语义自然段落来切分。
2.切片最大长度(Chunk Size):建议控制在 400 到 800 字符 之间。切得太碎(比如 100 字符),信息缺乏上下文;切得太长(比如超过 1500 字符),单个块里的无关信息太多,会拉低向量检索的相似度分数。
3.分段重叠度(Chunk Overlap):建议设置为切片长度的 10% 到 15%(例如切片长度 500 字符,重叠度设 50 到 80 字符)。重叠区域能保证前一个切片的结尾和后一个切片的开头有上下文呼应,避免边界处的关键逻辑丢失。
切分完成后,扣子会展示切片预览。必须花三分钟抽检切片列表,如果发现某个切片只有半句话,或者把标题单独切成了一块,就要回到源文档重新调整分隔符。
第三步:检索策略与参数调优
分块做好后,知识库就可以关联到智能体上了。在智能体编排页面添加该知识库,点击设置图标,会看到最核心的几个检索参数。这里的设置直接决定了回答的准确度。
下表是各项核心参数的机制与实操推荐区间:
| 参数名称 | 核心作用 | 调得太高的后果 | 调得太低的后果 | 建议调试基准值 |
|---|---|---|---|---|
| 搜索策略 | 决定用向量、关键词还是两者结合找文档 | – | – | 必选“混合检索” |
| 最大召回数量 (Top K) | 每次检索最多抓取几个相关切片给模型 | 引入无关切片,消耗过多 Token,导致模型幻觉 | 遗漏关键信息,回答不完整 | 日常设 3 到 5;长文对比设 6 到 8 |
| 最小匹配度 (Similarity Threshold) | 过滤相关度不及格切片的相似度底线 | 门槛太严,明明有答案也会频繁拒答 | 垃圾切片大量涌入,AI 开始编造答案 | 基准设 0.45 到 0.55 |
下面逐一讲清楚为什么要这样设置:
1. 检索策略选择:坚定使用“混合检索”
扣子支持语义检索(向量检索)、全文检索(关键词检索)和混合检索。
•语义检索懂同义词,比如用户问“怎么换货”,它能找到包含“退换流程”的段落;但是它对特定型号、专属名词(比如“Model-X800”、“错误码 4041”)不敏感。
•全文检索正好相反,查具体编号和精确词汇很准,但不理解换个说法的意思。
•混合检索把两者算力结合起来,先各查一遍再通过算法重排。只要系统支持,一律选混合检索。
2. 最大召回数量(Top K):贪多必失
很多人以为把 Top K 拉到 10 会更保险。事实是,每次注入 Prompt 的切片越多,上下文里的信噪比越低。大模型存在“迷失在中间”(Lost in the Middle)的问题,当无关信息太多时,它反而会忽略夹在中间的关键依据。
•如果知识库是短问答形式(FAQ),Top K 设为 3 就够了。
•如果问题需要综合多个章节做总结,Top K 设为 5 到 6。
3. 最小匹配度:0.5 是安全线
最小匹配度的取值范围是 0 到 1。
•如果设为 0.3,很多风马牛不相及的切片都会被送给模型,导致 AI 强行胡说。
•如果设为 0.7 以上,只要用户的提问词和文档用词稍微有点出入,系统就会判定找不到内容。
•实测中最平衡的区间是 0.45 到 0.55。在这个阈值下,既能过滤大部分不相干内容,又保留了足够的语义容错空间。
4. 召回模式:自动召回 vs 按需召回
•自动召回:用户每说一句话,系统都强制搜一遍知识库。这适合纯专业咨询机器人,但在日常闲聊时会增加延迟和消耗。
•按需召回:让大模型先判断用户的问题是否需要查资料,需要时再触发检索。做复合型助手时建议选按需召回,但前提是在人设 Prompt 中明确写明调用时机。
第四步:在提示词中加上“防幻觉约束”
只调好参数还不够,必须在智能体的“人设与回复逻辑”中写好对知识库的引用规则,才能彻底锁死幻觉。
在智能体提示词里加上下面这段约束逻辑:
你是一个专业的业务问答助手。回答问题时必须严格遵循以下规则:
1. 优先根据检索到的【知识库内容】进行回答。
2. 如果【知识库内容】中没有包含回答用户问题所需的信息,请直接回答:“根据现有资料,未能找到相关信息”,严禁自行编造或推测。
3. 回答内容必须客观、直接,不要添加未在资料中出现的步骤或结论。
给模型立下规矩后,模型在拿到知识库切片时就会把内容作为唯一依据,而不是随意调用它预训练库里的公共信息。
第五步:自测排查与迭代技巧
配置完成后,必须在扣子右侧的“预览与调试”窗口中进行极端测试。
测试时不要用文档里的原话提问,而是故意用口语化、包含同义词、甚至带错别字的方式去测。在每轮对话下方,点击“查看召回详情”或者调试日志。
如果出现回答偏差,按照这个顺序排查:
•情况 A:AI 回答找不到内容。
查看日志里是否有召回切片。如果没有,说明分块切得太长,或者最小匹配度设高了,把阈值下调 0.05 再试。
•情况 B:AI 拿到了切片,但回答依然答非所问。
查看切片内容。如果关键句被上一块截断了,说明分段标识符和重叠度配置有问题,需要重新切分文档。
•情况 C:AI 回答里夹杂了错误信息。
检查召回列表里是否混进了不相关的切片。如果混进去了,说明Top K 设大了或者最小匹配度设低了,把匹配度提高到 0.55 并缩小 Top K。
搭建知识库不是一次性工作。先用小体量的高频问答跑通这套切片与参数组合,确认召回稳定后,再批量导入大文档,效率会高很多。
原创文章,作者:七点互动,如若转载,请注明出处:https://ai.qidianhudong.com/aiyy/ai-assistant/3848.html