Dify GPU 托管指南 2026 — 使用 Dify 运行本地 LLM
在 GPU 服务器上托管 Dify,并连接 Ollama 或 LocalAI,在本地运行 Llama 3、Mistral 等开源模型——零 API 调用费用,数据完全私密。
为什么要在 GPU 服务器上运行 Dify?
通过 Ollama 或 LocalAI 将 Dify 连接到本地托管的 LLM,可以完全消除对云端 AI 提供商的依赖。以下是您的收益:
无 API 费用
只需支付 GPU 服务器费用——无需按 token 计费。大规模使用时成本大幅降低。
数据隐私
提示词和响应不会离开您的基础设施——对受监管行业至关重要。
自定义模型
运行任何公共 API 无法提供的微调或领域专用模型。
无速率限制
GPU 能处理多少请求就发多少——无节流,无配额错误。
GPU 云服务商对比
价格为 2026年初按需使用的大致费率,预留实例和竞价实例通常更便宜。
| 服务商 | GPU | 显存 | 价格/小时 | 适用场景 |
|---|---|---|---|---|
| Lambda Labs | A10 | 24 GB | $0.75/小时 | 开发测试 |
| Vast.ai | RTX 4090 | 24 GB | ~$0.35/小时 | 经济实惠 |
| RunPod | A100 | 80 GB | $1.99/小时 | 生产环境 |
| CoreWeave | H100 | 80 GB | $2.50/小时 | 企业级 |
| Hetzner GPU | A100 | 80 GB | 2.49 EUR/小时 | 欧盟合规 |
安装 CUDA 和 NVIDIA Container Toolkit
在安装 Dify 或 Ollama 之前,您需要 NVIDIA CUDA 驱动和 Container Toolkit,以便 Docker 容器能够访问 GPU。
安装 CUDA Toolkit 12.3
# 检查 NVIDIA 驱动是否已安装
nvidia-smi
# 如未安装,添加 NVIDIA 软件源
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
# 安装 CUDA 工具包(含驱动)
sudo apt install -y cuda-toolkit-12-3
# 安装驱动后需要重启
sudo reboot 验证 GPU 并配置 Docker
# 重启后,验证 GPU 是否被识别
nvidia-smi
# 安装 NVIDIA Container Toolkit(让 Docker 容器访问 GPU)
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
sudo apt update && sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker 运行 nvidia-smi 后,您应该能看到 GPU 及其驱动版本和显存信息。如果 Docker 现在可以使用 --gpus all,则可以进入下一步。
安装 Ollama 并拉取 LLM 模型
Ollama 是在 GPU 上运行开源 LLM 最简便的方式,它会自动检测 CUDA 并使用 GPU 进行推理。
安装 Ollama 并拉取模型
# 安装 Ollama(一键安装)
curl -fsSL https://ollama.com/install.sh | sh
# 验证 Ollama 是否运行
ollama list
# 拉取 LLM 模型
ollama pull llama3.1:8b
ollama pull mistral:7b
ollama pull codellama:13b
# 测试模型
ollama run llama3.1:8b "你好,你能做什么?" 将 Ollama 绑定到所有网络接口
默认情况下,Ollama 仅监听 localhost。要使其能被 Dify 的 Docker 容器访问,需将其绑定到 0.0.0.0:
# 编辑 Ollama systemd 服务,绑定到所有网络接口
sudo systemctl edit ollama --force --full
# 找到 [Service] 部分并添加:
# Environment="OLLAMA_HOST=0.0.0.0:11434"
# 应用更改
sudo systemctl daemon-reload
sudo systemctl restart ollama 配置 docker-compose.override.yaml
在 Dify 目录中创建或编辑 docker-compose.override.yaml,以便 Linux 上的容器能将 host.docker.internal 解析为宿主机:
services:
api:
extra_hosts:
- "host.docker.internal:host-gateway"
worker:
extra_hosts:
- "host.docker.internal:host-gateway" 注意: 在 macOS 和 Windows 上,host.docker.internal 会自动解析。在 Linux 上,上述 extra_hosts 条目是必需的。
将 Dify 连接到 Ollama
Ollama 运行并可访问后,将其添加为 Dify 的模型提供商:
- 打开您的 Dify 实例,点击右上角的头像。
- 进入设置,然后选择模型提供商。
- 向下滚动找到 Ollama,点击添加模型。
- 将基础 URL 设置为
http://host.docker.internal:11434。 - 按照
ollama list显示的名称,准确填写模型名称(例如llama3.1:8b)。 - 点击保存——Dify 将测试连接,绿色对勾表示成功。
- 该模型现已在您所有的 Dify 应用和工作流中可用。
提示: 对每个拉取的模型重复第 5 步。您可以添加任意数量的 Ollama 模型——每个都会作为独立的可选模型出现在 Dify 中。
LocalAI — 兼容 OpenAI 的替代方案
如果您偏好兼容 OpenAI 的 API 接口,LocalAI 是 Ollama 的出色替代方案。它暴露了 /v1/chat/completions 等端点,无需额外配置即可使用 Dify 现有的 OpenAI 集成。
使用 Docker 运行 LocalAI(GPU)
# 使用 Docker 运行 LocalAI(启用 GPU)
docker run -d --gpus all -p 8080:8080 -v /path/to/models:/models --name local-ai localai/localai:latest-aio-gpu-nvidia-cuda-12 启动后,在 Dify 中配置模型提供商:OpenAI-API-compatible,将基础 URL 设为 http://host.docker.internal:8080/v1,并使用在 LocalAI 中加载的任意模型名称。本地部署无需 API 密钥。
按使用场景的模型推荐
根据可用显存以及应用对质量与速度的权衡来选择模型。
| 模型 | 所需显存 | 速度 | 适用场景 |
|---|---|---|---|
llama3.1:8b | ~6 GB | 快速 | 通用对话 |
mistral:7b | ~5 GB | 非常快 | 速度优先应用 |
codellama:13b | ~10 GB | 中等 | 代码生成 |
llama3.1:70b | ~40 GB | 较慢 | 高质量输出 |
mixtral:8x7b | ~26 GB | 中等 | 质量与速度均衡 |
显存快速参考
以上为全精度(fp16)推理的大致需求。量化模型(Q4/Q5)可将显存占用降低 30–50%,使更大的模型能在较小的 GPU 上运行。