Dify Docs home page
简体中文
Search...
⌘K
Ask AI
Blog
Dify
Dify
Search...
Navigation
节点说明
知识检索
使用文档
插件开发
访问 API
资源
入门
欢迎使用 Dify
云服务
Dify 社区版
Dify Premium
Dify 教育版
访问 API
手册
接入大模型
构建应用
工作流
工作流
关键概念
变量
节点说明
开始
LLM
知识检索
问题分类
条件分支
代码执行
模板转换
文档提取器
列表操作
变量聚合
变量赋值
迭代
参数提取
HTTP 请求
Agent
工具
结束
直接回复
循环
快捷键
编排节点
文件上传
异常处理
附加功能
预览与调试
应用发布
结构化输出
变更公告:图片上传被替换为文件上传
知识库
工具
发布
标注
监测
扩展
协同
管理
动手实验室
简介
初级
中级
社区
寻求支持
成为贡献者
为 Dify 文档做出贡献
插件
功能简介
快速开始
插件管理
接口定义
最佳实践
发布插件
常见问题
研发
DifySandbox
模型接入
迁移
阅读更多
应用案例
扩展阅读
常见问题
政策
开源许可
用户协议
On this page
定义
应用场景
配置指引
节点说明
知识检索
Copy page
定义
从知识库中检索与用户问题相关的文本内容,可作为下游 LLM 节点的上下文来使用。
应用场景
常见情景:构建基于外部数据/知识的 AI 问答系统(RAG)。了解更多关于 RAG 的
基本概念
。
下图为一个最基础的知识库问答应用示例,该流程的执行逻辑为:知识库检索作为 LLM 节点的前置步骤,在用户问题传递至 LLM 节点之前,先在知识检索节点内将匹配用户问题最相关的文本内容并召回,随后在 LLM 节点内将用户问题与检索到的上下文一同作为输入,让 LLM 根据检索内容来回复问题。
配置指引
配置流程:
选择查询变量。查询变量通常代表用户输入的问题,该变量可以作为输入项并检索知识库中的相关文本分段。在常见的对话类应用中一般将开始节点的
sys.query
作为查询变量,知识库所能接受的最大查询内容为 200 字符;
选择需要查询的知识库,可选知识库需要在 Dify 知识库内预先
创建
;
在 元数据筛选 板块中配置元数据的筛选条件,使用元数据功能筛选知识库内的文档。详情请参阅
在应用内集成知识库
中的
使用元数据筛选知识
章节。
指定
召回模式
。自 9 月 1 日后,知识库的召回模式将自动切换为多路召回,不再建议使用 N 选 1 召回模式;
连接并配置下游节点,一般为 LLM 节点;
输出变量
知识检索的输出变量
result
为从知识库中检索到的相关文本分段。其变量数据结构中包含了分段内容、标题、链接、图标、元数据信息。
配置下游节点
在常见的对话类应用中,知识库检索的下游节点一般为 LLM 节点,知识检索的
输出变量
result
需要配置在 LLM 节点中的
上下文变量
内关联赋值。关联后你可以在提示词的合适位置插入
上下文变量
。
上下文变量是 LLM 节点内定义的特殊变量类型,用于在提示词内插入外部检索的文本内容。
当用户提问时,若在知识检索中召回了相关文本,文本内容会作为上下文变量中的值填入提示词,提供 LLM 回复问题;若未在知识库检索中召回相关的文本,上下文变量值为空,LLM 则会直接回复用户问题。
该变量除了可以作为 LLM 回复问题时的提示词上下文作为外部知识参考引用,另外由于其数据结构中包含了分段引用信息,同时可以支持应用端的
引用与归属
功能。
编辑此页面
|
提交问题
Was this page helpful?
Yes
No
LLM
问题分类
Assistant
Responses are generated using AI and may contain mistakes.