写在前面:

为什么采用Dify+RAGFlow的方案:

采用 Dify+RAGFlow 组合方案,能充分发挥两者优势,高效落地企业级智能应用。Dify 凭借可视化操作界面和灵活的工作流编排能力,可快速对接主流大模型,降低开发门槛,帮助企业敏捷搭建智能问答、对话交互等应用。而 RAGFlow 专注于 RAG 技术优化,通过先进的向量检索与语义理解技术,深度整合企业内文档、数据库等多种数据源,精准匹配用户需求,有效减少大模型幻觉问题。两者协同工作,Dify 负责上层应用部署与交互体验设计,RAGFlow 作为底层知识引擎提供数据支撑,最终形成从知识管理、精准检索到智能应答的完整闭环,满足企业复杂场景下的智能化需求。

本文的特色:

在学习部署 Dify 和 RAGFlow 的过程中,我发现网络上缺乏完整的 0-1 教学内容。现有的教程大多只涉及单一工具的部署,当尝试同时部署时,常出现端口冲突问题,且对于外部知识库 API 的配置方法也鲜有说明。即使少数教程有所涉及,内容也存在不完整、步骤缺失等问题,导致初学者难以完成实践操作。因此,本文旨在提供一套系统、完整的部署指南,避坑环境搭建、端口冲突、API 配置等关键环节,帮助小白顺利实现 Dify 与 RAGFlow 的联合部署与应用。

目录:

一、配置Ollama

二、配置Docker

三、配置RAGFlow

四、配置Dify

五、在RAGFlow中配置知识库

六、在Dify中连接RAGFlow知识库

七、在Dify中创建应用测试

八、RAGFlow解析文档的问题

PS:本教程默认有梯子

一、配置Ollama

  • 这步的目的是安装本地大模型供Dify调用,如果已通过LMStudio安装本地大模型或者接入在线大模型均可跳过此步骤
  • 可参照B站的视频教程:https://www.bilibili.com/video/BV15zNGeYE8M/?spm_id_from=333.337.search-card.all.click&vd_source=5107d9a68398bea2a5cbdb7b80a313b6

1、安装Ollama

https://Ollama.com/

2、修改模型安装路径

Ollama默认会把模型安装到C盘,导致C盘爆炸,所以要修改模型安装路径

(1)选择一个空闲磁盘创建专门存放模型的文件

(2)打开环境变量-系统变量-新建,创建一个变量名为Ollama_models,变量值为浏览目录-存放模型文件的路径

(3)重启电脑,检查环境变量是否还存在

3、下载模型

(1)打开https://Ollama.com/search -选择模型-复制代码

(2)Win+R输入cmd运行命令行-粘贴代码

(3)下载完成检查是否安装到模型所选路径

(4)测试大模型是否成功安装

  • cmd打开命令行
  • 输入Ollama,显示所有命令

  • 输入Ollama list,显示已安装的模型列表

  • 输入Ollama run deepseek-r1:1.5b

二、配置Docker

1、安装Docker

https://www.Docker.com/

2、修改Docker镜像路径

Docker默认会把镜像安装到C盘,导致C盘爆炸,所以要修改安装路径

3、勾选enable host networking

4、验证是否安装成功

Win+R输入cmd运行命令行-输入Docker,若出现Docker命令则代表安装成功

三、配置RAGFlow

1、下载RAGFlow并解压

https://github.com/infiniflow/RAGFlow

2、修改配置

RAGFlow默认会下载轻量版本,轻量版是没有自带的Embedding模型的,需要单独下载部署Embedding模型(类似第一步中使用Ollama部署deepseek-R1),我觉得比较麻烦,所以在这一步直接修改配置使其下载全量版。

(1)进入RAGFlow-main\Docker,使用记事本打开.env文件

(2)找到RAGFlow_IMAGE=infiniflow/RAGFlow:vx.xx.x-slim

3、安装Docker镜像

(1)进入Docker文件,选中文件路径输入cmd+回车

(2)安装镜像

不要用官方给的命令安装(docker compose -f docker-compose.yml up -d),因为安装后容器名称默认为Docker,且如果再使用官方的命令安装Dify,会和RAGFlow共用一个容器,不易区分,因此需要重新设置容器名称

输入以下代码安装,大概需要20分钟

Plain Text
用这个
docker compose -p ragflow -f docker-compose.yml up -d

(3)安装成功后会显示如下图

4、打开RAGFlow

(1)在浏览器中输入http://localhost:80(RAGFlow默认使用80端口打开)

(2)注册账号进行登录

四、配置Dify

1、下载Dify并解压

https://github.com/langgenius/dify

2、修改端口

若Dify和RAGFlow在同一主机安装,则会出现端口被占用的情况(80端口被RAGFlow占用),需要提前修改端口。

(1)将.env.example文件修改为.env文件

(2)打开.env和将docker-compose.yaml文件,将所有的EXPOSE_NGINX_PORT=80改为5201,EXPOSE_NGINX_SSL_PORT改为8443(建议选用5001-9999之间的)

3、安装Docker镜像

(1)进入Docker文件,选中文件路径输入cmd+回车

(2)安装镜像

不要用官方给的命令安装,输入以下代码安装

Plain Text
用这个
docker compose -p dify -f docker-compose.yaml up -d

4、打开Dify

(1)在浏览器中输入http://localhost:5201/install

(2)注册账号进行登录

五、在RAGFlow中配置知识库

1、添加本地模型

(1)Ollama

添加Ollama模型-按图示选择(模型名称必须为全称,不能自己设置)

(2)LMStudio

启动LMStudio并加载一个本地模型-开启在局域网内提供服务-在RAGFlow中按图示添加

2、添加在线模型

选择一个模型平台-进入开放平台-注册账号-申请APIKey-输入

3、设置默认模型

4、创建知识库

(1)输入名称

(2)配置解析文档方案

(3)上传并解析文件

(4)检索测试

六、在Dify中连接RAGFlow知识库

1、连接外部知识库

2、任意填写外部知识库名称、知识库描述

3、添加外部知识库API

(1)name:任意写

(2)API Endpoint:如果没改RAGFlow的端口,则默认9380,如果改了可在Docker中查看并自行更换

Plain Text
http://host.docker.internal:9380/api/v1/dify

(3)API Key:打开RAGFlow-API-创建APIKey

4、外部知识库ID

打开RAGFlow-进入知识库页面-网址中的id=即为id

5、召回测试

七、在Dify中创建应用测试

1、配置模型

本步骤跟在RAGFlow中配置本地/在线模型一样,只多了安装对应模型插件的工作

2、创建应用编排测试

至此,从本地部署到连接外部知识库的教程已完结。

八、RAGFlow后续的探索方向

在我使用RAGFlow进行PDF文档解析时遇到了一个问题,RAGFlow解析部分PDF的效果并不好,换了几个解析方案都没有解决,如果有懂的朋友欢迎给我指点方向。

全文完!

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐