Dify 是一个开源的 LLM 应用开发平台,提供了知识库、RAG 管道、智能体与工作流编排等功能 。 

不过,虽然 Dify 的工作流编排能力有口皆碑,但是其内置知识库的能力却与之不相称。

在真实业务场景中,Dify 处理复杂的文档,尤其是 PDF(含表格、图片、多栏排版),还是有些不足。

  • 解析深度有限。主要抽取纯文本,没有保留完整的表格行列关系、图片语义、页眉页脚信息等。  

  • 检索策略单一。虽支持向量+关键词混合搜索,但无法按业务权重动态调整,亦缺乏自定义重排序逻辑 。  

这就导致 Dify 内置知识库的召回性能,难以满足企业级应用的需求。 

好在 Dify 是一个开放平台, 它也提供了对接外部知识库的功能,不过其 /retrieval 端点与字段要求固定,无法按需增加自定义参数,实际性能和可扩展性均受限。

因此,我们需要更好的方案。

 1 .Dify x ThinkDoc 方案

在企业级应用需求的场景下,我们采用 Dify 的编排与交互能力,将解析与检索环节外接至 ThinkDoc 知识库,通过 HTTP 直调 API 实现多模态精准召回。

图片

 2 .仅需三步迅速成效

第一步: ThinkDoc 侧准备

1. 登录 ThinkDoc → 创建知识库 → 上传文件。   

   - https://doc.bluedigit.ai

2. 在知识库页面,复制知识库ID

   - Knowledge ID:6871xxxxxxxx

3. 在用户账号页面,创建API密钥: 

   - API Key:td-xxxxxxxx

图片

第二步: Dify 工作流配置

在 Dify工作室,我们选择创建空白应用,然后选择 Chatflow。

图片

随后,我们在开始与 LLM 这两个节点间,增加一个 HTTP请求 节点,这样,我们就创建一个最简单的RAG工作流。

图片

这个新增的 HTTP 请求 节点,参数如下:

POST https://doc.bluedigit.ai/api/retrieve

Headers 

Authorization的键值,请填入刚才创建的 API 密钥:td-xxxxxxxx。

{  "Authorization": "Bearer td-xxxxxxxx",  "Content-Type": "application/json"}

Body

选择raw,填入以下信息,使用刚才获得的知识库ID 6871xxxxxxxx。​​​​​​​

{  "query": "{{#sys.query#}}",  "kb_ids": ["6781xxxxxxxx"],  "retrieval_setting": {    "top_k": 10,    "score_threshold": 0.1,  }}

以上在 Dify 中的 HTTP 请求 节点的配置,如下图所示:

图片

LLM 节点的配置  

我们需要在 LLM 节点,配置系统和用户提示词,并在提示词的合适位置添加上下文和用户查询变量:

图片

第三步: 效果验证

我们在知识库中,上传了一份《大卫说流程》Word文稿,随后在 Dify 工作流的预览界面输入问题:

流程有哪些特征?

很快,系统返回如下回答:

图片

整个工作流的执行情况如下图所示:

图片

可以看到,这个最简单的RAG工作流,非常快速和准确地找到了相关信息,并通过LLM生成了回答。

 3 .灵活调整参数

基于 ThinkDoc 强大的文档解析和融合检索能力,我们还可以进一步扩展。

  • 多知识库联合检索: kb_ids 参数值为数组,可以填入多个知识库ID;如果填入空数组[],那么将默认在用户的所有知识库中检索。

  • 动态阈值:根据检索结果测试的情况,调整 score_threshold,兼顾检索的精度与召回率。

如何使用 ThinkDoc 的混合检索与重排序功能呢?

我们只需在 HTTP请求的 Body 中增加以下参数:query_type、rerank、top_n。

  {    "query": "{{#sys.query#}}",    "kb_ids": ["6781xxxxxx"],    "retrieval_setting": {      "top_k": 10,      "score_threshold": 0.1,      "query_type": "hybrid",      "rerank": true,      "top_n": 3    }  }

如果你仔细研究 ThinkDoc 返回的检索结果,可以发现更为丰富的图片、文字、元数据和来源信息(详情参见 API 文档)。

我们可以惊喜地发现,这个用 Dify 工作流编排的 RAG 系统,将可以生成图文并貌的回答,还可以列出参考资料、准确地标注引用来源。

综合以上,对于需要解析表格、图片、复杂排版的生产级场景,本文介绍的 Dify 通过 HTTP 直调 ThinkDoc API 方案, 是效果出色与可扩展的优选方案。

您可以查阅官方文档进一步了解:  

  • Dify 外部知识库

    https://docs.dify.ai/zh-hans/guides/knowledge-base/connect-external-knowledge-base

  • ThinkDoc API

    https://doc.bluedigit.ai/api/redoc

4.AI大模型学习路线

如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!

这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!

请添加图片描述
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

100套AI大模型商业化落地方案

请添加图片描述

大模型全套视频教程

请添加图片描述

200本大模型PDF书籍

请添加图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

LLM面试题合集

请添加图片描述

大模型产品经理资源合集

请添加图片描述

大模型项目实战合集

请添加图片描述

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

更多推荐