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
AWS_Amplify_AI_Kitで始めるRAGアプリ開発.pdf
Search
たけのこ
March 16, 2025
0
2.7k
AWS_Amplify_AI_Kitで始めるRAGアプリ開発.pdf
たけのこ
March 16, 2025
Tweet
Share
More Decks by たけのこ
See All by たけのこ
Amazon Q Developer for GitHubとAmplify Hosting でサクッとデジタル名刺を作ってみた
kmiya84377
0
1.1k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Raft: Consensus for Rubyists
vanstee
139
7k
For a Future-Friendly Web
brad_frost
179
9.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Six Lessons from altMBA
skipperchong
28
3.8k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Statistics for Hackers
jakevdp
799
220k
Docker and Python
trallard
44
3.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
AWS Amplify AI kitで 始めるRAGアプリ開発 宮崎 健太
今回が人生初登壇です 宜しくお願いします
宮崎 健太 主にB to B向けWebアプリのフロントエンドを担当 (と言いつつ、広く浅くで器用貧乏です) 趣味 • ゲーム (最近モンハン買いました。ハンターランク50くらいです。)
• お酒 (最近クラフトジンを飲みます) Xアカウント:たけのこ(@K5ARULtkUA4594) 自己紹介
✓ AWS Amplify AI kitの概要 ✓ AWS Amplify AI kitを使ったRAGの作り方
✓ 実際にRAGアプリを作ってみた 本日お話しすること
RAGってなんだっけ?
RAGとは LLMが回答する際、外部知識を参照させることでLLMを拡張する仕組み LLM 外部知識 ② 外部知識から情報を検索 ③ 過去に同じ事例あった! ① XXの手続き教えて!
④ 過去の事例から◦◦ですね! 例) △社の社内文章検索 アプリ
RAGをどうやって作るか 以下を用意する必要がある • LLM • ユーザーインターフェース • バックエンドAPI • インフラ
• ベクトルDB RAGアプリを作るのって大変…
AWS Amplify AI kitを使ってみよう!
AWS Amplify AI kit とは
AWS Amplify AI kitとは • 2024年11月頃に一般公開された AWS Amplify の機能の1つ •
Amazon Bedrock と連携したアプリを構築できる機能を提供 ➢ フロントエンドのUIコンポーネント ➢ Bedrockを呼び出すバックエンドAPI ➢ フロントエンドとバックエンドを繋ぐ処理
簡単に生成AIを活用したアプリが開発できる!! 自分、生成AI 使えます! 自分、開発環境を 提供できます! つまり・・・
AWS Amplify AI kit の機能とは
AWS Amplify AI kitの基本アーキテクチャ
AWS Amplify AI kitが提供する主な機能 AI kitは、以下の2種類の機能を提供 機能 概要 ユースケース Conversation
リアルタイムに複数回の会話のやり取り(マルチターン)を 考慮したAI機能を提供 英会話のレッスンなど 対話型のアプリ Generation 指定した定義に従って構造化されたデータを同期的に 生成するAI機能を提供 文章の要約や画像生 成など Conversionの場合、裏ではConverse APIが呼ばれます。 Converse APIは、異なる基盤モデル(Claude、Cohereなど)を統一的なインターフェースで利用できます。
どうやってRAGアプリを作るか
Tool useからKnowledge Baseを呼ぶ • Tool useは、LLMにプロンプトと一緒にツールを渡すことで、LLMの能力 を拡張する機能 • クエリツールを使用し、Knowledge BaseのAPIを呼ぶことでRAGを実
現する 機能 概要 モデルツール Amazon DynamoDBのレコードをツールとして使用します クエリツール AWS AppSync のAPIを呼び出した実行結果をツールとして使用する Generation AWS Lambdaを呼び出した実行結果をツールとして使用する
※ 注意点 Bedrock の Knowledge Baseの構築は、AI kitと別途で必要
実際にRAGアプリを作ってみた ※まだ開発中です!
作成の背景 • 既に開始から数年が経過しているプロジェクトであり、プロジェクト特有の観点が多い • 開発メンバーの出入りが流動的で、知識が古参に頼っている状態 • チェックリストは存在するが、形骸化して誰も使ってない ➢ 結果: 顧客レビューの指摘が多発、内部レビューにも時間がかかる
実際のイメージ
アーキテクチャ Cognito
現状の課題 1. RAGの精度向上が必要 • 例えば、100文字入れたら100文字でベクトルDBに検索かけてるので、分割したい • Bedrock Knowledge Baseの設定もほぼデフォルトなので… 2.
ユーザー意見の収集が必要 • 実際に使ってもらって、精度や改善項目について、アンケートしたい。 • アンケートの結果をもとに、改善したい。このサイクルを回したい。
まとめ 1. RAGの精度改善やUXなどに注力できる RAGアプリの立ち上げまでは爆速で出来る! (業務後に2日ほどで出来た) 2. 他AWSサービスとの親和性がある Cognitoと組み合わせて手軽に認証機能を入れられるなど、Amplifyならではの良さがある! 3. UIデザインの融通は効かず、カスタマイズが難しい
提供されるUIコンポーネントは、チャットアプリ形式なので、同じUIに引きずられる 4. バグがあると追うのが大変 (個人差あり) 良くも悪くもロジックが隠蔽されてるので、不具合っぽい動きの時、どこから追ってよいのか、わかりにくい。
以上です! ありがとうございました!