Slide 1

Slide 1 text

Copyright © Tetsuya Shibao #jawsug_oita 2025-01-18 JAWS-UGおおいた Dify self hosted on AWSを試してみる Try Dify self hosted on AWS

Slide 2

Slide 2 text

Copyright © Tetsuya Shibao #jawsug_oita 自己紹介 大分(22年) → 東京(11年) → 福岡(2年)→ 佐賀(現 在)  柴尾 哲也(しばお てつや) Tetsuya Shibao JAWS-UG佐賀 AWS Startup Community 福岡 JAWS-UG 佐賀 運営 AWS Startup Community 運営(最近は... SAGA IT Community Day企画中 Coder Dojoさが(メンター) HAGAKURE PROGRAMMING塾 etc…

Slide 3

Slide 3 text

Copyright © Tetsuya Shibao #jawsug_oita ・提示している費用は、2025年1月17日時点のものです。  最新の費用は公式ホームページにてご確認ください ・Difyの使い方を説明する資料ではありません  (モデル設定、チャットやワークフローの作り方) おことわり

Slide 4

Slide 4 text

Copyright © Tetsuya Shibao #jawsug_oita ・ Difyとは ・ Dify selfhosted on AWSとは ・ Self-hosted版の特徴 ・ Self-hosted版を起動 ・ まとめ お話すること

Slide 5

Slide 5 text

Copyright © Tetsuya Shibao #jawsug_oita Difyとは ・ テンセントクラウドの元エンジニアが中心になって起業したLangGenius, Inc(アメリカ合衆国デラウェア州)が開 発 ・ チャットボットやワークフローに多種多様なLLMを組み込める開発プラットフォーム ・ オープンソース オープンソースプロジェクトで管理 https://github.com/langgenius/dify ・ SaaS(https://dify.ai/)は、AWS アメリカ合衆国のリージョンで運用 https://dify.connpass.com/

Slide 6

Slide 6 text

Copyright © Tetsuya Shibao #jawsug_oita Dify selfhosted on AWSとは ・ AWS公式のGitHubリポジトリで公開 https://github.com/aws-samples/dify-self-hosted-on-aws ・ AWSのマネージドサービスを利用しサーバレスアーキテクチャを採用

Slide 7

Slide 7 text

Copyright © Tetsuya Shibao #jawsug_oita Self-hosted版の特徴 allowedCidrs: アプリケーションへのアクセスを許可するIPアドレス範囲をCIDR表記で指定します。 cheapVpc: t4g.nano NAT インスタンスを使用するか、NAT ゲートウェイを使用するかを指定します。 vpcId: 既存のVPCのIDを指定します。 domainName: (HTTPSアクセスに必要) Dify サービスのURLに使用するドメイン名を指定します。 hostedZoneId:  (  (HTTPSアクセスに必要) ) domainName プロパティで指定したドメインのRoute53ホステッドゾーンのIDを指定します。 isRedisMultiAz: ElastiCache Redisクラスタを複数の可用性ゾーンにデプロイして耐障害性を高めるかどうかを指定します。 enableAuroraScalesToZero: Amazon Auroraをゼロにスケールできるようにするかどうかを指定します。 difyImageTag: デプロイするDifyコンテナイメージ(apiとworker)のイメージタグを指定します。 difySandboxImageTag: デプロイするDifyサンドボックスコンテナイメージのイメージタグを指定します。 allowAnySyscalls: Difyサンドボックスでコードを実行するときに、すべてのシステムコールを許可するかどうかを指定します。 ・ AWS CDKでデプロイするものの事前に以下の項目は利用者側で設定可能

Slide 8

Slide 8 text

Copyright © Tetsuya Shibao #jawsug_oita Self-hosted版を起動 ・ AWS CDK(node.js環境が必要)でデプロイするため、コマンドは単純かつ少ない # install npm dependencies npm ci # bootstrap the AWS account (required only once per account and region) npx cdk bootstrap # deploy the CDK stack npx cdk deploy ・ AWS CDK(node.js環境が必要)で削除もコマンドは単純かつ少ない npx cdk destroy --force

Slide 9

Slide 9 text

Copyright © Tetsuya Shibao #jawsug_oita まとめ ・ データの保存先が日本以外でも許容できるかどうか、共用環境でも許容できるか検討が必要です  ・ SaaS版は、AWS アメリカリージョンで運用(https://docs.dify.ai/ja-jp/policies/agreement​)  ・ Self-hosted版は、AWSのサービスが対応しているリージョン(少なくとも東京)で適用可能 ・ イメージファイルの更新を自分たちで実施できるかどうか検討が必要です  ・SaaS版は、自動で更新  ・Self-hosted版は、Dockerイメージが公開次第(https://hub.docker.com/r/langgenius/dify-sandbox/​) ・ 費用についてはSaaSのプロフェッショナル版と大きな差はない

Slide 10

Slide 10 text

Copyright © Tetsuya Shibao #jawsug_oita 2025-01-18 JAWS-UGおおいた Thanks for your time. :) https://speakerdeck.com/midnight480 https://www.docswell.com/user/midnight480