Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Amplify Gen 2ではじめる 生成AIアプリ開発入門

Amplify Gen 2ではじめる 生成AIアプリ開発入門

つくぼし

October 12, 2024
Tweet

More Decks by つくぼし

Other Decks in Technology

Transcript

  1. 2 自己紹介 ★ ハンドルネーム ◦ つくぼし ★ 所属 ◦ AWS事業本部コンサルティング部

    ◦ ソリューションアーキテクト ★ 最近ハマっているAWSサービス ◦ AWS Application Composer ★ SNS/ブログ ◦ X(@tsukuboshi0755) ◦ DevelopersIO(つくぼし)
  2. 3 目次 1. Amplify Gen 2とは 2. UIデザイン支援AIツールの紹介 3. Bedrockを呼び出す際のポイント

    4. 直近のAmplifyアップデート 5. オススメのAmplify × Bedrockハンズオン 6. 最後に
  3. 8 ここがすごいぞAmplify Gen 2 1. ブランチ毎にgit pushでCI/CDが自動で走る 2. サンドボックスで開発環境を分離できる 3.

    CDKベースなのでインフラをTypeScriptで定義可能 4. JS ResolverによりバックエンドをTypeScriptで書ける
  4. 14 AWSにおけるホスティング構成の比較 比較項目 S3 + CloudFront Amplify (Gen 2) 実装方法

    コンソール・CLI・各種IaCいずれも可 コンソール & IaCのみ 認証機能 CloudFrontのLambda@edgeやCloudFront Functionsでコードを書けば実装可能 aws/amplify-backendモジュールのdefineAuthメソッドで簡 単に実装可能 バックエンド機能 単体ではなし ALB + ECSやAPIGateway + Lambda等を組み合わ せて検討 aws/amplify-backendモジュールのdefineDataメソッドで簡 単に実装可能 CI/CD機能 単体ではなし CodePipeline等を組み合わせて検討 デフォルトで設定されている amplify.ymlで簡単なカスタマイズが可能 カスタムドメイン機能 単体ではなし Route 53 + ACMを組み合わせて検討 Amplifyコンソールから簡単に設定可能 WAFの紐付け 可能 不可 CloudFront + WAF + Amplifyで代用 CDNパラメータの調整 (キャッシュビヘイビア・マルチオ リジン・セキュリティポリシー等 ) 可能 不可 CloudFrontがAmplifyでラップされ見えなくなる
  5. 24 バックエンド定義方法(AppSyncリゾルバー)の選択 比較項目 カスタムリゾルバー (HTTPリゾルバー ) Amplify Function(Lambdaリゾルバー ) アーキテクチャ

    ランタイム APPSYNC_JS (JavaScript)のみ Lambdaでサポートされているランタイム全て コードの最大サイズ AppSync関数毎に 32,000 文字 Lambda関数毎に50 MB (zip圧縮、直接アップロード用 ) ネットワークアクセス 不可 可能 ファイルシステムアクセス 不可 可能 コールドスタート なし あり(別途プロビジョニングされた同時実行を使用すればな し) 価格 追加料金なし Lambdaの使用料金が別途かかる
  6. 27 基盤モデルIDの選択 • テキスト生成はClaude 3.5(by Anthropic)一択 ◦ 価格&応答速度のHaiku ◦ バランスのSonnet

    ◦ 性能のOpus • 画像生成は以下の二択 ◦ 知名度が高いSDXL 1.0 (by Stability AI) ◦ 価格が安いTitan Image(by Amazon)
  7. 34 その他直近のAmplifyアップデート • Storage Browser for Amazon S3 (Preview) ◦

    S3 でのファイルブラウズ機能を追加し、データ参照アップロードやダ ウンロード機能を提供するUI ◦ https://github.com/aws-amplify/amplify-ui/issues/5731 • スケジュール実行可能な関数の定義 • 関数の非同期呼び出し • 複数バケットのサポート
  8. 42