iT邦幫忙

2025 iThome 鐵人賽

DAY 20
0

https://ithelp.ithome.com.tw/upload/images/20250929/20163257ruXs097ujp.jpg

1️⃣ Open WebUI 是什麼?

Open WebUI (前身為 Ollama WebUI) 是一個開源專案,旨在為本地運行的大型語言模型(如通過 Ollama 運行的模型)提供一個功能豐富、美觀且使用者友善的網頁介面。它不僅僅是一個聊天視窗,更是一個強大的、可擴展的平台,支援 RAG(檢索增強生成)、多模態、多人協作、模型管理等進階功能
對於開發者而言,Open WebUI 的價值在於其清晰的架構和標準化的 API,使其能夠輕鬆地被整合、自訂和擴展

主要功能

  • 支援多模型(Ollama、OpenAI API、Anthropic 等)
  • 支援聊天歷史、上下文記憶
  • 插件系統(可自訂功能)
  • 支援多人帳號
  • 支援圖片、檔案上傳與處理
  • 支援本地與遠端 API 串接

2️⃣ 中文架構圖(文字版)

[ 瀏覽器 ]
     ↓
[ Open WebUI 網頁介面 ]
     ↓
[ Ollama / OpenAI / Hugging Face / 其他 LLM API ]
     ↓
[ AI 推理回覆 ]

它就像 ChatGPT 的本地版網頁 UI 可以自己選擇要連接哪個模型,甚至自己部署在內網

3️⃣ 安裝方法

使用 Docker 安裝

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

安裝完成後,開啟瀏覽器訪問: http://localhost:3000

與 Ollama 搭配

如果已安裝 Ollama,可以在 Open WebUI 設定頁面中輸入

Ollama API URL: http://host.docker.internal:11434

4️⃣ 基本使用流程

  • 打開瀏覽器訪問 Open WebUI
  • 建立帳號並登入
  • 在「模型」設定中選擇:
    • 本地模型(Ollama)
    • 雲端模型(OpenAI、Claude)
  • 開始聊天、管理模型、上傳文件

5️⃣ Python API 調用範例(連接 Open WebUI)

如果啟用 Open WebUI API,可以直接從 Python 呼叫:

import requests

response = requests.post(
    "http://localhost:3000/api/chat",
    headers={"Authorization": "Bearer <你的API金鑰>"},
    json={
        "model": "llama3",
        "messages": [
            {"role": "user", "content": "請用中文介紹 Open WebUI"}
        ]
    }
)
print(response.json())

6️⃣ JavaScript 調用範例

const response = await fetch("http://localhost:3000/api/chat", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <你的API金鑰>"
  },
  body: JSON.stringify({
    model: "llama3",
    messages: [{ role: "user", content: "請簡短介紹 Open WebUI" }]
  })
});
console.log(await response.json());

7️⃣ 適用場景

  • 個人 AI 助手(私有化)
  • 公司內網 AI 系統
  • 多模型管理與切換
  • AI 團隊協作

8️⃣ 中文小結

  • Open WebUI = LLM 的圖形化管理與聊天平台
  • 搭配 Ollama 可完全本地運行
  • 適合需要可視化、多人使用、私有部署的場景

Open WebUI 不僅是一個簡單的聊天介面,它是一個為開發者設計的、高度可擴展的 LLM 應用平台。通過其標準化的 Docker 部署、功能完整的後端 API 以及對 OpenAI 相容生態的支援

  • 快速部署一個功能強大的私有 ChatGPT 環境

  • 使用 Python 或任何其他語言的程式碼與其互動,實現文件管理、對話自動化等功能

  • 將其作為統一的操作前端,連接和管理來自 Ollama 或其他推理服務的眾多模型

  • 通過修改其開源的前後端程式碼,進行深度自訂,以滿足特定的業務需求

對於任何希望在本地 LLM 基礎上建構應用程式的開發者來說,理解和利用 Open WebUI 的這些特性將會是一個巨大的助力


上一篇
Day19-Ollama
系列文
AI咒術迴戰~LLM絕對領域展開20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言