
普段 Dify を使うときはクラウド版を使っているけど,クラウド版以外にセルフホスト版もある👌 AWS に Dify のセルフホスト版をデプロイして Dify に入門できる「Dify での生成 AI アプリケーション構築ワークショップ」を試してみた❗️
catalog.us-east-1.prod.workshops.aws
チャットボット・エージェント・ワークフローなど Dify の基礎を学べるコンテンツとして良かった.さらに Dify のナレッジ (RAG) も試せる.手順はとても丁寧でハマるところはまったくなかった👏 ただし,Dify 自体を試すことが目的なら,AWS に Dify をデプロイする必要はなく,クラウド版を使うのが良いとは思う.
アジェンダ
- Dify とは
- ワークショップの準備
- チャットボットの開発
- エージェントの開発
- ワークフローの開発
- クリーンアップ
誤植
Titan Text Emdeddings V2→Titan Text Embeddings V2amazon.titan-embedded-text-v2:0→amazon.titan-embed-text-v2:0
実施ログ
あとはワークショップを実施しながら残しておいた実施ログを載せておこうと思う😀
🤖 2. ワークショップの準備
AWS CloudFormation で Dify を構築する.AWS CloudFormation テンプレート dify-self-deployment.yml はそこまで複雑ではなく,Amazon VPC と Amazon EC2 をデプロイしていた.Amazon EC2 インスタンスの user data でゴニョゴニョしながら最終的に Docker Compose を起動しているところは「なるほど〜」という感じ💡
UserData:
Fn::Base64: |
#!/bin/bash
max_attempts=5
attempt_num=1
success=false
while [ $success = false ] && [ $attempt_num -le $max_attempts ]; do
sudo dnf install -y git docker
if [ $? -eq 0 ]; then
echo "dnf install succeeded"
success=true
else
echo "dnf install $attempt_num failed. trying again..."
sleep 3
((attempt_num++))
fi
done
sudo systemctl start docker
sudo gpasswd -a ec2-user docker
sudo gpasswd -a ssm-user docker
sudo chgrp docker /var/run/docker.sock
sudo service docker restart
sudo systemctl enable docker
sudo curl -L "https://github.com/docker/compose/releases/download/v2.28.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
cd /opt
sudo git clone https://github.com/langgenius/dify.git
cd /opt/dify
sudo git checkout 1.1.3
sudo git pull origin 1.1.3
cd /opt/dify/docker
sudo cp .env.example .env
docker-compose up -d
ワークショップの中でも紹介されていたけど,プロダクション環境で使えるアーキテクチャではないため,より実践的なアーキテクチャは Dify on AWS with CDK を参考にすると良さそう❗️
そして Amazon Bedrock で使う基盤モデルは大きく4種類だった.
- Anthropic - Claude 3.5 Sonnet v2
- Anthropic - Claude 3.5 Haiku
- Amazon - Titan Text Embeddings V2
- Cohere - Rerank 3.5

🤖 3. チャットボットの開発
チャットボットで Dify の代表的な操作を体験しよう❗️といった感じの流れだった.「会話の開始(オープナー)」や「変数」を試せるのも良かった.
そして,なんと言ってもナレッジ (RAG) を体験できるのが良かった👌 今回はワークショップサイトから PDF をダウンロードして問い合わせの回答に使う.あとナレッジのチャンク設定で「汎用」ではなく「親子」を選択するのは今までやったことがなくて勉強になった〜 \( 'ω')/
kintai.pdf(勤怠管理システム入力方法マニュアル)information-system-dept.pdf(情報システム部門の Wiki)
解説ブログも載っていた📝



🤖 4. エージェントの開発
DuckDuckGo プラグインをセットアップして,リサーチエージェントとして検索をするという内容だった.

🤖 5. ワークフローの開発
手順も長く,そこそこ複雑なワークフローを構築しよう❗️という内容だった.Dify の「質問分類器」を使って RAG・パラメータ抽出・例外処理に分岐する感じで,ブロックごとに解説もされてて理解を深めながら進められるようになっていて良かった.「パラメータ抽出」を体験できるようにワークショップが作られているのも素敵💡


まとめ
Dify のセルフホスト版を AWS にデプロイしつつ Dify に入門できる「一石二鳥な」ワークショップだった👏
ちなみにこのワークショップは2024年10月に公開された.公開直後にすぐやってみようと思ったけど,個人アカウントだと Amazon Bedrock のモデルアクセスを有効化できなくて,サポートの回答を待っていたら結局やらなくなってしまったという背景があった😇そのまま寝かせていて,2025年4月にワークショップ手順のアップデートがあったため,改めてやってみることにした❗️
朝活で「Dify での生成 AI アプリケーション構築ワークショップ」をやるぞ〜と思ったら Bedrock でモデルアクセスを有効化できなくて詰んだ😇最近よく報告を見る利用不可の件だったhttps://t.co/qxntXiHYoE
— カック (@kakakakakku) 2024年11月11日
Dify 関連本
2025年5月に Dify 関連本を2冊読んだ.どちらも面白かったからおすすめ❗️特に「ゼロからわかる Dify の教科書」はビジネスパーソンに幅広く刺さりそうな内容になっていて,エンジニアじゃなくても Dify を使ってノーコード(ローコード)な業務効率化ワークフローを作れるっていう自信につながる内容だったから,今回紹介したワークショップとセットで読んでみるのも良さそう😀

