chat-ollama icon indicating copy to clipboard operation
chat-ollama copied to clipboard

chatollama无法拉取模型,报unexpected token "C","ChatOllama"...is not valid JSON

Open Dorawen opened this issue 10 months ago • 17 comments

chatollama运行在docker上,ollama运行在windows本地,http://[localhost:11434 ollama命令拉取模型并运行正常。在chatollama上设置http://127.0.0.1:11434或http://host.docker.internal:11434 都无法拉取模型 chatollama报错

Dorawen avatar Mar 31 '24 17:03 Dorawen

docker-compose.yaml chatollama报错2

Dorawen avatar Mar 31 '24 18:03 Dorawen

您好,我也是遇到這樣的問題,我的ollama是直接裝在本機電腦上,不是用docker,而chatollama是用您的docker-compose.yaml裝起來的,yaml內容跟樓上的一樣。

錯誤訊息供您參考一下:

2024-04-02 20:55:10 Listening on http://[::]:3000 2024-04-02 20:55:21 Ollama: { host: 'http://127.0.0.1:11434', username: null, password: null } 2024-04-02 20:55:21 Ollama: { host: 'http://127.0.0.1:11434', username: null, password: null } 2024-04-02 20:55:21 ChatOllama is unable to establish a connection with http://127.0.0.1:11434, please check: 2024-04-02 20:55:21 1. Is Ollama server running ? (run ollama serve in terminal to start the server) 2024-04-02 20:55:21 2. Can the server where ChatOllama is located connect to http://127.0.0.1:11434 ? 2024-04-02 20:55:32 Ollama: { host: 'http://127.0.0.1:11434', username: null, password: null } 2024-04-02 20:55:32 Ollama: { host: 'http://127.0.0.1:11434', username: null, password: null } 2024-04-02 20:55:32 ChatOllama is unable to establish a connection with http://127.0.0.1:11434, please check: 2024-04-02 20:55:32 1. Is Ollama server running ? (run ollama serve in terminal to start the server) 2024-04-02 20:55:32 2. Can the server where ChatOllama is located connect to http://127.0.0.1:11434 ?

另外我有注意到您有提到要把ollama server 設定為 http://host.docker.internal:11434 ,能否詳細說明一下應該如何設定呢?

謝謝

nicky2983 avatar Apr 02 '24 13:04 nicky2983

@nicky2983 问题是出在 docker 里面的 chat-ollama 无法访问到 http://127.0.0.1:11434

satrong avatar Apr 02 '24 13:04 satrong

@nicky2983 问题是出在 docker 里面的 chat-ollama 无法访问到 http://127.0.0.1:11434

謝謝回覆,那麼請問是需要把ollama server 設定為 http://host.docker.internal:11434/ 才有辦法解決嗎? 能否教我一下該如何設定這個?

nicky2983 avatar Apr 02 '24 13:04 nicky2983

抱歉哦,docker 我不熟,我的理解是 docker 无法访问宿主机,所以你要解决的方向就是如何让 docker 访问你宿主机里面的 ollama 服务

satrong avatar Apr 02 '24 13:04 satrong

@nicky2983 @Dorawen

请首先确认下你们使用的Docker版本。最新版本的桌面版Docker是支持 host.docker.internal 域名访问本地host - https://docs.docker.com/desktop/networking/

The host has a changing IP address, or none if you have no network access. We recommend that you connect to the special DNS name host.docker.internal, which resolves to the internal IP address used by the host.

如果还是不行的话,或许参考以下帖子尝试一下

https://stackoverflow.com/questions/40746453/how-to-connect-to-docker-host-from-container-on-windows-10-docker-for-windows

sugarforever avatar Apr 03 '24 00:04 sugarforever

@nicky2983 重新安装docker后,本地可以ping通容器,但是容器ping不同本地,不过更新了docker版本后,配置chatollama host:http://host.docker.internal:11434就能访问本地ollama模型了。 屏幕截图 2024-04-03 151031

@sugarforever 谢谢指导

Dorawen avatar Apr 03 '24 07:04 Dorawen

@Dorawen 您好,我的docker版本是最新的, 25.0.3 ,主要是看不太懂如何配置 chatollama host 這一塊,可以請教一下具體做法是什麼嗎?

nicky2983 avatar Apr 03 '24 07:04 nicky2983

我試了一下這個方式但是不行:

extra_hosts:
      - "host.docker.internal:host-gateway"

nicky2983 avatar Apr 03 '24 07:04 nicky2983

我試了一下這個方式但是不行:

extra_hosts:
      - "host.docker.internal:host-gateway"

docker 容器使用的是独立的网络栈,就是容器内的 127.0.0.1 和主机的 127.0.0.1 是两个独立的环境,是不能相互访问的。

如果你本机的 IP 地址是 192.168.0.10,你可以配置环境变量或者用下面的命令启动

OLLAMA_HOST=192.168.0.10 ollama serve

recall704 avatar Apr 04 '24 05:04 recall704

请问有人是在ubuntu系统用的吗,我也出现这个问题,将ollama也用docker启动也不行,也是一样的报错

iaoxuesheng avatar Apr 06 '24 07:04 iaoxuesheng

@nicky2983 重新安装docker后,本地可以ping通容器,但是容器ping不同本地,不过更新了docker版本后,配置chatollama host:http://host.docker.internal:11434就能访问本地ollama模型了。 屏幕截图 2024-04-03 151031

@sugarforever 谢谢指导

您好,请问你这个是如何设定的?

iaoxuesheng avatar Apr 06 '24 08:04 iaoxuesheng

image 遇到同样的问题

alexsunshinehao avatar Apr 08 '24 09:04 alexsunshinehao

重新安装docker后,本地可以ping通容器,但是容器ping不同本地,不过更新了docker版本后,配置chatollama host:http://host.docker.internal:11434 就能访问本地ollama模型了。 屏幕截图 2024-04-03 151031 @sugarforever 谢谢指导

您好,请问你这个是如何设定的?

image

ll975 avatar Apr 21 '24 03:04 ll975

@ll975 了解了,謝謝,設定沒問題

nicky2983 avatar Apr 22 '24 08:04 nicky2983

我試了一下這個方式但是不行:

extra_hosts:
      - "host.docker.internal:host-gateway"

docker 容器使用的是独立的网络栈,就是容器内的 127.0.0.1 和主机的 127.0.0.1 是两个独立的环境,是不能相互访问的。

如果你本机的 IP 地址是 192.168.0.10,你可以配置环境变量或者用下面的命令启动

OLLAMA_HOST=192.168.0.10 ollama serve

在环境变量中,设置OLLAMA_HOST为192.168.0.102(本机局域网IP)。重启ollama,等待浏览器中192.168.0.102:11434可以访问,即可在MaxKB中添加ollama模型。

e813519 avatar May 25 '24 10:05 e813519

在服务器docker中,改成http://host.docker.internal:11434或者添加环境变量OLLAMA_HOST=内网Ip ollama serve 重启服务器,仍然拉取不了镜像,报unexpected token "C","ChatOllama"...is not valid JSON

lovingzyz avatar Jun 09 '24 07:06 lovingzyz