接入 Ollama 部署的本地模型
Last updated
Last updated
Ollama 是一款跨平台推理框架客户端(MacOS、Windows、Linux),专为无缝部署大型语言模型(LLM)(如 Llama 2、Mistral、Llava 等)而设计。通过一键式设置,Ollama 可以在本地运行 LLM,将所有交互数据保存在自己的机器上,从而提高数据的私密性和安全性。
下载 Ollama
访问 Ollama 下载页,下载对应系统 Ollama 客户端。
运行 Ollama 并与 Llama3.2 聊天
启动成功后,ollama 在本地 11434 端口启动了一个 API 服务,可通过 http://localhost:11434
访问。
如需运行其它模型,访问 Ollama Models 了解详情。
在 Dify 中接入 Ollama
在 设置 > 模型供应商 > Ollama
中填入:
模型名称:llama3.2
基础 URL:http://<your-ollama-endpoint-domain>:11434
此处需填写 Ollama 服务地址。如果填写公开 URL 后仍提示报错,请参考常见问题,修改环境变量并使得 Ollama 服务可被所有 IP 访问。
若 Dify 为 Docker 部署,建议填写局域网 IP 地址,例如:http://192.168.1.100:11434
或 Docker 容器的内部 IP 地址,例如:http://host.docker.internal:11434
。
若为本地源码部署,可填写 http://localhost:11434
。
模型类型:对话
模型上下文长度:4096
模型的最大上下文长度,若不清楚可填写默认值 4096。
最大 token 上限:4096
模型返回内容的最大 token 数量,若模型无特别说明,则可与模型上下文长度保持一致。
是否支持 Vision:是
当模型支持图片理解(多模态)勾选此项,如 llava
。
点击 "保存" 校验无误后即可在应用中使用该模型。
Embedding 模型接入方式与 LLM 类似,只需将模型类型改为 Text Embedding 即可。
使用 Ollama 模型
进入需要配置的 App 提示词编排页面,选择 Ollama 供应商下的 llava
模型,配置模型参数后即可使用。
这个错误是因为 Docker 容器无法访问 Ollama 服务。localhost 通常指的是容器本身,而不是主机或其他容器。要解决此问题,你需要将 Ollama 服务暴露给网络。
如果 Ollama
作为 macOS
应用程序运行,则应使用以下命令设置环境变量 launchctl
:
通过调用 launchctl setenv
设置环境变量:
重启 Ollama 应用程序。
如果以上步骤无效,可以使用以下方法:
问题是在 docker 内部,你应该连接到 host.docker.internal
,才能访问 docker 的主机,所以将 localhost
替换为 host.docker.internal
服务就可以生效了:
如果 Ollama 作为 systemd 服务运行,应该使用 systemctl
设置环境变量:
通过调用 systemctl edit ollama.service
编辑 systemd 服务。这将打开一个编辑器。
对于每个环境变量,在 [Service]
部分下添加一行 Environment
:
保存并退出。
重载 systemd
并重启 Ollama:
在 Windows 上,Ollama 继承了你的用户和系统环境变量。
首先通过任务栏点击 Ollama 退出程序
从控制面板编辑系统环境变量
为你的用户账户编辑或新建变量,比如 OLLAMA_HOST
、OLLAMA_MODELS
等。
点击 OK / 应用保存
在一个新的终端窗口运行 ollama
Ollama 默认绑定 127.0.0.1 端口 11434。通过 OLLAMA_HOST
环境变量更改绑定地址。
如需获取 Ollama 更多信息,请参考