大模型:大模型部署Ollama和Dify

发布于:2025-04-08 ⋅ 阅读:(289) ⋅ 点赞:(0)

以下是部署Ollama与Dify并实现本地大模型集成的详细指南:


一、Ollama部署与配置

1. 安装Ollama
  • 一键安装
    执行命令 curl -fsSL https://ollama.com/install.sh | sh 完成安装。若遇证书问题,需设置环境变量 CURL_CA_BUNDLE 指向正确的证书路径。
  • 手动安装
    下载二进制文件至 /usr/bin/ollama,并配置systemd服务以自启动。
  • 离线安装
    根据CPU型号(x86_64或arm64)下载对应版本,手动放置到目标路径并配置服务。
2. 模型管理
  • 下载模型
    使用 ollama pull <模型名>(如 llama3qwen2)下载预训练模型。
  • 运行模型
    执行 ollama run <模型名> 启动模型服务,默认监听端口为11434。
3. 环境变量与路径配置
  • 修改存储路径
    通过设置 OLLAMA_MODELS 环境变量指定模型存储目录(如Linux默认路径为 /usr/share/ollama/.ollama/models)。
  • 网络暴露
    设置 OLLAMA_HOST=0.0.0.0 使服务监听所有网络接口,解决Docker容器间通信问题。

二、Dify部署与集成Ollama

1. Dify本地部署
  • Docker部署
    克隆仓库后,进入 dify/docker 目录,复制 .env.example.env,执行 docker compose up -d 启动服务。访问 http://localhost:80 完成初始化设置。
  • Windows注意事项
    需调整PostgreSQL的存储路径权限,避免容器启动失败。
2. 集成Ollama模型
  • 添加模型供应商
    在Dify的 设置 > 模型供应商 > Ollama 中填写以下信息:
    • 模型名称:与Ollama返回的模型名一致(通过 ollama list 查看)。
    • 基础URL:根据部署方式选择:
      • Docker部署:使用宿主机IP(如 http://192.168.1.100:11434)或 http://host.docker.internal:11434
      • 本地部署:http://localhost:11434
    • 模型类型:对话或Embedding(需选择兼容的模型如 nomic-embed-text)。
    • 上下文长度与最大Token:默认4096,与模型参数一致。

三、常见问题与解决方案

1. Dify无法连接Ollama
  • 错误提示Connection refusedMax retries exceeded
    原因:Docker容器无法访问Ollama服务。
    解决方案
    • 修改Ollama的监听地址为 0.0.0.0
    • 在Dify的基础URL中使用 host.docker.internal 替代 localhost
2. 模型配置保存失败
  • 权限问题
    检查Dify的存储目录(如 /opt/dify)是否具有写入权限,执行 chmod -R 755 <目录> 修复。
  • 网络问题
    使用 curl http://localhost:11434 验证Ollama服务是否可达。
3. 多模态模型支持
  • Vision配置
    若使用支持图片理解的模型(如 llava),需勾选 是否支持Vision 选项。

四、高级功能扩展

1. 公网远程访问
  • 内网穿透工具
    使用Cpolar生成随机域名或固定二级子域名,映射Dify的80端口实现公网访问。
2. GPU优化
  • 指定GPU运行
    通过设置 CUDA_VISIBLE_DEVICES=0 环境变量,限制Ollama使用特定GPU。
3. 模型性能调优
  • 环境变量
    调整 OLLAMA_KEEP_ALIVE(控制模型内存驻留时间)和 OLLAMA_NUM_PARALLEL(并发请求数)提升效率。

五、参考文档

通过以上步骤,可快速实现本地大模型的部署与应用开发。若需进一步优化或解决特定问题,建议查阅相关文档或社区讨论。