微信扫码
添加专属顾问
我要投稿
扣子知识库的隐藏陷阱,智能体开发的实战经验分享。 核心内容: 1. 扣子知识库层级分段逻辑的误区及解决方案 2. 标签使用中遇到的问题和对智能体开发的影响 3. 实际案例分析,为智能体开发提供实用建议
这两天准备做两个给学员答疑用的「课代表」智能体,想着扣子API挺完善准备把它们搭在扣子上。
折腾一天,现在非常庆幸没提前付费,哪怕 9.9/月那个版本。
我尝试的第一个场景很简单:把课程视频使用通义听悟提炼出包括当节课程概要、关键问题、PPT摘录等内容的“逐字稿”传到扣子知识库里做个智能体。
当学员有问题时,这个「课代表」智能体可以简单回答,然后告诉学员这个知识点在哪节课有详细讲。
导出的md
文档长这样:
可以说相当完美了:
把资料导进知识库,选了层级分段、也勾选了检索切片保留层级信息
,最终结果直接不可用。
如果我对「检索切片保留层级信息」的理解没错的话,它应该是把文档的所有第 3 层(五级标题+正文)切片作为分段,当检索到当前切片时,应该返回当前片段
+上层标题
+上上层标题
。
但,实际上并不是这样的。
它实际的切片逻辑是:把你选择的层级数以下的内容作为分段,比如我上面文档包含一级标题、二级标题、五级标题和正文一共四级,如果我选择了 3 层,它会把所有五级标题(不含)以下的正文层级作为片段存在知识库中。
某个片段被检索命中后,召回的是当前片段和上面的五级标题,再之前的二级标题和一级标题不返回。
下图是检索结果,你会看到知识库输出的 output 里包含一段内容+最后一个单独的段落文本。
希望官方把文档写明白,懒得写可以直接用我上面的介绍。
给其他开发者闭坑。
这个还好,写个脚本自己处理一下也就好了。
分享最终的解决方案:
因为我需要智能体最终给出问题讲解课程所在的章节(也就是一级标题),所以直接使用 Python 写了脚本,最终处理后的文档长这样:
(自带分隔符、每个分段包含所有上层标题)
直接说坑:如果你的资料里包含<xml>标签,传到扣子知识库会被直接被「吃掉」,并且导致你自定义的分段分隔符失效。
看截图:我整理的<xml>标签直接被吃掉,选择的自定义分隔符$$
也直接不起作用了,整个分段直接不可用。
在分段预览里<xml>不显示可以理解是被前端给解析掉了,但是自定义分段标识符、以及标签内的文本也都不见了就很迷。
下面是 dify 处理的结果,虽然也有一个bug(分段后会吃掉第一个<
标签),但信息一个也没落下,预览只是“吃掉”了标签,信息没缺失。
就这 BUG,真的是越专业越没法弄……
这次使用<xml>标签来预处理资料,单纯是让 AI 写 Python 脚本时临时起意,不使用 XML 也完全可以实现。
偶然发现这么一个 BUG 也好,希望还没动工的开发者能提前闭坑。
当然更希望官方优化一下,或者至少在文档里加粗标注提示一下。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-08-13
coze空间悄悄更新,网页设计和图文设计能力让我惊喜到了!
2025-08-10
解构 Coze Studio工作流引擎:从可视化画布到可中断执行的源码之旅
2025-08-09
实战 Coze Studio 知识库使用
2025-08-09
我给Coze工作流和知识库调试提个建议
2025-08-08
Coze Studio 中 DDD 应用详解:从理论到实践的完整解析
2025-08-08
我给 Coze 喂了段Prompt,为团队复刻了一个顶级OKR教练(附提示词)
2025-08-06
Coze studio 搭建知识库
2025-08-01
n8n邪修指南:三步撬开Coze墙角,让它的优势成为你的便利
2025-07-29
2025-07-23
2025-07-30
2025-05-27
2025-05-29
2025-06-06
2025-05-27
2025-05-26
2025-07-27
2025-07-30