【Dify】【Ollama】【WSL2】Difyをローカル環境で実行するまでの全手順

はじめに

まっさらの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




このエントリーをはてなブックマークに追加