目錄

Open WebUI 教學:幫 Ollama 加上 ChatGPT 般的網頁介面

終端機對話很方便,但要分享給家人或同事使用,就需要一個網頁介面。Open WebUI 是最熱門的開源選擇,介面和 ChatGPT 很像,而且功能豐富:

  • 對話紀錄、多模型切換、Markdown 與程式碼顯示
  • 上傳文件,讓模型根據文件回答(內建 RAG)
  • 多使用者帳號與權限管理
  • 自訂模型(系統提示詞、參數)
  • 支援 Ollama,也支援 OpenAI 相容的 API

用 Docker 安裝(建議)

Ollama 已經裝在本機時:

docker run -d --name open-webui \
  -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --restart always \
  ghcr.io/open-webui/open-webui:main

打開 http://localhost:3000。第一次開啟時建立的帳號會成為管理員。

  • --add-host=host.docker.internal:host-gateway:讓容器可以連到主機上的 Ollama(Linux 需要;Docker Desktop 本身就支援這個名稱)。
  • -v open-webui:/app/backend/data:保存帳號、對話紀錄與設定。

想把 Ollama 和 Open WebUI 都用 Docker 跑,請使用 用 Docker 執行 Ollama 中的 Compose 範例。

用 pip 安裝

不想用 Docker 時(需要 Python 3.11):

pip install open-webui
open-webui serve

預設網址是 http://localhost:8080。

連不到 Ollama?

進入 管理員設定 → 連線,確認 Ollama API 的位址:

情況位址
Open WebUI 在 Docker、Ollama 在主機http://host.docker.internal:11434
兩者都在同一個 Composehttp://ollama:11434
兩者都直接裝在主機http://localhost:11434
Ollama 在另一台電腦http://那台電腦的IP:11434(該電腦需設定 OLLAMA_HOST=0.0.0.0)

在 Linux 上,主機的 Ollama 預設只監聽 127.0.0.1,容器可能連不到。可以把 OLLAMA_HOST 設為 0.0.0.0(並用防火牆限制外部連線),或用 --network host 執行 Open WebUI,此時網址改為 http://localhost:8080。

基本使用

  1. 左上角選擇模型。已下載的 Ollama 模型會自動出現。
  2. 管理員也可以在模型選單中直接輸入名稱下載新模型(例如 qwen3:8b)。
  3. 對話紀錄會保存在左側欄。

上傳文件問答

在對話框點選 + 上傳 PDF、Word、文字檔,然後直接詢問文件內容。Open WebUI 會自動切塊、產生嵌入並檢索相關段落。

想長期使用同一批文件,可以在 工作區 → 知識庫 建立知識庫,對話時用 # 引用。

建議到 管理員設定 → 文件 中把嵌入模型改成多語言模型(例如透過 Ollama 使用 bge-m3),中文文件的檢索效果會更好。原理說明見 文字嵌入與 RAG。

自訂模型

工作區 → 模型 → 新增,可以基於任一模型設定:

  • 系統提示詞(例如「一律使用繁體中文」)
  • 參數(temperature、上下文長度)
  • 預設綁定的知識庫

做好的模型會出現在所有使用者的模型選單中,例如「客服助理」、「程式碼審查」。

多人使用

  • 管理員設定 → 使用者:新使用者註冊後預設是「待審核」,管理員核准後才能使用。
  • 可以設定使用者群組,以及每個群組能使用哪些模型。
  • 要讓區網內的其他人使用,讓他們連到 http://你的電腦IP:3000。

要開放到網際網路時,請在前面加上 HTTPS 反向代理,並關閉公開註冊。

更新

docker pull ghcr.io/open-webui/open-webui:main
docker rm -f open-webui
# 用原本的 docker run 指令重新建立;資料在 Volume 中不會遺失

常見問題

模型清單是空的

Open WebUI 連不到 Ollama,依照上方「連不到 Ollama」檢查位址。可以在容器內測試:

docker exec open-webui curl -s http://host.docker.internal:11434/api/tags

回答很慢

Open WebUI 只是介面,速度取決於 Ollama 與你的硬體,請參考 GPU 與效能調校。

忘記管理員密碼

管理員密碼存在 Volume 中的資料庫裡。最簡單的方法是由其他管理員重設;只有一個管理員時,請參考 Open WebUI 官方文件的重設密碼說明。

更新於 2026年10月12日