以下的本地 LLM 環境進行構建。

構成圖

Docker 是什麼

Docker 是容器虛擬化技術的實現。

Ollama 是什麼

Ollama 是本地 LLM 的執行環境。可以在本地運行各種 LLM。

Open WebUI 是什麼

Open WebUI 是 AI 的圖形化使用者介面。與 Ollama 可以輕鬆整合。

安裝 Docker

如果尚未安裝 Docker,請先安裝 Docker。

安裝 NVIDIA Container Toolkit

如果使用 NVIDIA 的 GPU,可以安裝 NVIDIA Container Toolkit 以提升運行速度。

# 安裝 NVIDIA Container Toolkit
$ curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
    | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
$ curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
    | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
    | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
$ sudo apt update
$ sudo apt install -y nvidia-container-toolkit

# 啟用 NVIDIA Container Toolkit
$ sudo nvidia-ctk runtime configure --runtime=docker
$ sudo systemctl restart docker

建立 docker-compose.yml

建立如下所示的 docker-compose.yml 文件。

services:
  ollama:
    image: ollama/ollama
    container_name: ollama
    ports:
      - 11434:11434
    volumes:
      - ./ollama/.ollama:/root/.ollama
    restart: always
    # 若使用 NVIDIA 的 GPU,請從這裡開始
    deploy:
      resources:
        reservations:
          devices:
            - capabilities: [gpu]
    # 到這裡為止
  openwebui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    ports:
      - 3000:8080
    volumes:
      - ./open-webui/data:/app/backend/data
    restart: always
    depends_on:
      - ollama
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434

執行以下命令以啟動 docker-compose.yml 的內容為容器。

$ docker compose up -d

安裝 LLM

安裝喜歡的 LLM。

以下是安裝的範例。

# 安裝 gpt-oss
$ docker exec -it ollama ollama run gpt-oss:20b

# 完成後輸入以下指令退出提示符
>>> /bye

由於模型的大小,下載量會相當龐大,請注意。

訪問 Open WebUI

稍等片刻後,訪問 http://localhost:3000/,將顯示如以下的驚人畫面,可以開始使用。

Open WebUI

會顯示帳戶創建畫面,請創建帳戶。(因為是本地環境,若只是試用可以隨便輸入)

Open WebUI

會顯示可以進行詢問的畫面。

Open WebUI

可以嘗試進行提問。

Open WebUI

完成本地 LLM 環境的構建。

其他

# 檢查已安裝的模型
$ docker exec -it ollama ollama list

# 卸載 gpt-oss
$ docker exec -it ollama ollama rm gpt-oss:20b

原文出處:https://qiita.com/kkawaharanet/items/b80d7cde49364aa94963


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝10   💬6   ❤️6
455
🥈
我愛JS
📝1   💬5   ❤️4
94
🥉
AppleLily
📝1   💬4   ❤️1
55
#4
💬1  
5
#5
xxuan
💬1  
3
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次