知识库介绍
知识库是智能体输出回答的数据依据,适合有专业数据积累的开发者,以及对输出结果有准确性、专业性要求的开发者。
在知识库模块上传自己的数据,大模型与用户交互过程中,根据知识库中检索到的相似内容、大模型润色后生成结果,可以有效限定模型的生成范围。
文心智能体平台充分尊重和保障您专有的数据安全,不会使用提交的数据来训练或改进通用大模型,暂时未开放专属模型训练能力。
1.使用场景
- 零代码开发智能体时,引用知识库,限定检索范围;
- 低代码开发智能体时,引用知识库;
- 引用知识库,快捷开发数据插件。
2.知识库入口
入口1:登录平台后,点击左导航,即可进入知识库模块。
入口2:开发零代码智能体,在创建智能体页面,点击 “新建知识库” 即可添加数据;
入口3:低代码开发智能体,在可视化编排页面,拖入知识库套件,点击“新建知识库”即可进入知识库模块;
入口4:开发数据插件,在编辑插件页面,点击 “新建知识库” 即可进入知识库模块。
3.知识库创建
第一步:上传数据。
上传知识库数据有 3 种方式,①上传本地文件,②提交网页地址,③百度网盘导入。1 个账号可以创建 100 个知识库,全部知识库的总容量不能超过 1G,1 个知识库可以添加 100 个文件或网址,总容量不能超过 200M。
①本地文件
- 当前仅支持文本和图片类型的文件,包括 txt、md、docx、pdf、xlsx、csv、png、jpg、jpeg 、m4a、mp3、mp4、mov、mpeg格式,仅支持视频上传,暂不支持视频内容识别。
数据类型 | 拓展名 | 上传说明 |
---|---|---|
文本 | text | 文件大小不超过 50M |
md | 文件大小不超过 50M | |
docx | 文件大小不超过 50M | |
暂不支持图文,文件中的图片会被过滤,仅保留文本 | ||
文件大小不超过 50M | ||
暂不支持图文,文件中的图片会被过滤,仅保留文本 | ||
可以支持扫描文档,扫描文档页数不超过 50 页 | ||
xlsx | 文件大小不超过 50M | |
数据类文件推荐上传 xlsx 格式,需注意为了保证 xlsx 格式文件分割后,模型也能理解数据含义,进行更加精准的数据查询与统计,上传的 xlsx 需包含表头 | ||
csv | 文件大小不超过 50M | |
图片 | png | 30px ≤ 边长 ≤ 4096px,比例 3:1 以内,大小不能超过 20M |
1 个知识库最多可以上传 500 张图片 | ||
图片中包含实体物品,识别结果更准确 | ||
jpg | 30px ≤ 边长 ≤ 4096px,比例 3:1 以内,大小不能超过 20M | |
1 个知识库集最多可以上传 500 张图片 | ||
图片中包含实体物品,识别结果更准确 | ||
jpeg | 30px ≤ 边长 ≤ 4096px,比例 3:1 以内,大小不能超过 20M | |
1 个知识库最多可以上传 500 张图片 | ||
图片中包含实体物品,识别结果更准确 | ||
音频 | m4a | 文件大小不超过 50M |
通过智能识别,将音频转为文本 | ||
mp3 | 文件大小不超过 50M | |
通过智能识别,将音频转为文本 | ||
视频 | mp4 | 文件大小不超过 200M |
通过智能识别,将视频转为文本 | ||
mov | 文件大小不超过 200M | |
通过智能识别,将视频转为文本 | ||
mpeg | 文件大小不超过 200M | |
通过智能识别,将视频转为文本 |
②网址提交
- 输入网页地址后,点击"识别"按钮,识别网页中的文本数据;仅支持识别 公开访问 且 百度已收录 的网页地址,如需登录后访问,或未授权百度收录的网址将会识别失败。
- 可按照网页更新频率,设置自动识别更新知识库的频率。
③百度网盘导入
- 首次使用,需要授权百度网盘账号数据,授权成功后即可选择网盘中的文件。
- 网盘导入时效受网盘文件下载速度限制,如时间较长可选择后台处理。
第二步:数据处理。
由于大模型在现阶段对输入和输出字符有严格限制,而知识库也是输入内容的一种,同样需要遵循大模型的输入字符数限制,因此文本分段的目的是将长文本切割成短段落,剔除无关信息,在保证输入字符不超过限制的前提下,输入最相关的内容。为了让大模型更准确的理解图片内容,会先调用模型对图片内容进行智能标注。当前可输入给大模型 2~3 个知识库段落,需尽可能地将相关内容分在 3 个段落以内。
- 文本分段: 平台提供了「默认分段」和「自定义分段」两种方式,支持开发者通过文字、标点符号、空格、回车等方式,将长文本切割成多段文本内容,让模型更加准确的理解文本内容。分段处理时,保证最大分段字符的前提下,按照设置的分段方式进行切割。
小说、客服及其他场景的问答内容、数据等内容,如何设置分段详见如何设置文件分段(内附案例)
- 表格设置: 表格文件的表头将作为大模型理解表格内容的关键信息,默认将表格的第1行设置为表头,可支持按照实际的表格结构自定义标记表头。
- 多媒体设置: 默认调用大模型对图片、音频内容进行智能识别,并生成文本标注,辅助检索环节对图、音频理解以及更准确的检索召回。如生成标注信息有误,可手动修改错误内容。视频识别能力即将上线,敬请关注!
4.知识库使用
方式一:零代码开发智能体,在创建智能体页面,选择知识库。可以观察知识库调用情况,通过调试检索参数,优化知识库检索召回效果。详见:知识库调用常见QA
方式二:低代码开发智能体,在可视化编排页面,拖拽知识库套件,即可选择已经创建的知识库。
方式三:开发数据插件,选择已经创建的知识库。
如何设置文件分段(内附案例)
1.什么时候需要修改文件分段
- 结构化数据
- 智能体或插件输出结果成功命中知识库,但包含过多的无关信息
2.如何设置文件分段
数据分段处理的目的是将长文本切割成短段落,尽可能的剔除掉检索内容中的无关信息,以便模型更有效的处理和理解。
文心智能体平台提供了默认分段和自定义分段。对于不同类型的文件,需要切换不同的分段配置。
- 最大分段字符:长文本切割后的最大段落字符数,而不是每段文本的字符数,可以填写 50~512 中的任意数字;
- 段落重叠字符:每个分段开头和前一个分段末尾最大可重复的字符数,可以输入 0~500 中的任意数字,注意段落重叠字符数需小于最大段落字符数,尽可能的保留切割分段后的原语义,避免语句分割导致表达不完整,帮助模型理解更准确完整;
- 分段方式:长文本切割的分段符号,可以选择常用分段符,也可以输入任意符号,在切割文本时,将按照分段符号排序选择切割位置。
注意:单个知识库的分段数不能超过 700w,请合理设置分段。
3.分段案例
案例1:长文本内容分段案例
适用范围:案例适用于小说、电子书刊、课文、公司介绍、论文、专利文件等,需要模型结合上下文理解语义的长文本内容。
示例文件:装在套子里的人.docx
分段思路:
推荐使用默认分段,具体的分段结果可下载示例文件创建知识库后查看
• 最大段落字符:长文本内容段落一般比较长,段落和段落之间也有一些承上启下的关系,因此最大段落字符可以设置的大一点,尽量保证段落中包含完整的语义,模型理解才能更佳准确。
• 段落重叠字符:当段落需要上下文理解时,段落重叠字符可以按需填写,尽量让上下文之间的相关内容展示在一个段落中。
• 分段方式:默认分段的分段符号基本包含大部分文本分段方式,如分段结果不合适,可查看文档适合切割位置的符号,选择或输入添加分段符号,将按照分段符号选择顺序进行切割。
后续优化思路:尽量保证相同语义的文本切割在一个段落,因为段落字符数限制无法分成一段的,可以通过段落重叠字符进行段落之间的关联,让模型在检索时,可以增加被同时检索到的概率,综合理解输出结果。
模型检索结果:
模型检索输出:
案例2:结构性内容分段案例
适用范围:案例适用于客服聊天记录、销售话术等场景的一问一答、文本表格等有鲜明的结构特点的内容,需要模型理解结构内的内容语义。
示例文件:文心智能体平台常见问答.docx
分段思路:
推荐使用自定义分段,要尽量保证同一结构内的文本切割在一个段落,具体的分段结果可下载示例文件创建知识库后查看
• 最大段落字符:先看一下原文结构中,每个结构内的字符数平均是多少,就将最大段落字符数设置为多少左右,大概选几个有代表性的段落计算平均字符数即可。比如示例文件,是一问一答结构,共有 2 个段落,平均字符数是 340 个字符,最大段落字符数设置就为 340 个字符。
• 段落重叠字符:分段后的段落之间不需要上下文关联理解,因此段落重叠字符设置为 0。若因为段落字符数限制无法分成一段的,可以通过段落重叠字符进行段落之间的关联,让模型在检索时,可以增加被同时检索到的概率,综合理解输出结果。
• 分段方式:文档中比较鲜明的结构时,每组问答都有标记"问"、"答",而我们希望可以按照一问一答的结构进行分段,则可以将"问"作为分段符号,且在"问"符号前进行分段,就可以得到一问一答结构的分段结果了。
模型检索结果:
模型检索输出:
案例3:Excel 数据类内容分段案例
适用范围:案例适用于具体数据查询、数据统计类的 Excel 表格数据类,行与行之间的数据,除统计外没有其他关联性的内容。
示例文件:2023年电影票房数据.xlsx
分段思路:
如需统计分析,则尽可能的将需要一起计算的数据分到 1~3 个分段中(当前模型限制知识库最多可输出 2000 字符),尽量保证输入给模型的原始数据的完整性,最终的统计结果正确率才会高;
推荐使用自定义分段,尽量保证输入给模型的原始数据的完整性,最终的统计结果正确率才会高具体的分段结果可下载示例文件创建知识库后查看
• 最大段落字符:为了保证检索段落的完整性,需要将最大段落字符数设置到最大限制的 512 个字符。
• 段落重叠字符:为了减少重叠字符占用段落的字符数容量,段落重叠字符需要设置为 0。
• 分段方式:表格类型的数据可以直接按行切割,分段方式选择"换行"。
后续优化分段思路:因模型限制知识库最多可输出 2000 字符,则尽可能的将需要计算的数据分到 1~3 个分段中。较大量级的数据统计,建议上传的 Excel 表格不要超过 2 列,才能保证输入给模型的 3 个段落中,已包含统计所需的所有数据。
模型检索结果:
润色输出结果:
注意:
- 表头对分段结果的检索非常重要,是模型理解数据的关键信息,因此数据表头需要具有明确的语义,尽量不要使用模型无法理解的生僻词汇。
- 对于有统计分析需要的插件或者智能体,需要在插件或者智能体的指令提示中,说明详细的计算步骤,可以提升模型统计结果的准确性。
知识库调用常见QA
Q1: 在预览知识库调用效果时,提示"系统异常"、"服务异常",应该怎么处理?
A: 很抱歉影响您的使用体验,"系统异常"、"服务异常"只是偶发情况,您可以在提示后尝试刷新、退出当前页面重新访问、清除缓存等方式重试,即可恢复使用了。
Q2: 我的知识库没有被召回怎么办?
A: 可能是知识库中没有与问题相关的内容,可以先去知识库管理页面检查是否有相关内容,没有相关内容可以根据问题补充丰富知识库,已有相关内容但没有被召回,可以转 Q3。
Q3: 我的知识库中有相关内容,但是一直提示"没有召回相关的知识库",怎么才能召回我的知识库?
A: 可以通过以下方式解决:
首先可以进入知识库管理页面,检查期望召回的内容,是否因文本分段、图片识别、音频识别导致内容存在语句不通顺、语序不连贯等问题,导致模型无法判断是否与用户问题有相关性,如果存在语义问题,可以先编辑段落内容优化语义问题;
其次可以通过知识库的召回配置功能,降低【检索相关度阈值】来调试召回效果。注意:【检索相关度阈值】将对当前智能体全局生效,需综合大部分需求场景做配置,如仅需优化个例问题,可以通过【反馈】提交理想答案的方式,修正模型生成答案。
A: 有 3 种方式可以尝试解决这个问题:
1.修改召回段落内容,删除相关描述,再重新预览是否召回;
2.调试知识库的召回配置,当召回不相关结果在召回结果中,排在后几位,可以尝试提高【检索相关度阈值】,降低【最大召回段落数】、【最大段落字符数】;
3.如仅需优化个例问题,可以通过【反馈】提交理想答案的方式,修正模型生成答案。
A: 有 2 种方式可以尝试解决这个问题:
1.调试知识库的召回配置,可以尝试降低【检索相关度阈值】,提高【最大召回段落数】、【最大段落字符数】;
2.如仅需优化个例问题,可以通过【反馈】提交理想答案的方式,修正模型生成答案。
A: 出现这个问题,是因为模型在润色答案时,过滤掉了知识库召回的结果,解决这个问题,可以尝试在智能体的人物设定中,补充知识库的应用要求。例如:
• 模板1:当用户提问时,必须检索知识库,未检索到结果时输出"很抱歉,这个问题我也不太了解,我们可以聊点其他的问题吧~ "。
• 模板2:当用户提问时,优先使用检索知识库中召回的结果生成答案。