はじめに
まっさらのUbuntu 22.04 on WSL2に「Dify」を動かす環境を構築するまでの全手順です。大規模言語モデルは無料のLlama3 8BをOllamaで動かして使います。最初の確認
「/etc/wsl.conf」に以下が記入されていなかったら書き込んでおく必要があります。[boot] systemd=true
書き込み方は
sudo nano /etc/wsl.conf
Docker EngineとDocker Composeのインストール
こちらに従いました。インストール後に以下を実行しました。(ユーザー名は各自変更が必要です)
sudo gpasswd -a ユーザー名 docker sudo chgrp docker /var/run/docker.sock
Nvidia container toolkitのインストール
こちらに従いました。いったんここまででWSL2を再起動しました。(必要かどうかはわかりません)
Ollama のインストール
こちらに従いました。docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
コンテナーに入る
docker exec -it ollama bash
Llama3 8Bのダウンロード
ollama run llama3
Ollamaを終了させる
起動したOllamaは「/bye」と入力すると終了できます。コンテナーを抜ける
exit
Difyのインストール
git clone https://github.com/langgenius/dify cd dify/docker docker compose up -d
ブラウザを開く
Windowsのブラウザからhttp://localhost/installにアクセスすると使えるようになっています。プロバイダーの登録
Model Nama「llama3」、Base URL「http://172.17.0.1:11434」でLlama3の登録ができました。IP Addressは以下のコマンドで調べることができます。
ip addr show | grep docker
終了の仕方
docker compose down docker stop ollama
2回目以降
毎回difyリポジトリ内のdockerフォルダに入る必要があります。cd dify/docker docker compose up -d docker start ollama
この後にhttp://localhost/installにアクセスするだけです。
補足1(シェルスクリプト)
以下を記入した「〇〇.sh」というファイルを作っておけば実行が簡単です。1行目のアドレスは各自変更が必要です。
cd ~/dify/docker docker compose up -d docker start ollama echo "access http://localhost/install"
実行は以下のようにします。
source 〇〇.sh
「source」は「.」で置き換え可能です。
. 〇〇.sh
ターミナルに出力されたアドレスのところでCtrlを押しながらマウスを左クリックすると勝手にブラウザが立ち上がります。
強引に「~/.bashrc」に上記内容を記入しておくとWSL2起動時に実行されます。(これが正しい方法かはわかりませんが)
sudo nano ~/.bashrc
補足2(他のモデル)
こちらの記事と同様な方法を使うとOllamaにデフォルトで用意されているモデル以外でも使用可能です。touch-sp.hatenablog.com