硬體規格與系統需求
在開始安裝前,請確認您的Windows 11專業版系統符合以下最低需求:
CPU
64位元處理器,建議至少8核心以上。支援AVX2指令集可提升效能。
RAM
至少16GB,建議32GB或以上。大型語言模型需要大量記憶體。
儲存空間
至少50GB可用空間,建議使用SSD以提升模型載入速度。
作業系統
Windows 11 專業版 22H2 或更新版本。必須啟用Hyper-V和WSL2功能。
網路
穩定網路連線以下載Docker映像檔和語言模型。
GPU (選配)
NVIDIA GPU 8GB VRAM以上,可大幅提升推理速度。需安裝CUDA工具包。
硬體需求對照表
| 組件 | 最低需求 | 建議規格 | 最佳體驗 |
|---|---|---|---|
| CPU | 4核心 / 支援虛擬化 | 8核心 / 支援AVX2 | 12+核心 / 支援AVX-512 |
| 記憶體 | 16 GB | 32 GB | 64 GB 或更多 |
| 儲存空間 | 50 GB 可用空間 | 100 GB SSD | 500 GB NVMe SSD |
| GPU | 整合顯示卡 | NVIDIA RTX 3060 12GB | NVIDIA RTX 4090 24GB |
安裝前置需求
1 啟用Windows Hyper-V與WSL2
Windows Subsystem for Linux 2 (WSL2) 是運行Docker的必要條件。
# 以系統管理員身份開啟PowerShell,執行以下指令: dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
2 安裝WSL2與Linux發行版
重啟後,繼續執行以下指令:
# 設定WSL2為預設版本 wsl --set-default-version 2 # 安裝Ubuntu LTS版本(或其他您偏好的發行版) wsl --install -d Ubuntu # 查看已安裝的WSL發行版 wsl -l -v
3 安裝Docker Desktop for Windows
前往Docker官方網站下載並安裝Docker Desktop:
安裝完成後,確認Docker正常運作:
# 開啟PowerShell或命令提示字元,執行: docker --version docker-compose --version docker run hello-world
安裝與配置 Open WebUI 和 Ollama
1 安裝 Ollama (Windows版)
Ollama 可以透過Windows安裝程式或指令行安裝:
或者使用指令行安裝:
# 在PowerShell中執行以下指令 curl -fsSL https://ollama.com/install.sh | sh # 安裝完成後,啟動Ollama服務 ollama serve # 保持此終端機開啟,另開一個終端機進行後續操作
2 下載語言模型
Ollama 支援多種開源語言模型,以下是一些推薦的模型:
Llama 3.1 8B
Meta最新發佈的Llama 3.1系列,8B參數版本,適合一般用途。
ollama pull llama3.1:8b
Mistral 7B
高效能7B模型,在許多基準測試中表現優異,記憶體需求較低。
ollama pull mistral
Gemma 2B
Google的輕量級模型,適合硬體規格較低的系統。
ollama pull gemma:2b
3 建立 docker-compose.yml 檔案
建立一個專案目錄,並在其中建立 docker-compose.yml 檔案:
version: '3.8'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080" # 將左側的3000改為您想要的本地端口
environment:
- "OLLAMA_BASE_URL=http://host.docker.internal:11434" # 連接本機Ollama
- "WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY:-default_secret_key_change_me}" # 請更改此密鑰
- "WEBUI_NAME=Local AI Assistant"
- "WEBUI_URL=http://localhost:3000"
volumes:
- open-webui-data:/app/backend/data
depends_on:
- ollama
restart: unless-stopped
networks:
- ai-network
ollama:
image: ollama/ollama:latest
container_name: ollama
ports:
- "11434:11434"
volumes:
- ollama-data:/root/.ollama
- ./ollama-models:/root/.ollama/models # 掛載模型目錄方便管理
environment:
- "OLLAMA_KEEP_ALIVE=24h"
- "OLLAMA_HOST=0.0.0.0"
restart: unless-stopped
networks:
- ai-network
# 取消註解以下部分以使用GPU加速(需安裝NVIDIA容器工具包)
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: all
# capabilities: [gpu]
volumes:
open-webui-data:
driver: local
ollama-data:
driver: local
networks:
ai-network:
driver: bridge
WEBUI_SECRET_KEY 的值,使用強密碼以提高安全性。您可以建立 .env 檔案來管理環境變數。
4 啟動 Open WebUI 和 Ollama 容器
在包含 docker-compose.yml 的目錄中執行:
# 進入專案目錄 cd /path/to/your/project # 啟動服務(在背景運行) docker-compose up -d # 查看容器狀態 docker-compose ps # 查看日誌 docker-compose logs -f # 停止服務 docker-compose down # 停止並刪除所有資料(謹慎使用) docker-compose down -v
測試與驗證
1 確認服務正常運行
開啟瀏覽器,訪問以下網址:
2 測試 Ollama API
使用 curl 或 PowerShell 測試 Ollama API:
# 測試 Ollama API 是否正常回應
curl http://localhost:11434/api/tags
# 使用 PowerShell 測試
Invoke-RestMethod -Uri "http://localhost:11434/api/tags" -Method Get
# 測試模型生成(將 "llama3.1:8b" 替換為您實際下載的模型)
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1:8b",
"prompt": "為什麼天空是藍色的?",
"stream": false
}'
3 設定 Open WebUI
首次訪問 Open WebUI 時,需要進行以下設定:
http://host.docker.internal:11434常見問題與解決方案
容器無法互相連接
症狀: Open WebUI 無法連接到 Ollama,顯示 "Connection refused" 或 "Cannot connect to Ollama"。
解決方案:
# 1. 檢查容器網路設定 docker network ls docker network inspect ai-network # 2. 檢查容器是否在同一網路 docker-compose ps docker inspect open-webui | grep Network docker inspect ollama | grep Network # 3. 嘗試在docker-compose.yml中使用 "host.docker.internal" 或 "gateway.docker.internal" # 4. 或者使用網路模式為 "host"(僅限Linux,Windows不支援)
記憶體不足導致容器崩潰
症狀: Ollama 容器頻繁重啟,或模型載入失敗。
解決方案:
# 1. 限制容器記憶體使用量(在docker-compose.yml中)
services:
ollama:
deploy:
resources:
limits:
memory: 8G # 根據您的系統調整
reservations:
memory: 4G
# 2. 使用較小的模型
ollama pull gemma:2b # 僅需1.6GB記憶體
# 3. 增加Windows虛擬記憶體
# 設定路徑:控制台 > 系統 > 進階系統設定 > 效能 > 進階 > 虛擬記憶體
# 4. 減少模型載入時的執行緒數(在Ollama啟動參數中)
OLLAMA_NUM_PARALLEL=2 ollama serve
GPU加速無法使用
症狀: 即使有NVIDIA GPU,推理速度仍然緩慢。
解決方案:
#1.參閱NVIDIA Container Toolkit 安裝與 GPU 加速配置指南#2. 在docker-compose.yml中啟用GPU支援(取消註解GPU部分) # 3. 重啟Docker服務 sudo systemctl restart docker # Linux # Windows: 重啟Docker Desktop # 4. 測試GPU是否可用 docker run --rm --gpus all nvidia/cuda:12.1.0-base-ubuntu22.04 nvidia-smi
檔案權限問題
症狀: 容器無法寫入掛載的卷,顯示權限錯誤。
解決方案:
# 1. 在Windows上,WSL2的檔案權限可能導致問題
# 確保專案目錄位於WSL2檔案系統中(例如 /home/username/projects)
# 而不是Windows檔案系統(如 /mnt/c/...)
# 2. 調整掛載卷的權限
# 在docker-compose.yml中指定使用者ID
services:
open-webui:
user: "1000:1000" # 替換為您的使用者ID和群組ID
# 3. 檢查目錄權限
ls -la /path/to/your/project
# 4. 更改目錄權限
chmod -R 755 /path/to/your/project
chown -R $USER:$USER /path/to/your/project