Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
Search
y-mae
March 26, 2025
Technology
1
300
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
https://cloud-shokudo.connpass.com/event/347158/
y-mae
March 26, 2025
Tweet
Share
More Decks by y-mae
See All by y-mae
AWSでRAGを実現する上で感じた3つの大事なこと
ymae
3
1.6k
「genai-quickstart-pocs」を使ってお手軽に生成AIのPoCを始めよう!
ymae
3
230
生成AIとAWS CDKで実現! 自社ブログレビューの効率化
ymae
4
1k
Other Decks in Technology
See All in Technology
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
280
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
310
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
180
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
560
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
120
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
1.1k
Lambda Web Adapterについて自分なりに理解してみた
smt7174
4
120
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
AIとともに進化するエンジニアリング / Engineering-Evolving-with-AI_final.pdf
lycorptech_jp
PRO
0
110
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
110
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
740
Featured
See All Featured
Designing for Performance
lara
609
69k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Bash Introduction
62gerente
614
210k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Documentation Writing (for coders)
carmenintech
72
4.9k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Practical Orchestrator
shlominoach
188
11k
GitHub's CSS Performance
jonrohan
1031
460k
Code Reviewing Like a Champion
maltzj
524
40k
How to train your dragon (web standard)
notwaldorf
94
6.1k
Transcript
前野 佑宜 アイレット株式会社 DX開発事業部 モダンエンジニアリングセクション ビジネスデザインG GenU案件を通して学んだ教訓 クラウド食堂 #2 ~AWSネタでLT会~
登壇資料
01 アジェンダ 自己紹介 02 GenUとは 03 GenU案件で学んだ教訓 3選 04 まとめ
前野 佑宜 2023年新卒入社/入社2年目 2024 Japan AWS Jr. Champions選出 アイレット株式会社 ま え の
ゆ う き 経歴 DX開発事業部/モダンエンジニアリングS/ビジネスデザインG 担当業務 Python/Laravelを使った開発をメインに従事 現在はAWSの生成AIサービスを使った開発を担当
02. GenUとは
みなさん、 「GenU 」はご存知でしょうか?
02.GenUとは?
02.GenUとは? GenU(generative-ai-usecases-jp) • AWSがOSSとして公開している生成AI活用のためのフレームワーク • 現状ではv3.0が最新版(日々アップデートされている) • サービスページも公開されている • Reactを用いて実装されている
• チャット/RAGチャット/Agentチャット/Flowチャット・要約 • 執筆・校正・翻訳・Webコンテンツ抽出 • 文章生成・画像生成・動画生成・映像分析・音声認識 • ユースケースビルダー・プロンプト最適化・ダイアグラム生成 3/25時点で、提供されている機能は 17機能! 場面に応じて 機能利用の有無を選択可能
03.GenU 案件で学んだ教訓 3選 GenUを使った、約2か月間の 開発を通して学んだこと
03.GenU案件で学んだ教訓 3選 1.CDKの作りは事前に確認する必要あり • デプロイ自体は、コマンドを実行するだけで簡単にできる ◦ cdk:deploy 一発でデプロイ可能(前段2-3個のコマンドを除けば) • 反面内部の作りを把握していないと、期待しない挙動になって焦る
◦ 開発途中でデプロイ不能になりリソース全削除する羽目になる可能性も どんなリソースが、どんな仕組みで 立ち上がっているかはしっかり確認する
03.GenU案件で学んだ教訓 3選 • GenUのcdk.jsonの、ドメイン設定に関するオプション ◦ 開発環境で、カスタムドメインのオプションを誤って設定し、一度全てnullにし て再デプロイしようとしたらエラーに ◦ 再度デプロイし直し手動でカスタムドメインの紐付けを行った "hostName":
<hostname>, "domainName": <domainname>, "hostedZoneId": XXXXX(Route53 のHostedZoneId), 失敗談: デプロイ不能になってリソース作り直し "hostName": null, "domainName": null, "hostedZoneId": null,
03.GenU案件で学んだ教訓 3選 CloudFormationを見ると、エラー発生 CloudFrontWafStack failed: ValidationError: Stack:arn:aws:cloudformation:us-east-1:***:stack/CloudFrontWafStack/1f2a8f70-d4a5-11ef -bbc9-125487e00b97 is in
UPDATE_ROLLBACK_FAILED state and can not be updated. ROLLBACK続行or リソース削除しか選択肢なし →結局解決できず crossRegionReferences(異なるリージョン間でリソースの受け渡しができる仕組みを使っている)の部分でエラー
03.GenU案件で学んだ教訓 3選 2.GenUのバージョン間のそれぞれの作りの違い、 影響範囲を確認しておくべし • GenUは、主にv2.0/v3.0(3/26時点最新版)が存在 ◦ v2.0→v3.0にあたり破壊的変更も存在。Kendra検索はv3.0以降削除(次頁 ◦ v3.0以降→検索だけできる
UIを作るには自分で作る必要あり • 担当案件では「検索だけしたい」というニーズがあり、Kendra検索を残す決断 ◦ →v2.0を採用 ユーザーにとって必要な(コアな)機能は何か? を第一に考え、どのバージョンを使うかは検討するのが良さそう
03.GenU案件で学んだ教訓 3選 GenU v3.0リリース時 のドキュメント
03.GenU案件で学んだ教訓 3選 3.RAGのどのフェーズがボトルネックかを明確に • GenUのRAG機能では、以下のフローで回答生成がされる クエリ生成 検索 回答生成 クエリは 期待通りに変換さ
れているか? 期待するドキュメン トが検索結果に出 てきているか?
03.GenU案件で学んだ教訓 3選 GenUにおけるRAGの仕組み
03.GenU案件で学んだ教訓 3選 3.RAGのどのフェーズがボトルネックかを明確に • GenUのRAG機能では、以下のフローで回答生成がされる クエリ生成 検索 回答生成 クエリは 期待通りに変換さ
れているか? 期待するドキュメン トが検索結果に出 てきているか?
03.GenU案件で学んだ教訓 3選 • GenUのデフォルトでは、関連するクエリがないと、「No Query」が返却 case1:クエリ生成でうまく行っていない場合 →クエリ生成時のプロンプト改善 /質問文の改善
03.GenU案件で学んだ教訓 3選 case1:クエリ生成でうまく行っていない場合 →クエリ生成時のプロンプト改善 /質問文の改善 Query生成時のプロンプト (packages/web/src/prompts/claude.ts)
03.GenU案件で学んだ教訓 3選 3.RAGのどのフェーズがボトルネックかを明確に • GenUのRAG機能では、以下のフローで回答生成がされる クエリ生成 検索 回答生成 クエリは 期待通りに変換さ
れているか? 期待するドキュメン トが検索結果に出 てきているか?
03.GenU案件で学んだ教訓 3選 • GenUのデフォルトでは、10件の結果しかretrieveしない ◦ retrieveAPIは、最大100件の結果まで抽出可能 ▪ →抽出対象のドキュメントの数を増やすのも一つの方法 case2:期待するドキュメントが得られない場合 →取得件数を増やす
04.まとめ まとめ どこにボトルネックがあるのかを意識して機能改善を 行うことが大事 簡単にデプロイできるのは GenUの魅力。 それに甘えすぎず内部的な仕組みも理解しよう
ご清聴ありがとうございました
参照文献 • 関連ブログ ◦ GenU サービスページ(AWS) ◦ 生成 AI
アプリをノーコードで作成・社内配布できる GenU ユースケースビルダー (AWS)