本文详细介绍了Dify知识库实现图文混排的两种方案:Markdown+图床和Word导入。前者图片存储在图床,灵活可迁移但成本较高;后者图片存储在Docker卷,成本低但难以迁移和管理。文章对比了两种方案在部署成本、操作便捷性、长期管理和数据迁移性等方面的差异,并针对不同场景提供了选择建议:个人快速验证可选Word方案,企业长期项目推荐Markdown+图床方案。

Dify知识库图文混排到底应该怎么做,两种主流方案,一次讲清
如果你想在使用dify知识库的实现下面的图文混排效果,那你非常有必要读一下这篇文章。

图文混排
我发现,目前实现这样的图文混排效果应该是有两种方案:
使用图床或者直接将word文件导入知识库。
大家用知识库多的话,或者大模型多的话,可能都知道大模型其实非常擅长理解markdown文件,图床就是markdown中的图像在网络上存储的位置。
而word导入知识库以后,word中的图片会被dify的知识库解析,然后存储到dify所在的服务器。
上面的这两种方案,其实本质上的原理,都是使用的dify的前端是支持markdown渲染的。因此,markdown的图片渲染也是支持的。
下面实验的dify版本是1.9.2,win11环境,docker启动。
markdown图床
使用markdown图床的方式,实现知识库答案的图文混排。
前几天,我们怕了E大很多的文章,这里我们就以E大的文章为例。
如果大家看了之前的文章的话:
从被 Trae 气到崩溃,到用 Gemini 一次跑通,终于爬下了孟岩和E大的全部理财干货
可能看到了我爬取的markdown文档图片是在本地电脑上存储的,在markdown中的引用方式如下:

markdown命名
所以我们首先要将它上传到一个图床,这里我实验吗,所以直接用的自己的阿里云oss。
如果大家在公司内部使用的话,可能需要自建一个图床,因此相对来说图床的方案会有服务器,所以成本会高一些。

阿里云oss图床地址
接下来我们开始建立知识库:

导入知识库
选择分块逻辑:

分块
这里大家可以看到我在markdown文本中,将每个主题相同的大块使用##这种二级标题符号进行了隔离,所以我们在dify知识库建立的时候,分隔符可以选择##。

分块逻辑和预览
这里大家需要特别注意一点,就是你的分块长度不能太短,不然可能会导致图片的URL地址被截断,直接导致后续知识库的输出就无法输出完整的URL,当然,也就没办法实现图文混排了。
下面我们做一下召回测试,大家可以看到是可以召回图片的:

召回测试
这里我开始其实是碰到了一个问题的,就是图片无法加载,只显示了图片链接,后来看浏览器控制台,发现图片访问403forbidden了。
我就抓紧回忆了下,我在阿里云oss的bucket里面开启了白名单 Referer,没有将本地的http://localhost/加入白名单,后来改掉以后就正常了。
ok,下面我们开始测试,配置一个简单地chatflow:

markdown图文混排测试
提示词很简单是:
### 角色你是一个严谨、专业的问答助手。你的唯一任务是基于下面提供的“知识库检索结果”来回答“用户问题”。### 核心规则1. **内容来源**:你的回答必须**严格且完全**基于“知识库检索结果”中的信息。2. **禁止编造**:严禁使用任何“知识库检索结果”之外的信息。如果“知识库检索结果”为空,或内容与“用户问题”完全无关,你**必须**直接回答:“抱歉,我没有找到相关信息。”3. **图片处理(关键指令)**: * **检测**:在生成回答前,必须检查“知识库检索结果”的文本中是否包含图片链接(如 `http://.../img.jpg` 或 `https://.../image.png`)。 * **嵌入**:如果检测到图片链接,你**必须**在回答中,将该图片以 Markdown 格式 (``) 插入到最相关的文本段落旁边,实现图文并茂的效果。 * **格式**:确保图片始终以 `` 的 Markdown 格式返回。4. **结构化输出(新要求)**: * **条理**:回答应条理清晰,尽可能使用有序列表(1., 2., 3.)或无序列表(-)来组织步骤或多个要点。 * **高亮**:对回答中的关键概念、术语、重要数据或结论性句子,使用**加粗**进行重点标记。---* **知识库检索结果**:{{#context#}}
效果如下,非常完美:

md图床知识库回答
这是llm的答案结构:
"text": "根据提供的知识库检索结果,**网格1.0的主要缺点**是:\n\n- **在一波强势上涨中,盈利不足**。例如,在2015年底到2016年底的一波接近**80%的暴涨**中,网格1.0的每一格投入只赚了**5%~8%**。虽然所有投入都赚钱且后续下跌都躲过了,但这种策略会导致投资者在看到品种价格大幅上涨(如从0.4涨到0.8)后,对自己在最低位买入却仅赚取微小利润就卖出的操作感到**极度不满意**。\n\n\n\n\n\n**核心问题**是网格1.0无法充分捕获大趋势行情中的利润,因此在强势单边上涨市场中表现不佳。这也促使了网格2.0版本的开发,通过子策略组合来优化这一问题.
总结一下Markdown + 图床
核心收益是:
- • 灵活性高:知识库源文件(Markdown)和图片资源(图床)是分离的,未来无论迁移到哪个系统,都非常方便。
- • 方便管理:图片资源集中在图床(如 OSS)管理,查找、替换都很方便。
但是缺点也很明显:
- • 成本:需要额外的图床服务器或对象存储服务费用。
- • 运维:需要处理图床的访问权限、白名单(就像我遇到的 Referer 问题),甚至要多维护一个系统。
word混排方案
word混排方案和md图床方案的差别就是,知识库我们上传的是word。
word知识库上传时,我们选择分隔符是\n\n,我这里将md格式导出为word以后,特意在每个章节中间加了两个分隔符。

word两个换行符
大家可以看到预览时,这里也有一个相对的文件地址:

图片相对地址
大家可以看到,图片也可以被渲染出来:

word图片召回测试
那这个图片是在哪里存储呢?看这个地址,我就知道他一定在本地,那到底在哪里呢。
我们问问Trae(或者任何一个AI 的IDE或者Claude code),让他来看看代码,帮我们找找答案。
下面这个提示词时经过Trae优化的。
针对在本地使用Docker启动的Dify系统中,当向知识库上传Word文档后,文档中包含的图片文件的存储位置及知识库引用方式进行深入分析。请详细说明以下内容:1) 图片文件在Docker容器内及宿主机上的具体存储路径结构;2) 系统内部对图片资源的引用机制,包括但不限于数据库记录方式、URL生成规则及访问权限控制;3) 图片资源在知识库检索和展示过程中的调用流程;4) 相关配置文件中与图片存储相关的关键参数说明。请提供具体的路径示例、引用格式样例及必要的技术细节,以清晰展示Dify系统处理Word文档中图片资源的完整机制。
Trae的答案:

word图片存储地址
我们去目录下看看,果然是:

果然是图片

展示过程
那其他格式的文档会进行存储吗?
我们也问问,这是trae分析代码的答案,看来是不会了。只有word。

替他格式文档会解析图片存储吗
ok我们将chatflow中的知识库切换为word的知识库。试一下。
很棒,也成功了:

word图文混排测试
这是LLM的答案:
"text": "根据知识库检索结果,网格2.0的“留利润”子策略做法如下:\n\n**核心思想**:在每一次网格卖出操作中,将**利润部分留下**。由于这部分是0成本,因此可以无限期持有,不受市场短期波动影响,并有望获得长期收益。\n\n**具体做法(基础版本)**:\n1. 以初始价格(例如1元)买入一定金额(例如10000元)的品种,获得相应份额(例如10000份)。\n2. 当价格上涨至网格卖出点位(例如1.05元)时,执行卖出操作。\n3. 卖出时,**仅卖出收回本金所需的部分份额**,将利润对应的份额留下。\n * **举例说明**:1元买入10000元(10000份),在1.05元卖出时,卖出价值10000元的9524份,剩下的476份(即5%的利润)**永不卖出**,或仅在品种达到极度高估时才考虑卖出。\n * \n\n**策略的进化(高级版本)**:\n你还可以选择**留下多于利润的本金**,实现更强的长期持仓效果。\n* **举例说明(留双份利润)**:同样在1.05元卖出时,不仅可以留下5%的利润,还可以额外留下5%的本金。即卖出9048份(价值9500元),将500元利润与500元本金对应的份额留下,这部分**长期持有**或极度高估时再卖。\n* \n\n**策略优势**:\n这种方法利用了**金融心理学**中的“心理账户”概念,将利润部分视为“免费得到”的资产,有助于**减少情绪化交易**,并能够享受到指数型品种**长期上涨**带来的收益。"
word方案总结
所以word方案总结下来,就是成本短期相对低一些,不需要单独的图床服务器,图片存储在 dify 的 Docker 卷中,开箱即用。
但是基本上无法迁移,而且图片还无法管理,因为图片都是完全的系统生成的名字。
最后
所以,到底怎么选择呢,一张表给大家总结下:
| 维度 | Markdown + 图床方案 | Word 导入方案 |
|---|---|---|
| 部署成本 | 中 (需要额外图床服务) | 低 (无额外服务) |
| 操作便捷性 | 中 (需要上传图片到图床) | 高 (写完 Word 直接上传) |
| 长期管理 | 高 (图片资源独立,易于维护) | 低 (图片存储黑盒,不易管理) |
| 数据迁移性 | 高 (标准 Markdown,通用性强) | 极低 (图片链接与系统强绑定) |
| 推荐场景 | 公司生产环境、长期项目、多人协作 | 个人实验、快速原型、临时项目 |
这样看起来,大家是不是立刻知道如何选择了,所以:
- • 想快速验证、不在乎以后? 那就用 Word 方案,省时省力。
- • 但凡是公司用,考虑长期维护? 那图床这个服务器和服务运维的投入,我认为是绕不过去的坎。
希望这个对比能帮你省下纠结的时间。
以上,谢谢大家看我的文章,如果对大家有用的话,请大家一键三连!!!
如何学习AI大模型 ?
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓
优快云粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传优快云,朋友们如果需要可以扫描下方二维码&点击下方优快云官方认证链接免费领取 【保证100%免费】

读者福利: 👉👉优快云大礼包:《最新AI大模型学习资源包》免费分享 👈👈
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
👉1.大模型入门学习思维导图👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)

👉2.AGI大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。


👉3.大模型实际应用报告合集👈
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)

👉4.大模型实战项目&项目源码👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战项目来学习。(全套教程文末领取哈)

👉5.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)

👉6.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)

为什么分享这些资料?
只要你是真心想学AI大模型,我这份资料就可以无偿分享给你学习,我国在这方面的相关人才比较紧缺,大模型行业确实也需要更多的有志之士加入进来,我也真心希望帮助大家学好这门技术,如果日后有什么学习上的问题,欢迎找我交流,有技术上面的问题,我是很愿意去帮助大家的!
这些资料真的有用吗?
这份资料由我和鲁为民博士共同整理,鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位,在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利,同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


优快云粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传优快云,朋友们如果需要可以扫描下方二维码&点击下方优快云官方认证链接免费领取 【保证100%免费】

读者福利: 👉👉优快云大礼包:《最新AI大模型学习资源包》免费分享 👈👈
607

被折叠的 条评论
为什么被折叠?



