创建语文知识库
场景介绍
知识库是一个组织、存储及管理知识的系统,包括文档、图表、表格等多种形式的信息的分类、整理和归纳,可以帮助用户组织和管理大量的信息,平台为用户提供了创建并管理知识库的能力,且创建的知识库可在工作流和Agent中调用。
对于需要处理大量问答知识、对检索效率有较高要求的场景,通过创建知识库组织和管理信息,可以提升信息获取效率。本实践以创建语文知识库为例进行介绍,主要完成以下设置:
- 上传语文知识库.word文档,对文档进行层级分段切分。切分出来的切片效果如图1所示。
- 对切片内容进行提取,用于向量化检索。
- 对问题做向量化检索,附加返回答案内容。
- 使用语义检索、关键字检索、混合检索等方式检索内容。
准备工作
准备需要上传的知识素材,并进行预处理,以便达到更好的拆分效果。
- 本实践使用的语文知识库请参见语文知识库.word,仅供参考。
- 您也可自行准备知识素材,并参考表1的拆分配置规则对素材进行预处理。确保素材样式结构逻辑清晰,以便提升拆分效果。
创建知识库
- 登录Versatile智能体平台,在左侧导航栏“个人空间”区域,选择进入所需空间。
如果已选择团队空间,界面显示为实际的团队空间名称,而非“个人空间”。
图2 选择团队空间 - 在左侧导航栏中选择“开发中心 > 知识库”,在“知识库”页签,单击左上角的“新建知识库”。
- 在“选择创建类型”弹框中选择“默认”,单击“确定”。
- 在“创建知识库”弹框中,填写参数配置信息,如表1所示,填写完成后单击“确定”。
图3 创建语文知识库
表1 创建语文知识库 区域
参数
示例
说明
基本信息
知识库图标
知识库LOGO。单击当前显示的知识库图标,在弹出的对话框中,选择要上传的新图标文件。
支持jpg、jpeg、png及gif格式,大小不大于200KB。
知识库名称
语文知识库
用于标识知识库。它是用户在创建知识库时必须填写的字段。
命名规则:可以包含字母、数字、中文、下划线 _、连字符 -,且必须以字母、数字或中文开头。
描述
语文知识库
用于对知识库内容和用途的简要说明。它提供了关于知识库的详细信息,帮助用户了解知识库的内容和使用场景。
命名规则:长度不大于100个字符。
模型配置
向量模型
embedding-zh
向量模型是一种将文本、图像等非结构化数据转换为数值向量的模型。例如,在文本处理阶段,用于对文本文档进行切片,转换成向量化表示;在知识检索阶段,根据用户输入的信息对切片进行召回。
向量模型用于在海量的知识库中,快速识别和用户输入信息语义相近的词或句子,进行信息的初步筛选,解决“大海捞针”的效率问题。
精排模型
rerank-zh
精排模型是一种用于对检索结构进行精细排序的模型。针对用户输入的信息,对向量模型召回的切片进行从高到低的相关度排序,把相关度最高的前几个信息(例如Top 10)呈现给用户。
精排模型用于进一步提升系统搜索的相关性精度。
解析配置
OCR增强
勾选
开启后,即可调用OCR服务进行智能文档识别,如表格解析或扫描文件等。
页眉页脚解析
去勾选
未开启,解析结果中不包含页眉页脚。
开启后,解析结果中包含页眉页脚。
目录页解析
勾选
未开启,解析结果中不包含目录页。
开启后,解析结果中包含目录页。
图片解析
勾选,选择“仅保留原图”
不开启,则在文档中遇到图片默认跳过,不处理图片。
开启后,根据需要选择“提取图片文本”或者“仅保留原图”。
拆分配置
拆分设置
层级分段
根据文档结构和内容进行如下设置:
- 层级解析模型:自动解析。
- 标题层级深度:2(文档标题层级深度)。
- 标题保存方式:保存多标题组合。
- 跨标题合并:关闭。
- 分段标识符:默认全选。
- 分段预计长度:500(分段内容包含题目+答案)。
- 自动分段:按照系统默认预设的规则和分隔符切分。
- 长度分段:基于内容的长度来决定如何进行分段。
- 层级分段:根据内容的结构层次来进行分段。
- 层级解析模型:
- 自动解析:自动识别和解析具有层级结构的数据或信息。
- 规则解析:支持添加自定义层级规则。
- 标题层级深度:指设置的切分标题级别,例如,文本包含最多5级标题,选择的标题层级深度为3,则会分别将所有3级标题下的内容合并成文本块,文本块作为一个整体执行后续切分操作。输入值必须在1到10之间。
- 标题保存方式:指标题信息在切片中的保存形式,影响检索结果的展示逻辑和索引构建方式。
- 保存多标题组合:多级标题用特定符号组合:1级标题-2级标题-3级标题-…-文本
- 保存最后一级标题:仅组合最后一级标题:最后一级标题-文本
- 跨标题合并:根据需求开启或者关闭。
- 分段标识符:分段方式为遇到所选符号即截断,符号之间没有优先级,最终分割后合并到预计最大长度。自定义分段中如果未命中分段标识符,分段将会失败。
- 中文句号。
- 英文句号.
- 中文感叹号!
- 英文感叹号!
- 中文问号?
- 英文问号?
- 空格
- 中文逗号,
- 英文逗号,
- 分段预计长度:分段的最大长度。文档的正文如果大于设定的最大长度,则截取最大长度的片段为新文档,随后回溯分段重叠字符,继续向后检查,直到文档结束。
默认值:500
- 层级解析模型:
- 配置完成后,单击“确定”,完成知识库创建。
上传知识文档
- 在“知识库”页签,单击知识库列表中的“语文知识库”名称,进入该知识库详情页面。
- 在知识库详情页面选择“知识文档”页签,单击“上传”进入文档上传页面。
- 单击“点此上传”,在弹出的对话框中,选择要上传的文档。
图4 上传文档
- 单击“确定”,文件列表中有对应文件,即完成文件上传。
待文件状态为“成功”,即完成文件解析。
图5 语文知识库
查看文档切片
- 在知识库详情页面选择“知识文档”页签,单击“状态”是“成功”的文件名称,进入到文档详情页面。
- 左侧是文档基本信息和拆分配置信息,右侧是文档切片信息,如图6所示。
命中测试
- 在知识库列表中,单击语文知识库操作列的“命中测试”。
- 在页面左侧文本框中输入问题,并单击“命中测试”。
命中结果可根据右上方的分值查看结果,分值越高,命中结果越精确。图7 命中测试
- 在页面右侧将根据不同的检索方式(语义检索、关键词检索、混合检索、FAQ检索),展示多条匹配的内容,并按照匹配分值降序排列。
- 用户可以根据分值与匹配到的信息数量来评估当前知识库是否满足需求。
如果满足需求,则知识库接入完成,您可以在智能体或工作流中使用该知识库。
相关文档
配置本地知识库的详细信息,请参考创建本地知识库。