wordpress 刪除略縮圖關(guān)鍵詞seo優(yōu)化公司
Open WebUI 是一個(gè)擴(kuò)展性強(qiáng)、功能豐富且用戶(hù)友好的自托管 WebUI,旨在完全離線(xiàn)操作。它支持各種 LLM 服務(wù),包括 Ollama 和 OpenAI 兼容的 API。該項(xiàng)目在 GitHub 上已有 38k 星,非常受歡迎。
功能介紹
廢話(huà)不多說(shuō),上圖!
-
多模型:支持多模型同時(shí)對(duì)話(huà),比較不同模型的輸出結(jié)果。
-
圖文對(duì)話(huà):支持圖文對(duì)話(huà)功能(需模型支持多模態(tài)輸入),示例:
-
文檔 RAG:自帶文檔 RAG 功能,對(duì)所有模型有效:
-
語(yǔ)音輸入和輸出:支持語(yǔ)音輸入和輸出。
-
網(wǎng)頁(yè)鏈接對(duì)話(huà):支持使用網(wǎng)頁(yè)鏈接對(duì)話(huà),通過(guò)
#
+ 鏈接,自動(dòng)下載頁(yè)面進(jìn)行 RAG 檢索,示例: -
端側(cè)運(yùn)行 Python:使用 WebAssembly 技術(shù),在用戶(hù)側(cè)運(yùn)行 Python 代碼,示例:
此外,還有很多功能,比如對(duì)話(huà)分享,工具 Pipeline 等,我們后續(xù)介紹。
特別一提這里的端側(cè)技術(shù):
端側(cè)技術(shù)能極大降低用戶(hù)跑代碼的門(mén)檻,用戶(hù)不需要配環(huán)境,裝軟件,有瀏覽器就行,甚至手機(jī)瀏覽器也可以跑代碼。端側(cè)技術(shù)能給非計(jì)算機(jī)專(zhuān)業(yè)的群體帶來(lái)有更好的體驗(yàn),同時(shí)不需要網(wǎng)站提供者提供計(jì)算資源,避免了安全管理,資源維護(hù),并發(fā)處理等問(wèn)題。不過(guò) Open WebUI 目前僅支持 Python 代碼,希望未來(lái)能支持更多語(yǔ)言。
一個(gè)簡(jiǎn)單的例子,打開(kāi)這個(gè)網(wǎng)頁(yè),就能運(yùn)行 Jupyter,在任何設(shè)備上,且不會(huì)占用服務(wù)器資源。
后邊有機(jī)會(huì)開(kāi)坑 WebAssembly 技術(shù)的介紹和教程,相關(guān)閱讀:
- awesome-wasm-langs:WebAssembly 支持的語(yǔ)言列表
- JSage:運(yùn)行 SageMath 等復(fù)雜數(shù)學(xué)包的方式
安裝教程
推薦用 Docker 安裝,方便管理和后續(xù)升級(jí),OpenWebUI 的文檔 也提供了使用 pip 以及源碼安裝的方法。
安裝 docker-compose,比如 Ubuntu 系統(tǒng):
# 安裝 docker
sudo apt install docker -y
# 安裝 docker-compose
curl -L https://github.com/docker/compose/releases/download/v2.22.0/docker-compose-$(uname -s)-$(uname -m) -o ./docker-compose
chmod +x ./docker-compose
sudo mv ./docker-compose /usr/bin
然后,在存放服務(wù)的位置,編寫(xiě) docker-compose.yml
文件:
sudo mkdir -p /srv/open-webui
cd /srv/open-webui
sudo vim docker-compose.yml
填入以下內(nèi)容:
version: '3.8'services:open-webui:image: ghcr.io/open-webui/open-webui:maincontainer_name: open-webuirestart: alwaysports:- "8080:8080"volumes:- ./open-webui:/app/backend/dataenvironment:OPENAI_API_BASE_URLS: ${OPENAI_API_BASE_URLS}OPENAI_API_KEYS: ${OPENAI_API_KEYS}OLLAMA_BASE_URL: ${OLLAMA_BASE_URL}WEBUI_SECRET_KEY: ${WEBUI_SECRET_KEY}HF_ENDPOINT: "https://hf-mirror.com"
服務(wù)默認(rèn)端口為 8080,可以根據(jù)需要修改,比如改成 3080:8080
。
接下來(lái),在同一目錄下,編輯 .env
文件,填入相應(yīng)的環(huán)境變量。例如,用于配置代理 OpenAI 的 API:
# 多個(gè)鏈接用分號(hào) ; 分隔
OPENAI_API_BASE_URLS="..."
OPENAI_API_KEYS="sk-..."
如果服務(wù)器配了 Ollama,可以設(shè)置 Ollama 的 API:
OLLAMA_BASE_URL="..."
API 的配置和獲取可以參考:
- 零資源跑大模型:Hugging Face API + LiteLLM + Flask
- 大模型 API 推理全指南 | OneAPI + Ollama + vLLM + ChatTool
當(dāng)然,如果僅使用 GPT 模型,可以直接找代理站,花錢(qián)省事。
可選且推薦設(shè)置的環(huán)境變量:
# 訪問(wèn)端口,默認(rèn)為 8080,與 docker-compose.yml 中的端口對(duì)應(yīng)
PORT=8080
# 允許管理員訪問(wèn)用戶(hù)聊天記錄,默認(rèn)為 true,建議設(shè)置為 false
ENABLE_ADMIN_CHAT_ACCESS=false
# 瀏覽器標(biāo)簽顯示的名稱(chēng)
WEBUI_NAME=
# 啟動(dòng)時(shí)的默認(rèn)模型
DEFAULT_MODEL="..."
# 默認(rèn)角色,支持 admin/user/pending 三種,對(duì)應(yīng)管理員,普通用戶(hù)和待審核用戶(hù)
DEFAULT_USER_ROLE=pending
其中,默認(rèn)模型和角色在管理員頁(yè)面可以重新修改。
以上列舉了幾個(gè)常用變量的設(shè)置,完整選項(xiàng)可以在這里找到。其中涉及 Pipline 等需進(jìn)一步配置才能啟用的特性,我們?cè)诤罄m(xù)更新中介紹。
最后,啟動(dòng)服務(wù):
sudo docker-compose up -d
訪問(wèn)服務(wù)后,首次注冊(cè)的用戶(hù)會(huì)被設(shè)置為管理員,管理員可以修改網(wǎng)站設(shè)置,以及修改其他用戶(hù)角色。
另外,所有聊天記錄存儲(chǔ)在云端。
Nginx 反向代理
設(shè)置 Nginx 反向代理,以便通過(guò)域名訪問(wèn),比如 webui.example.com
。參考配置如下:
server {listen 443 ssl;server_name webui.example.com;ssl_certificate ...;ssl_certificate_key ...;location / {proxy_pass http://localhost:3080; # 與 docker-compose.yml 中的端口對(duì)應(yīng)}
}server {listen 80;server_name webui.example.com;return 301 https://$host$request_uri;
}
關(guān)于 ssl 證書(shū)的配置,可以參考之前寫(xiě)的博文 Let‘s Encrypt 域名證書(shū)增強(qiáng)網(wǎng)站安全。
高級(jí)特性
函數(shù)調(diào)用,Pipeline 以及文生圖等功能,后續(xù)再更新介紹~(TODO)