系列文章目錄
往期文章回顧:
【LLM】二、python調用本地的ollama部署的大模型
【LLM】一、利用ollama本地部署大模型
目錄
前言
一、open-webui是什么
二、安裝
1.docker安裝
2.源碼安裝
三、使用
四、問題匯總
總結
前言
? ? ? ? 前面的文章,我們已經學習了如何在本地搭建并調用自己大模型,今天我們的主要內容是通過open-webui+Ollama來搭建一個聊天機器人的前端頁面。? ? ? ??
一、open-webui是什么
? ? ? ?官網地址:open- webUI
????????Open WebUI 是一個可擴展、功能豐富且用戶友好的自托管 WebUI,旨在完全離線運行。它支持各種 LLM 運行器,包括 Ollama 和 OpenAI 兼容 API。
二、安裝
1.docker安裝
這里直接參考官方文檔,安裝即可。這里我推薦使用下面這條命令:
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
其中,涉及到的參數解釋如下:
- -p 端口映射:將本地機器的端口 3000 映射到容器內的端口 8080。這意味著你可以通過訪問
http://localhost:3000
來訪問運行在容器內的服務。如果你的Ollama監聽的端口是其他的,比如1001,那就改為-p 1001:8000即可,以此類推 - -e?OLLAMA_BASE_URL=https://example.com 是添加我們的Ollama服務,http://example.com改為自己的服務地址即可。
- - v 目錄掛載:將本地的
open-webui
卷映射到容器內的/app/backend/data
目錄。這用于持久化數據,確保即使容器停止或重新啟動,數據也不會丟失。注意,open-webui不是固定的,你可以設置為任何存在的目錄 - --name 起名:為容器指定一個名稱,如?
open-webui,可通過docker ps -a 來查看所有的容器狀況
--restart
: 設置容器的重啟策略,若為?always
,這意味著容器如果停止(例如由于崩潰或系統重啟),Docker 會自動重啟它。- 其余參數用默認的即可
2.源碼安裝
????????如果你不想用docker的方式安裝,那就自己用源碼去編譯安裝,參考鏈接為源碼安裝
三、使用
- ?按照上述方式部署成功后,在瀏覽器輸入http:localhost:3000之后,首先會先讓你注冊,注冊時,郵箱可以隨便填,填123@123.com都可以,注冊并登陸成功后進入如下界面:
????????
- 默認情況下界面時英文狀態,點擊紅框中的設置鍵進入設置界面,如下:
????????
????????在通用里選擇語言為中文然后點擊保存即可漢化。
- 在連接里我們可以綁定open AI的密鑰或者我們用ollama自己部署的本地模型,如下:
????????
????????這里我用的是Ollama服務,對應的URL即為我們docker 啟動命令里的-e?OLLAMA_BASE_URL=這個參數,如果啟動命令里沒指定也可以在這里加入。
- 設置完這里之后我們就可以回到主界面進行使用,先選擇我們要調用的模型,如下:
????????
????????點擊紅框中的按鈕即可選擇我們本地已有的模型,選擇一個然后即可開始對話,同時,聊天機器人窗口也會在左下方保存,如上圖中的qwen2_7b即為我自己的聊天機器人窗口。
四、問題匯總
1、第一次啟動容器之后,在瀏覽器輸入http:localhost:3000,發現進入失敗,容器也直接崩潰重啟,通過打印docker 日志(docker logs 容器ID),爆出如下錯誤:? ? ???????
解決辦法:
docker啟動時,命令改為如下:
docker run -d -p 3000:8080 -e HF_ENDPOINT=https://hf-mirror.com -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
即增加一條指令:-e HF_ENDPOINT=https://hf-mirror.com
2、當在設置中添加Ollama的URL時沒有生效
? ? ? ? 在如下設置里添加Ollama的URL后,點擊保存發現也沒有生效
????????????????
? ? ? ? 解決辦法:
? ? ? ? 用以下命令重新啟動容器
docker restart 容器ID(通過docker ps -a查詢容器ID)
? ? ? ??
總結
以上就是本篇的全部內容,如有問題,歡迎評論區交流,或+企鵝群:995760755交流,如覺得有用,直接三連帶回家。🐶