在dify中提升召回率需启用查询扩展功能:先在知识库设置中开启query expansion,系统自动用llm生成2~4个语义一致的扩展查询;支持白名单规则手动校准,优先级高于自动扩展;须验证日志中的expanded_queries并调整min_query_length等阈值确保精准触发。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Dify中提升用户查询的召回率,关键一步是让简短、口语化或术语不标准的Query能自动匹配到知识库中更规范、更完整的表述。近义词扩展不是简单替换,而是生成语义一致但表达多样的查询变体,交由混合检索并行执行。
启用内置查询扩展功能
第一步:登录Dify控制台,进入目标应用的「数据集」模块 → 选择对应知识库 → 点击右上角「设置」图标 → 打开「检索设置」面板。
第二步:在「高级配置」区域找到「查询扩展(Query Expansion)」开关,将其设为「启用」。
这一步操作起来很简单,直接滑动开关即可生效。该功能依赖底层LLM实时解析原始Query,生成2~4个语义等价但措辞不同的扩展查询,例如将“怎么改密码”扩展为“重置账户密码步骤”“忘记登录密码如何处理”“修改个人账号密码流程”。【必须确保知识库已成功完成索引构建,否则扩展后的查询无法命中任何文档】
手动配置扩展规则白名单
当默认LLM扩展结果出现偏差(如把“发票作废”误扩为“发票销毁流程”),需人工干预校准:
方法一:在「检索设置」→「查询扩展规则」中点击「添加规则」→ 输入原始Query(如“绑定新手机号”)→ 在右侧输入经业务确认的合规扩展项(如“更换登录手机号”“更新账户绑定号码”“修改手机验证方式”)→ 保存。
Dify 3.9.2更新重点增强系统安全性,引入 Chainguard 安全基础镜像并同步社区版 CVE 修复,同时优化 OpenSearch 向量存储兼容性、插件参数传输机制及 Helm 部署配置。新增工作流模型节点缓存能力,可减少重复凭证查询,显著提升复杂工作流初始化速度,为企业级 AI 应用提供更稳定、高效的运行体验。
方法二:通过API批量注入规则,发送PATCH请求至/api/v1/datasets/{dataset_id}/retrieval-settings,body中包含{"query_expansion_rules": [{"original": "修改邮箱", "expanded": ["更换注册邮箱", "更新账户电子邮箱"]}]}。
注意:白名单规则优先级高于LLM自动扩展,一旦命中即跳过模型生成环节。每条规则最多支持5个扩展项,超出部分会被截断。
验证扩展效果并调整触发阈值
第一步:在Dify调试面板中输入测试Query(如“查物流”),点击「执行检索」旁的「查看详细日志」按钮。
第二步:在日志面板中定位query_expansion字段,确认返回的expanded_queries数组内容是否符合预期。若为空,说明未触发扩展——此时需检查Query长度是否低于3字符(默认阈值),或是否命中停用词列表(如“的”“了”“吗”)。
第三步:如需放宽触发条件,在「检索设置」→「高级参数」中将min_query_length从默认3调至2,并清除stop_words中与业务强相关的词(例如客服场景中“嘛”“哈”属于有效语气词,不应过滤)。
这一步不能跳过:未验证就上线可能导致扩展泛滥,比如把“退款”扩出“退货+赔偿+投诉”等无关意图,反而稀释关键词匹配强度。










