3Chat知识库功能使用手册-优化指南

概述

在您已经有业务知识的前提下,这篇文档致力于帮助您提升智能体调用知识库的表现,分为两大部分:

  • 第一部分,会带您重温知识库搭建全程,回顾关键细节,避免踩坑;

  • 第二部分,结合客户案例,会从常见问题入手,提供针对性解决方案。

流程注意事项

客户常见的知识类型有两类:

  • 问答形式:以问题-答案为一组,一个文件由多组组成。

  • 产品介绍形式:以单个产品为一组,每个产品会详细介绍参数、功能、注意事项等细则。

1.知识预处理

  • 问答形式:每一问答之间至少间隔两个空格,便于大模型对知识分段。

  • 产品介绍形式:分为两类

    • 产品简介类:

      • 不同组的产品信息之间,至少间隔两个空格;且产品信息采用统一格式,如:

        • 产品名称

        • 产品价格

        • 功能描述

        • 相关参数

        • 产品说明链接

    • 产品详细说明书类:

      • 建议您采用结构化、层级化的方式处理文件,如设置一级二级标题等,便于模型准确理解。
  • 其他:

    • 如果您的文件里包含无意义图标,建议删除/替换为文字,减少对大模型的干扰。

    • 如果您希望智能体在回答用户问题时发出图片,建议将知识转为doc、pdf、或者是markdown的格式,便于大模型智能理解。

2.知识分段

  • 分段前-知识上传

  • 注意:上传的知识在大小、格式上需要符合要求,否则上传失败

    • 单个文件的大小不能超过15MB

  • 分段时-分段策略选择

    • 按层级分段:适用于结构化的文件(具有一级、二级标题等)、excel、markdown格式的文件。

      • 也就是说,如果您采用这种方法,需要确保文件本身层级清晰,否则会出现分段混乱的情况。
    • 自定义分段:适用于层级单一的文件(如常见问答)。

  • 分段后

    • 查看切片详情

      • 如果知识里有图片,请注意检查图片是否和相关文字放在同一分段当中,如果无,需要手动调整。

3.知识检索策略

  • 默认参数:您可以先不配置,看默认配置下的检索效果:

    • 搜索策略:混合

    • 最大召回数量:5

    • 最小匹配度:0.40

    • 结果重排:开启(建议保持开启)

  • 如果出现检索问题,可根据具体情况做如下调整:

    • 调整搜索策略:

      1. 语义检索:基于语义理解来进行查询,理解查询背后的意思。

      2. 全文检索:结合关键词的词频、逆文档频率以及文档长度归一化等检索文档。

      3. 混合检索:结合语义和全文检索,兼顾理解和精确度。

    • 调整搜索参数

      1. 如果您想扩大知识的覆盖范围:

      调高召回条数

      调低最小匹配度

      二者组合

      1. 如果您想提高知识的精度:

      调高最小匹配度

      1. 如果您希望减少不相关的知识切片,可调低召回条数。

      2. 注意:覆盖范围与精度是此消彼长的关系,关键在于取得平衡,适配您的业务场景。

常见问题与解决方案

1.利用测试集,迅速定位问题

进入3ChatAgent-测试-测试集,您可以在这里测试常见的知识问答,并在右侧查看调用的知识分段(也叫知识切片),每个切片后有对应的匹配度,匹配度越高,说明这个切片与当前问题越相关。

您可以通过建立测试集,快速定位问题。

2.检索无效:没有找到相关知识

解决方案:

  1. 上传相关知识:若知识库中没有相关知识,您需要更新知识库,补充相关知识。

  1. 优化源文件内容与排版:检查并修正源文件,避免因格式问题导致关键内容在解析时丢失。推荐实践如下:
  • 确保各级标题层次分明,内容结构清晰。

  • 移除页面水印。

  • 避免使用结构复杂的表格,如包含合并或跨页单元格的表格。

  • 优先使用 Markdown 格式。对于 PDF/DOCX 等格式,建议先转换为 Markdown 再导入。

  1. 与提示词语言一致:若用户的提示词/问题更多使用外语(如英语),建议源文件内容也使用相应语言。

  2. 消除歧义:对于统一描述对象,建议将表述进行统一。例如,“ML”、“Machine Learning”和“机器学习”可以统一规范为“机器学习”。

3.检索无效:召回知识不相关

  • 典型问题:知识库中含多个结构内容相同/相近的文件,如产品A文件和产品B文件的内容都包含“功能概述”章节,只希望在产品A文件的“功能概述”中检索。

  • 解决方案:提高内容的区分度

    • 调整检索策略:提高最小匹配度

    • 提高内容区分度:在切片内容里强调这分别属于产品A、产品B。

4.检索质量低:切片不完整

导入知识库的文件会被解析和分段,以减少后续过程中的信息干扰,同时保持语义的完整性。分段方式选取不当会导致以下问题:

  • 文本分段过短:单个分段语义缺失,导致检索时无法匹配。

  • 文本分段过长:单个分段包含不相关主题,导致召回时返回无关信息。

  • 明显的语义截断:文本分段出现了强制性的语义截断,导致召回时缺失内容。

因此,在实际应用中,应尽量让文本切片包含的信息完整,同时避免包含过多的干扰信息。

解决方案:

  1. 优化源文件内容与排版:详见2.1-2

  2. 调整分段策略选择:详见1.2。

  3. 人工检查和修正文本切片内容

  • 进入知识库页面,点击“更多”里的“详情”,可查看、编辑知识分段。

  • 鼠标悬浮在分段上,右上角会出现编辑入口。

  • 从左到右依次为:编辑分段,向上增加空白分段,向下增加空白分段,删除分段。

5.模型没有严格遵循知识库生成回复

  • 典型问题:返回的结果中包含了大模型自身的通用知识,并未严格基于知识库。

  • 解决方案:进入3ChatAgent-指导界面,在【沟通风格】模块添加提示词:“遇到用户的问题,严格根据知识库检索工具和AI任务工具返回内容回答。”