必须选择父子分段模式:父分段500–800字符保上下文,子分段200字符加50字符重叠防截断;启用元数据提取;仅传pdf/docx/txt/markdown;清洗页眉页脚及全角标点;推荐bge-large-zh嵌入模型;索引选高质量+混合检索。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Dify中构建高质量的本地知识库,需确保文档能被精准切分、向量化后语义可检索、且模型严格依据知识内容作答,避免幻觉输出或漏检关键信息。
选择并配置父子分段模式
登录Dify后台→进入「知识库」→点击「创建知识库」→在分段模式中【必须选择“父子分段”】,通用模式无法兼顾上下文完整性与检索颗粒度。
父分段设为500–800字符:过短会割裂政策条款等完整语义单元,过长则降低匹配精度;子分段设为200字符并开启50字符重叠:防止“保修期截止日为2025年12月31日”这类关键句被截成两段导致检索失效。
保存前勾选「启用元数据提取」:自动记录上传时间、文件名、自定义标签(如“HR制度_v2”),后续可通过元数据过滤快速隔离部门级知识。
上传前清洗文档并控制格式
仅上传PDF、DOCX、TXT、Markdown四类格式,【严禁上传扫描版PDF或含大量图片的Word】,Dify内置解析器无法识别图像内文字,会导致整份文档向量化失败。
对原始文档做轻量清洗:删除页眉页脚、批注、修订痕迹;将中文全角标点统一为半角(尤其顿号、引号);用Word「显示/隐藏编辑标记」检查是否残留不可见分节符——这些干扰项会触发错误分块,使子句嵌入向量时语义失真。
这一步操作起来很简单,直接把清洗后的文件拖进Dify上传框即可。
配置Embedding模型与索引策略
方法一:使用bge-large-zh模型(推荐)
进入「设置」→「模型供应商」→添加Embedding模型→选择「HuggingFace」→模型名称填bge-large-zh→API地址留空(本地加载)。该模型专为中文优化,在合同条款、技术文档等场景下召回率比text-embedding-ada-002高27%。
方法二:若已部署Ollama,可选bge-m3
模型名称填bge-m3→基础URL填http://localhost:11434→注意此处端口必须与Ollama服务一致,否则索引构建时会卡在“正在处理”状态且无报错提示。
创建知识库后,立即点击「高级设置」→索引方式选「高质量索引」→检索模式选「混合检索」→向量权重70% + 全文检索权重30%:既保留语义理解能力,又防止用户用错别字提问时完全失联。
验证与微调知识库效果
第一步:上传一份含明确答案的测试文档(例如《服务器运维SOP_v3.pdf》,内含“重启命令为systemctl restart nginx”)。
第二步:在知识库详情页点击「测试检索」→输入问题“nginx服务怎么重启”,观察返回片段是否包含原句及上下文段落。
第三步:若首条结果不匹配,立即返回「分段设置」→将子分段长度从200调至150→重新触发向量化(需手动点击「重建索引」)→再次测试。这一步耗时约2–8分钟,取决于文档页数,但能快速定位分块参数是否适配实际文本密度。











