支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


速看!最新版 Dify 连接 Ollama 与 vLLM 全攻略

发布日期:2025-04-28 20:11:58 浏览次数: 1527 作者:AI悠悠
推荐语

掌握最新Dify平台,快速构建您的AI应用!

核心内容:
1. Dify平台介绍及核心功能
2. Dify助力AI应用快速落地的案例
3. Dify最新版的安装指南及系统要求

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家

一、dify介绍

Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。

由于 Dify 内置了构建 LLM 应用所需的关键技术栈,包括对数百个模型的支持、直观的 Prompt 编排界面、高质量的 RAG 引擎、稳健的 Agent 框架、灵活的流程编排,并同时提供了一套易用的界面和 API。这为开发者节省了许多重复造轮子的时间,使其可以专注在创新和业务需求上。

官网:https://dify.ai/zh

官网文档地址:https://docs.dify.ai/zh-hans

github地址:

https://github.com/langgenius/dify

二、Dify 能做什么?

Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。

  • 创业快速的将你的 AI 应用创意变成现实,无论成功和失败都需要加速。在真实世界,已经有几十个团队通过 Dify 构建 MVP(最小可用产品)获得投资,或通过 POC(概念验证)赢得了客户的订单。

  • 将 LLM 集成至已有业务通过引入 LLM 增强现有应用的能力,接入 Dify 的 RESTful API 从而实现 Prompt 与业务代码的解耦,在 Dify 的管理界面是跟踪数据、成本和用量,持续改进应用效果。

  • 作为企业级 LLM 基础设施一些银行和大型互联网公司正在将 Dify 部署为企业内的 LLM 网关,加速 GenAI 技术在企业内的推广,并实现中心化的监管。

  • 探索 LLM 的能力边界即使你是一个技术爱好者,通过 Dify 也可以轻松的实践 Prompt 工程和 Agent 技术,在 GPTs 推出以前就已经有超过 60,000 开发者在 Dify 上创建了自己的第一个应用。

三、安装Dify最新版

一般采用DockerCompose来安装部署。

安装 Dify 之前, 请确保你的机器已满足最低安装要求:

  • CPU >= 2 Core

  • RAM >= 4 GiB

 Dify支持各种操作系统,推荐使用Ubuntu操作系统来安装。

操作系统

软件
描述

macOS

Docker Desktop

为 Docker 虚拟机(VM)至少分配 2 个虚拟 CPU(vCPU) 和 8GB 初始内存,否则安装可能会失败。有关更多信息,请参考 《在 Mac 内安装 Docker 桌面端》

Linux

Docker 19.03 or later Docker Compose 1.28 or later
请参阅安装 Docker 和安装 Docker Compose 以获取更多信息。

Windows

Docker Desktop

我们建议将源代码和其他数据绑定到 Linux 容器中时,将其存储在 Linux 文件系统中,而不是 Windows 文件系统中。有关更多信息,请参阅使用 WSL 2 后端在 Windows 上安装 Docker Desktop

1、下载最新源码到本地

也可以指定分支代码。目前最新版本为1.3.0 。

git clone https://github.com/langgenius/dify.git

2、复制配置文件

# 进入目录cd dify/docker# 复制 一份配置文件cp .env.example .env

3、启动容器

一定要在这个目录 dify/docker里执行如下命令:

docker compose up -d

运行命令后,你应该会看到类似以下的输出,显示所有容器的状态和端口映射:

[+] Running 11/11 ✔ Network docker_ssrf_proxy_network  Created                                                                 0.1s  ✔ Network docker_default             Created                                                                 0.0s  ✔ Container docker-redis-1           Started                                                                 2.4s  ✔ Container docker-ssrf_proxy-1      Started                                                                 2.8s  ✔ Container docker-sandbox-1         Started                                                                 2.7s  ✔ Container docker-web-1             Started                                                                 2.7s  ✔ Container docker-weaviate-1        Started                                                                 2.4s  ✔ Container docker-db-1              Started                                                                 2.7s  ✔ Container docker-api-1             Started                                                                 6.5s  ✔ Container docker-worker-1          Started                                                                 6.4s  ✔ Container docker-nginx-1           Started                                                                 7.1s

最后检查是否所有容器都正常运行:

docker compose ps

在这个输出中,你应该可以看到包括 3 个业务服务 api / worker / web,以及 6 个基础组件 weaviate / db / redis / nginx / ssrf_proxy / sandbox 。

NAME                  IMAGE                              COMMAND                   SERVICE      CREATED              STATUS                        PORTSdocker-api-1          langgenius/dify-api:0.6.13         "/bin/bash /entrypoi…"   api          About a minute ago   Up About a minute             5001/tcpdocker-db-1           postgres:15-alpine                 "docker-entrypoint.s…"   db           About a minute ago   Up About a minute (healthy)   5432/tcpdocker-nginx-1        nginx:latest                       "sh -c 'cp /docker-e…"   nginx        About a minute ago   Up About a minute             0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcpdocker-redis-1        redis:6-alpine                     "docker-entrypoint.s…"   redis        About a minute ago   Up About a minute (healthy)   6379/tcpdocker-sandbox-1      langgenius/dify-sandbox:0.2.1      "/main"                   sandbox      About a minute ago   Up About a minute             docker-ssrf_proxy-1   ubuntu/squid:latest                "sh -c 'cp /docker-e…"   ssrf_proxy   About a minute ago   Up About a minute             3128/tcpdocker-weaviate-1     semitechnologies/weaviate:1.19.0   "/bin/weaviate --hos…"   weaviate     About a minute ago   Up About a minute             docker-web-1          langgenius/dify-web:0.6.13         "/bin/sh ./entrypoin…"   web          About a minute ago   Up About a minute             3000/tcpdocker-worker-1       langgenius/dify-api:0.6.13         "/bin/bash /entrypoi…"   worker       About a minute ago   Up About a minute             5001/tcp

通过这些步骤,本地成功安装 Dify 。 端口号默认是80 。可以打开http://localhost 进行体验了。

第一次打开,需要设置管理员账号密码。

4、Dify的网络拓扑图

四、安装Olama

1、安装Ollama

安装Ollama一般有2种方法,一键安装和手动安装。本次使用一键安装方式。

ubuntu服务器执行命令,安装和运行Ollama。

curl -fsSL https://ollama.com/install.sh | sh

这个命令需要科学上网,耗时较长。执行成功后,Ollama就会自动运行,随机自启。

2、下载LLM大模型

DeepSeek-R1 1.5b为例,执行如下命令。

ollama run deepseek-r1:1.5b

就可以对大模型对话了。访问 127.0.0.1:11434查看Ollama的执行状态。也使用输入命令查看状态。

systemctl  status ollama

3、开放外部访问

这种方式安装的ollama, 绑定的地址是127.0.0.1,只能在本地访问,无法在其他服务器访问。为了让外网能访问,需要将地址改为0.0.0.0. 编辑ollama的服务配置:

sudo systemctl edit --full ollama.service

需要在Environment里追加 "OLLAMA_HOST=0.0.0.0"。注意Envirinment的格式如下:

Environment="VAR1=value1" "VAR2=value2"

则我们在后面加空格,再加上键值对。

Ctrl+X, Y保存退出。重启服务

sudo systemctl daemon-reload
sudo systemctl restart ollama.service

  这样ollama就可以在外网访问了。

五、安装vLLM

操作步骤看这篇文章:《 大模型部署该选谁?Ollama、vLLM 和 LMDeploy,各有千秋!》  vLLM默认是可以外部访问的,所以无需设置。

若Ollama和vLLM部署在同一台服务器上,则必须要将两者分在不同的显卡上。


六、Dify接入 Ollama 

1、安装模型供应商

在 设置 > 模型供应商 >安装模型供应商,找到Ollama,并且点击“安装”,完成后,点击添加“模型”,模型类型有2种:LLM - 通用的自然语言大模型,Text Embedding-词嵌入大模型。

(1)如果使用大模型进行对话的,则选择LLM 。 模型名称需要选择Ollama已运行的大模型名称,不要填错了。可以使用ollama list命令查看本地已安装的大模型。

(2)基础URL,一定要填写 Dify容器内能访问到的地址

(3)模型类型:对话 ;

(4)模型上下文长度:模型的最大上下文长度,若不清楚可填写默认值 4096。

(5) 最大 token 上限:4096

模型返回内容的最大 token 数量,若模型无特别说明,则可与模型上下文长度保持一致。

(6) 是否支持 Vision:否;

当模型支持图片理解(多模态)勾选此项,deepseek不支持,所以 否;

(7)是否支持函数调用:否;

 当模型支持 Function Call,勾选此项。

点击“保存”即可。

2、Dify中选择Ollama对话

“工作台”--“创建空白应用”。应用类型:聊天助手

点击“创建”即可。跳到“编排”页面,右上角选择ollama配置的大模型即可。 

自此,在Dify里我们就可以与大模型正常对话了。

七、接入vLLM推理模型

1、安装模型供应商

操作方法与Ollama类似,选择 模型供应商选择 “vLLM”,或者“OpenAI-API-compatible” ;这2个都可以。若是想接入LMDeploy,选择“OpenAI-API-compatible”进行安装。

模型名称:vLLM启动时候带的大模型地址,或vLLM指定的大模型名称。

API endPoint URL:地址后带上 /v1 

其他参数保持默认即可。

2、Dify中选择vLLM对话

编排界面--右上角大模型选择,可以选择vLLM,点击“发布”就可以了。


图片

LlamaIndex入门指南和RAG原理

RAG进阶:Embedding Models嵌入式模型原理和选型指南
RAG 落地必备的 1 个开源 AI 原生向量数据库 —Chroma
RAG落地实战之文本切分4种策略全解析

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询