英語版の記事はこちらです。
Dify
Difyは、AGIアプリケーションを構築するためのオープンソースGUIプラットフォームです。今回は、Langchainでの開発前に、Difyを使用して迅速にプロトタイプを作成し、テストをします。
ローカルインストール
Difyのデフォルト設定を使用して簡単にインストールできます
必要条件
以下の最低システム要件を満たし、DockerおよびDocker Composeがインストールされていることを確認してください。
- CPU:2コア以上
- RAM:4GB以上
ステップ1:Difyをクローンする
Difyリポジトリをクローンします
git clone https://github.com/langgenius/dify.git
実際にはdify/dockerディレクトリのみが必要です
ステップ2:Difyを起動する
dockerディレクトリに移動し、以下のコマンドを実行します
cd dify/docker
docker compose up -d
結果:
[+] Running 11/11
✔ Network docker_default Created 0.0s
✔ Network docker_ssrf_proxy_network Created 0.0s
✔ Container docker-ssrf_proxy-1 Started 1.7s
✔ Container docker-db-1 Started 1.6s
✔ Container docker-weaviate-1 Started 1.6s
✔ Container docker-redis-1 Started 1.7s
✔ Container docker-sandbox-1 Started 1.7s
✔ Container docker-web-1 Started 1.7s
✔ Container docker-api-1 Started 2.3s
✔ Container docker-worker-1 Started 2.2s
✔ Container docker-nginx-1 Started 2.8s
ステップ3:コンテナのステータスを確認する
以下のコマンドを実行して、すべてのコンテナが正常に稼働しているか確認します
docker compose ps
結果:
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
docker-api-1 langgenius/dify-api:0.6.10 "/bin/bash /entrypoi…" api 5 minutes ago Up 5 minutes 5001/tcp
docker-db-1 postgres:15-alpine "docker-entrypoint.s…" db 5 minutes ago Up 5 minutes (healthy) 5432/tcp
docker-nginx-1 nginx:latest "/docker-entrypoint.…" nginx 5 minutes ago Up 5 minutes 0.0.0.0:80->80/tcp
docker-redis-1 redis:6-alpine "docker-entrypoint.s…" redis 5 minutes ago Up 5 minutes (healthy) 6379/tcp
docker-sandbox-1 langgenius/dify-sandbox:0.2.1 "/main" sandbox 5 minutes ago Up 5 minutes
docker-ssrf_proxy-1 ubuntu/squid:latest "entrypoint.sh -f /e…" ssrf_proxy 5 minutes ago Up 5 minutes 3128/tcp
docker-weaviate-1 semitechnologies/weaviate:1.19.0 "/bin/weaviate --hos…" weaviate 5 minutes ago Up 5 minutes
docker-web-1 langgenius/dify-web:0.6.10 "/bin/sh ./entrypoin…" web 5 minutes ago Up 5 minutes 3000/tcp
docker-worker-1 langgenius/dify-api:0.6.10 "/bin/bash /entrypoi…" worker 5 minutes ago Up 5 minutes 5001/tcp
Difyへのアクセス
Difyを使用するには、http://localhost/installにアクセスします
以前にDifyを使用している場合はログイン画面が表示されます、初めての場合はアカウントを作成します
モデルの設定
右上隅をクリックし、Settings > Model Provider
を選択します
Ollamaを使用する
- https://www.ollama.com/にアクセスし、システムに適したOllamaクライアントをダウンロードします
- Ollamaを実行します(Llama2を使用しますが、他のモデルを選択することもできます。詳細はOlamaモデルを参照してください)
ollama run llama2
-
OllamaをDifyに統合する
- 下にスクロールしてOllamaを選択します
- 次の項目を入力します:
- Model Name:llama2
- Base URL:
http://<your-ollama-endpoint-domain>:11434
私はDifyをdockerから実行するので、Base URLをhttp://host.docker.internal:11434
に設定します。
Base URLには、Ollamaサービスがアクセス可能なURLを入力します。 - Model type:Chat
- Model Context Length:4096
モデルの最大コンテキスト長です。不明な場合はデフォルト値の4096を使用してください。 - Maximum Token Limit:4096
モデルが返すトークンの最大数です。特定の要件がない場合は、モデルのコンテキスト長と一致させることができます。 - Support for Vision:はい
モデルが画像理解(マルチモーダル)をサポートしている場合、このオプションをチェックします(例えばllava)。
- 下にスクロールしてOllamaを選択します
OpenAIを使用する
現在、私はOpenAIを使用してプロトタイプを作成してテストしています