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

一、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部署在同一台服务器上,则必须要将两者分在不同的显卡上。

图片

六、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,点击“发布”就可以了。

图片

 如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!

在这个版本当中:

第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言

您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

五、AI产品经理大模型教程

在这里插入图片描述

LLM大模型学习路线 

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

 

### 配置和使用 Dify 连接 Ollama 为了使Dify能够连接Ollama,通常需要遵循一系列特定的设置流程来确保两个平台之间的兼容性和数据交互顺畅。虽然具体的集成细节可能依赖于Dify的具体版本和支持文档,下面提供了一般性的指导原则。 #### 安装必要的软件包 首先,在本地环境中安装任何所需的Python库或其他工具,这可能是通过pip完成的操作,具体取决于目标框架的要求。 ```bash pip install requests # 假设需要HTTP请求处理能力 ``` #### 获取API密钥 访问Ollama服务提供商处获取用于认证的API Key[^1]。此Key对于发起安全调用至关重要,并允许应用程序识别自己并获得授权以执行操作。 #### 编写接口代码 创建一段脚本或函数用来封装向Ollama发送请求的过程。这里展示了一个简单的例子: ```python import requests def call_ollama_api(model_name, api_key): url = f"https://api.ollama.com/v1/models/{model_name}/generate" headers = { "Authorization": f"Bearer {api_key}", "Content-Type": "application/json", } response = requests.post(url, json={}, headers=headers) return response.json() ``` 这段代码定义了`call_ollama_api()`函数,它接受模型名称和API键作为参数,并返回来自指定OLLAMA模型的结果。请注意实际应用中应替换真实的端点URL以及调整POST负载结构以匹配所选模型的需求。 #### 整合至Dify工作流 最后一步就是将上述功能融入到Dify的工作流当中去。这意味着要找到合适的地方插入对`call_ollama_api()`这样的辅助函数的调用,从而实现当某些条件满足时触发对Ollama的服务请求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值