概述
元数据是用来描述数据的信息,简单来说就是“描述数据的数据”,通过提供数据的上下文,元数据能在知识库内快速查找和管理数据。
- 字段:元数据字段是用于描述文档特定属性的标识项,每个字段代表文档的某个特征或信息。例如”author””language”等。
- 字段值:字段值是该字段的具体信息或属性,例如”Jack””English”。
- 字段值计数:字段值计数是指在某条元数据字段中标记的字段值数量,包括重复项。例如,此处的”3”是字段值计数,指该字段中有 3 个独特的字段值。
- 值类型:值类型指字段值的类型,目前支持字符串(string)、数字(number)和时间(time)。
元数据管理
在元数据管理界面,用户可以创建、编辑和删除元数据字段。
注意:所有在此界面进行的更新均为全局更新,这意味着对元数据字段列表的任何更改都会影响整个知识库,包括所有文档中标记的元数据。
内置元数据
内置元数据是系统预定义的元数据。
- 启用方式:默认禁用,需要手动开启才能生效。
- 生成方式:启用后,由系统自动提取相关信息并生成字段值。
- 修改权限:一旦生成,无法修改字段与字段值。
- 应用范围:启用后,适用于已上传和新上传的所有文档。
- 预定义字段:
- document_name (string):文件名
- uploader (string):上传者
- upload_date (time):上传日期
- last_update_date (time):最后更新时间
- source (string):文件来源
自定义元数据
点击添加元数据 -> 选择字段类型 -> 输入字段名称 -> 点击保存。
注意:字段名仅支持小写字母、数字和下划线“_”字符,不支持空格和大写字母。
- 启用方式:由用户根据需求自由添加。
- 生成方式:用户手动添加,完全由用户自定义。
- 修改权限:可以删除或编辑字段名称,也可以修改字段值。
- 应用范围:添加元数据字段后,字段会储存在知识库的元数据列表中/需要手动设置,才能将该字段应用于具体文档。
- 预定义字段:在初始状态下,知识库无自定义元数据字段,需要用户手动添加。
修改元数据字段
光标移动到字段上,点击【编辑】图标,可以对字段进行重命名。修改并保存后,该字段将在知识库中的所有相关文档中同步更新。
注意:不支持修改字段值类型
删除元数据字段
点击单条元数据字段右侧的删除按钮,可以删除该字段。
注意:如果删除单条字段,该字段及该字段下包含的字段值将从知识库的所有文档中删除。
编辑单个文档元数据
- 进入文档,点击【开始标注】按钮
- 进入文档元数据编辑模式,点击添加元数据
在文档页面新建的元数据字段,将自动同步至知识库字段列表中。
元数据批量管理
勾选多个文档,点击操作选项中的 元数据,弹出 编辑元数据 弹窗。
- 应用于所有选定文档:勾选后,编辑模式中的改动会对所有选中的文档生效。原本没有该字段的文档,会自动添加该字段。如果不勾选,编辑模式中的改动仅对原本已有该元数据字段的文档生效,其他文档不会受到影响。
新建元数据字段
为文档添加元数据,在字段值框内填写该字段相应的字段值。
元数据过滤
聊天流/工作流
在聊天流/工作流
的知识检索
节点中,用户可以使用元数据筛选功能精确检索文档。该功能有助于根据文档的元数据字段(如标签、类别或访问权限)优化检索结果。
- 选择筛选模式
- 禁用模式(默认):禁用 元数据筛选 功能,不配置任何筛选条件。
- 自动模式:系统会根据传输给该 知识检索 节点的 查询变量 自动配置筛选条件,适用于简单的筛选需求。
- 手动模式:用户可以手动配置筛选条件,自由设置筛选规则,适用于复杂的筛选需求。
注意:启用自动模式后,仍需要在模型栏中选择合适的大模型以执行文档检索任务。
- 若选择手动模式,参照以下步骤配置筛选条件:
- 点击条件按钮,弹出配置框
点击配置框中的添加条件按钮,可以从下拉列表中选择一个已选中知识库内的元数据字段,添加到筛选条件列表中。
如果你同时选择了多个知识库,下拉列表只会显示这些知识库共有的元数据字段。
可以在 搜索元数据 搜索框中搜索你需要的字段,添加到筛选条件列表中。
- 筛选条件说明与示例
字段类型 | 筛选条件 | 示例说明 |
---|---|---|
字符串 | is | 字段的值必须与你输入的值完全匹配。例如,如果你设置筛选条件为 is “Published”,则只会返回标记为 “Published” 的文档。 |
is not | 字段的值不能与你输入的值匹配。例如,如果你设置筛选条件为 is not “Draft”,则会返回所有未标记为 “Draft” 的文档。 | |
is empty | 字段的值为空。如果你配置了此条件,可以检索到未标记该字符串的文档。 | |
is not empty | 字段的值不为空。如果你配置了此条件,可以检索到标记了该字符串的文档。 | |
contains | 字段的值包含你输入的文本。例如,如果你设置筛选条件为 contains “Report”,则会返回所有包含”Report”的文档,如”Monthly Report” 或 “Annual Report”。 | |
not contains | 字段的值不包含你输入的文本。例如,如果你设置筛选条件为 not contains “Draft”,则会返回所有不包含 “Draft” 的文档。 | |
starts with | 字段的值以你输入的文本开头。例如,如果你设置筛选条件为 starts with “Doc”,则会返回所有以”Doc”开头的文档,如 “Doc1”、“Document”等。 | |
ends with | 字段的值以你输入的文本结尾。例如,如果你设置筛选条件为 ends with “2024”,则会返回所有以”2024”结尾的文档,如”Report 2024”、“Summary 2024”等。 | |
数字 | = | 字段的值必须等于你输入的数字。例如,= 10 会匹配所有数字标记为 10 的文档。 |
≠ | 字段的值不能等于你输入的数字。例如,≠ 5 会返回所有数字未标记为 5 的文档。 | |
> | 字段的值必须大于你输入的数字。例如,100 会返回所有数字标记为大于 100 的文档。 | |
< | 字段的值必须小于你输入的数字。例如,< 50 会返回所有数字标记为小于 50 的文档。 | |
≥ | 字段的值必须大于或等于你输入的数字。例如,≥ 20 会返回所有数字标记为大于或等于 20 的文档。 | |
≤ | 字段的值必须小于或等于你输入的数字。例如,≤ 200 会返回所有数字标记为小于或等于 200 的文档。 | |
is empty | 字段未设置值。例如,is empty 会返回所有该字段未标记数字的文档。 | |
is not empty | 字段已设置值。例如,is not empty 会返回所有该字段已标记数字的文档。 | |
时间 | is | 字段的时间值必须与你选择的时间完全匹配。例如,is “2024-01-01” 只会返回标记为 2024 年 1 月 1 日的文档。 |
before | 字段的时间值必须早于你选择的时间。例如,before “2024-01-01” 会返回所有标记为 2024 年 1 月 1 日之前的文档。 | |
after | 字段的时间值必须晚于你选择的时间。例如,after “2024-01-01” 会返回所有标记为 2024 年 1 月 1 日之后的文档。 | |
is empty | 字段的时间值为空。如果你配置了此条件,可以检索到未标记该时间信息的文档。 | |
is not empty | 字段的时间值不为空。如果你配置了此条件,可以检索到标记了该时间信息的文档。 |
- 选择并添加元数据筛选值
- 变量:选择变量,并选择该聊天流/工作流中需要用于筛选文档的变量。
- 常量:选择常量,并手动输入你需要的常量值。
聊天助手
在聊天助手中,元数据筛选功能位于界面左下方的上下文
板块下方,配置方法与聊天流/工作流中的操作一致。