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
320
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
240
生成AIとAWS CDKで実現! 自社ブログレビューの効率化
ymae
4
1.1k
Other Decks in Technology
See All in Technology
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
7k
「現場で活躍するAIエージェント」を実現するチームと開発プロセス
tkikuchi1002
6
930
Snowflake のアーキテクチャは本当に筋がよかったのか / Data Engineering Study #30
indigo13love
0
140
スプリントゴール未達症候群に送る処方箋
kakehashi
PRO
1
170
AIコードアシスタントとiOS開発
jollyjoester
1
220
自分がLinc’wellで提供しているプロダクトを理解するためにやったこと
murabayashi
1
150
TROCCO今昔
gtnao
0
200
Deep Security Conference 2025:生成AI時代のセキュリティ監視 /dsc2025-genai-secmon
mizutani
5
3.8k
(HackFes)米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
5
640
Maintainer Meetupで「生の声」を聞く ~講演だけじゃないKubeCon
logica0419
0
140
20250718_ITSurf_“Bet AI”を支える文化とコストマネジメント
helosshi
1
180
本当にわかりやすいAIエージェント入門
segavvy
9
5.2k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Navigating Team Friction
lara
187
15k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Why Our Code Smells
bkeepers
PRO
337
57k
Done Done
chrislema
184
16k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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)