Ollama 聊天模型节点常见问题#
以下是 Ollama 聊天模型节点的一些常见错误和问题,以及解决或排查这些问题的步骤。
处理参数#
Ollama 聊天模型节点是一个子节点。子节点在使用表达式处理多个项目时与其他节点的行为不同。
大多数节点,包括根节点,接受任意数量的项目作为输入,处理这些项目,并输出结果。您可以使用表达式引用输入项目,节点会依次为每个项目解析表达式。例如,给定五个名称值的输入,表达式{{ $json.name }}
会依次解析为每个名称。
在子节点中,表达式总是解析为第一个项目。例如,给定五个名称值的输入,表达式{{ $json.name }}
总是解析为第一个名称。
无法连接到远程 Ollama 实例#
Ollama 聊天模型节点支持 Bearer 令牌身份验证,用于连接身份验证代理(如 Open WebUI)后面的远程 Ollama 实例。
对于远程身份验证连接,请在您的 Ollama 凭证中配置远程 URL 和 API 密钥。
请按照 Ollama 凭证说明了解更多信息。
使用 Docker 时无法连接到本地 Ollama 实例#
Ollama 聊天模型节点使用 Ollama 凭证定义的基本 URL 连接到本地托管的 Ollama 实例。当您在 Docker 中运行 n8n 或 Ollama 时,需要配置网络以便 n8n 可以连接到 Ollama。
Ollama 通常监听本地网络地址 localhost
上的连接。在 Docker 中,默认情况下,每个容器都有自己的 localhost
,只能从容器内部访问。如果 n8n 或 Ollama 在容器中运行,它们将无法通过 localhost
连接。
解决方案取决于您如何托管这两个组件。
如果只有 Ollama 在 Docker 中#
如果只有 Ollama 在 Docker 中运行,请通过在容器内绑定到 0.0.0.0
来配置 Ollama 监听所有接口(官方镜像已经这样配置了)。
运行容器时,使用 -p
标志发布端口。默认情况下,Ollama 运行在端口 11434,所以您的 Docker 命令应该如下所示:
1 |
|
配置 Ollama 凭证时,localhost
地址应该可以正常工作(将基本 URL设置为 http://localhost:11434
)。
如果只有 n8n 在 Docker 中#
如果只有 n8n 在 Docker 中运行,请通过在主机上绑定到 0.0.0.0
来配置 Ollama 监听所有接口。
如果您在 Linux 上的 Docker 中运行 n8n,启动容器时使用 --add-host
标志将 host.docker.internal
映射到 host-gateway
。例如:
1 |
|
如果您使用 Docker Desktop,这会自动为您配置。
配置 Ollama 凭证时,使用 host.docker.internal
作为主机地址而不是 localhost
。例如,要绑定到默认端口 11434,您可以将基本 URL 设置为 http://host.docker.internal:11434
。
如果 Ollama 和 n8n 在单独的 Docker 容器中运行#
如果 n8n 和 Ollama 都在 Docker 的单独容器中运行,您可以使用 Docker 网络连接它们。
通过在容器内绑定到 0.0.0.0
来配置 Ollama 监听所有接口(官方镜像已经这样配置了)。
配置 Ollama 凭证时,使用 Ollama 容器的名称作为主机地址而不是 localhost
。例如,如果您将 Ollama 容器称为 my-ollama
并且它监听默认端口 11434,您将基本 URL 设置为 http://my-ollama:11434
。
如果 Ollama 和 n8n 在同一个 Docker 容器中运行#
如果 Ollama 和 n8n 在同一个 Docker 容器中运行,localhost
地址不需要任何特殊配置。您可以配置 Ollama 监听 localhost,并在 n8n 中的 Ollama 凭证中配置基本 URL 使用 localhost:http://localhost:11434
。
错误:connect ECONNREFUSED ::1:11434#
当您的计算机启用了 IPv6,但 Ollama 监听 IPv4 地址时,会出现此错误。
要解决此问题,请将 Ollama 凭证中的基本 URL 更改为连接到 127.0.0.1
(IPv4 特定的本地地址),而不是可以解析为 IPv4 或 IPv6 的 localhost
别名:http://127.0.0.1:11434
。
Ollama 和 HTTP/HTTPS 代理#
Ollama 在其配置中不支持自定义 HTTP 代理。这使得在自定义 HTTP/HTTPS 代理后面使用 Ollama 变得困难。根据您的代理配置,即使设置了 HTTP_PROXY
或 HTTPS_PROXY
环境变量,它可能根本无法工作。
请参考 Ollama 的常见问题了解更多信息。
🚀 与作者交流

📚 教程 💡 案例 🔧 技巧

⚡ 快答 🎯 定制 🚀 支持