需配置双embedding模型协同工作:中文用bge-large-zh、英文用text-embedding-ada-002,通过语言自动识别与混合检索加权融合,实现中英文文档高精度跨语言检索。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在Dify中让中文和英文文档都获得高精度检索结果,不能只靠一个Embedding模型硬扛——中文bge-large-zh对英文词义建模弱,text-embedding-ada-002又对中文长句语义切分不准,必须让两个模型各司其职、协同输出。
第一步:配置双Embedding模型并验证可用性
进入「设置」→「模型供应商管理」→「TEXT EMBEDDING」标签页,点击「添加模型」两次,分别配置中文与英文专用模型。
中文模型选【bge-large-zh】:填写模型名称(如“zh-embed”)、基础URL(本地部署填http://localhost:8000/v1)、API密钥(若需),保存后务必点击「测试连接」——【只有返回维度值1024且状态为“连接成功”,才算真正就绪】。
英文模型选【text-embedding-ada-002】:模型名称设为“en-embed”,服务类型选OpenAI兼容接口,填入对应API密钥与Base URL(如https://api.openai.com/v1),同样执行「测试连接」——【返回维度1536且无超时错误,才可进入下一步】。
注意:两个模型必须在同一个Dify实例中完成注册,否则后续无法在知识库中联动调用。
第二步:创建支持多语言路由的知识库
点击左侧导航栏「知识库」→「创建知识库」,输入名称(如“global-tech-docs”)并确认。
上传文档时,将中文PDF与英文Markdown分开拖入——Dify不会自动识别语言,但后续分段策略会依赖文件来源路径做初步分流。
进入「文本分段与清洗」环节,关键操作在此:下拉选择「高级分块」模式 → 启用“按语义边界切分” → 语言检测开关设为【自动识别】。
这一步会触发Dify内置语言探测器(基于fasttext),对每个文档块打上zh/en/ja等标签,为后续模型路由提供依据;若探测失败,系统会回退到默认分段逻辑,导致模型错配。
Dify 3.9.2更新重点增强系统安全性,引入 Chainguard 安全基础镜像并同步社区版 CVE 修复,同时优化 OpenSearch 向量存储兼容性、插件参数传输机制及 Helm 部署配置。新增工作流模型节点缓存能力,可减少重复凭证查询,显著提升复杂工作流初始化速度,为企业级 AI 应用提供更稳定、高效的运行体验。
第三步:启用双模型混合路由与加权融合
在知识库编辑页,进入「索引设置」→「高质量」模式 → 开启「混合检索」。
方法一:手动配置双路召回权重
在检索参数JSON中填入:
{"retrieval_mode":"hybrid","weights":{"keyword":0.3,"semantic_zh":0.45,"semantic_en":0.25},"top_k":8}
其中semantic_zh与semantic_en是Dify内部识别的模型别名,对应你刚注册的zh-embed和en-embed;权重总和必须为1,且semantic_zh权重必须高于semantic_en——因为中文文档占比通常更高,且bge-large-zh召回质量更稳定。
方法二:启用动态语言路由
勾选「按文档语言自动选择Embedding模型」,系统会在索引构建阶段,对每个分块标注语言标签,并仅调用对应模型生成向量;此方式无需手动设权重,但要求所有文档必须含明确语言标识(如文件名带_zh/ en后缀,或首段含“本文为中文版”类提示)。
保存设置后,系统将重建索引——【此过程不可中断,中断会导致向量库损坏,需全量重传文档】。
第四步:验证跨语言检索效果
第一步:用中文问题查英文原文
在知识库测试框输入“如何配置OAuth2.0授权?”,观察返回结果是否包含英文技术文档中的“Configure OAuth2.0 authorization flow”段落——若出现,说明语义路由生效。
第二步:用英文缩写查中文解释
输入“JWT token expiration”,检查是否命中中文FAQ中“JWT令牌过期时间设置”的完整段落——这里考验的是bge-large-zh能否理解英文术语在中文语境下的等价表达。
第三步:对比单模型与双模型召回差异
临时关闭en-embed模型,在相同查询下记录Top5结果;再开启双模型,重新执行——若英文相关片段从第7位跃升至第2位,即验证成功。










