はじめに
「Fugaku-LLM」は日本が誇るスーパーコンピュータ「富岳」で学習した大規模言語モデルです。パラメーター数が13b(130億)とそこまで大きくないのでローカルで実行してみました。まっさらのUbuntu 22.04 on WSL2に「Fugaku-LLM」を動かす環境を構築するまでの全手順です。Docker Engineのインストール
こちらに従いました。インストール後に以下を実行しました。(ユーザー名は各自変更が必要です)
sudo gpasswd -a ユーザー名 docker sudo chgrp docker /var/run/docker.sock
Nvidia container toolkitのインストール
こちらに従いました。いったんここまででWSL2を再起動しました。(必要かどうかはわかりません)
モデルのダウンロード
こちらから「Fugaku-LLM-13B-instruct-0325b-q5_k_m.gguf」をダウンロードしました。Modelfileの作成
こちらをそのまま使わせて頂きました。Open WebUI と Ollama のインストール
docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
補足
Ollamaをほかでも使いたい時は別個にインストールすることも可能です。(例えばOllamaとDifyを一緒に使い時など)
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
ローカルからコンテナーにファイルを移動
アドレスは各自の環境に合わせて変更が必要です。docker cp /mnt/wsl/PHYSICALDRIVE1p1/ollama/Fugaku-LLM-13B-instruct-0325b-q5_k_m.gguf open-webui:/tmp/Fugaku-LLM-13B-instruct-0325b-q5_k_m.gguf docker cp /mnt/wsl/PHYSICALDRIVE1p1/ollama/Modelfile open-webui:/tmp/Modelfile
コンテナーに入る
docker container exec -it open-webui bash
コンテナー内でモデル情報を登録
cd /tmp ollama create fugaku-llm-13b-instruct -f ./Modelfile
ブラウザを開く
Windowsのブラウザからhttp://localhost:3000にアクセスすると使えるようになっています。2回目以降
docker start open-webui
この後にhttp://localhost:3000にアクセスするだけです。
補足1(VRAM使用量)
12GBは超えていました。![](https://cdn-ak.f.st-hatena.com/images/fotolife/t/touch-sp/20240511/20240511171611.jpg)
補足2(シェルスクリプト)
以下を記入した「〇〇.sh」というファイルを作っておけば実行が簡単です。docker start open-webui echo "access http://localhost:3000/"
実行は以下のようにします。
source 〇〇.sh
「source」は「.」で置き換え可能です。
. 〇〇.sh
ターミナルに出力されたアドレスのところでCtrlを押しながらマウスを左クリックすると勝手にブラウザが立ち上がります。
![このエントリーをはてなブックマークに追加](https://b.st-hatena.com/images/v4/public/entry-button/button-only@2x.png)