检索组件
一个从指定数据集中检索信息的组件。
场景
在大多数基于检索和生成(RAG)场景中,检索组件是必不可少的,在将内容发送给大语言模型(LLM)进行生成之前需要提取指定的知识库中的信息。自v0.20.3版本起,检索组件可以作为工作流中的一个组件或作为一个代理工具,允许代理控制其调用和搜索查询。
配置
点击一个检索组件以打开其配置窗口。
查询变量
必填
选择用于检索的查询源。
检索组件依赖于查询变量来指定其数据输入(即查询)。在下拉列表中,所有在检索组件之前定义的全局变量都可以使用。
知识库
选择要从中检索数据的知识库。
- 如果未选择知识库,则意味着与代理进行的对话不会基于任何知识库,在这种情况下,请确保“空响应”字段留空以避免错误。
- 如果选择了多个知识库,必须确保您所选的知识库(数据集)使用相同的嵌入模型;否则会出现错误信息。
相似度阈值
RAGFlow在检索时结合了加权关键词相似度和加权向量余弦相似度。此参数设置用户查询与存储在数据集中段落之间的相似度阈值,任何低于该阈值的段落将被排除在外。
默认为0.2。
关键词相似度权重
此参数设置了组合相似度评分中的关键词相似度权重。两个权重之和必 须等于1.0,默认值为0.7,这意味着向量相似度在组合搜索中的权重为 1 - 0.7 = 0.3。
Top N
此参数选择从检索到的段落中选取“Top N”个,并将其提供给大语言模型(LLM)进行处理。
默认值为8。
排序模型
可选
如果选择了排序模型,将使用加权关键词相似度和加权重新排序得分来进行检索。
警告
使用排序模型会显著增加系统的响应时间。
空响应
- 如果查询未从知识库中检索到任何结果,请为此设置一个响应;或
- 保留此字段为空,以便在没有找到匹配项时允许聊天模型进行即兴处理。
警告
如果您不指定知识库,则必须留空此字段;否则会引发错误。
多语言搜索
选择一种或多语言进行跨语言搜索。如果未选择任何语言,则系统将使用原始查询进行搜索。
使用知识图谱
是否在检索期间使用指定的知识库中的知识图谱,用于多跳问答。当启用时,这将涉及实体、关系和社区报告片段的迭代搜索,大大增加了检索时间。
输出
检索组件输出的全局变量名,其他工作流组件可以引用此变量。