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
検索拡張生成(RAG)をAWSで作る方法
Search
そのだ
April 24, 2024
Technology
1
660
検索拡張生成(RAG)をAWSで作る方法
【connpass】
Fusic Tech Live Vol.19 機械学習~生成AI編(言語・音声)~
https://fusic.connpass.com/event/310627/
そのだ
April 24, 2024
Tweet
Share
More Decks by そのだ
See All by そのだ
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
520
Amazon Bedrock Knowledge Basesに Data Autometionを導入してみた
sonoda_mj
1
32
Amazon Bedrock Knowledge basesにLangfuse導入してみた
sonoda_mj
2
560
AIエージェントに脈アリかどうかを分析させてみた
sonoda_mj
2
210
Amazon Bedrock Knowledge Basesのアップデート紹介
sonoda_mj
2
410
Snowflake未経験の人がSnowflakeに挑戦してみた
sonoda_mj
1
88
生成AIアプリのアップデートと配布の課題をCDK Pipelinesで解決してみた
sonoda_mj
0
420
AWSでRAGを作る方法
sonoda_mj
1
490
緑一色アーキテクチャ
sonoda_mj
2
250
Other Decks in Technology
See All in Technology
AWSで作るセキュアな認証基盤with OAuth mTLS / Secure Authentication Infrastructure with OAuth mTLS on AWS
kaminashi
0
150
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
coconala_engineer
1
290
【2025年度新卒技術研修】100分で学ぶ サイバーエージェントのデータベース 活用事例とMySQLパフォーマンス調査
cyberagentdevelopers
PRO
5
7.3k
Ops-JAWS_Organizations小ネタ3選.pdf
chunkof
2
160
20250411_HCCJP_AdaptiveCloudUpdates.pdf
sdosamut
1
110
Recap of Next - Google Cloud で実践する クラウドネイティブ最前線 / The Frontlines of Cloud-Native with Insights from Google Cloud
aoto
PRO
1
100
更新系と状態
uhyo
5
1.3k
食べログが挑む!飲食店ネット予約システムで自動テスト無双して手動テストゼロを実現する戦略
hagevvashi
3
420
Amazon CloudWatch Application Signals ではじめるバーンレートアラーム / Burn rate alarm with Amazon CloudWatch Application Signals
ymotongpoo
5
490
The Tale of Leo: Brave Lion and Curious Little Bug
canalun
1
120
Linuxのパッケージ管理とアップデート基礎知識
go_nishimoto
0
150
ElixirがHW化され、最新CPU/GPU/NWを過去のものとする数万倍、高速+超省電力化されたWeb/動画配信/AIが動く日
piacerex
0
140
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
The Language of Interfaces
destraynor
157
24k
Faster Mobile Websites
deanohume
306
31k
How GitHub (no longer) Works
holman
314
140k
Fireside Chat
paigeccino
37
3.4k
Building an army of robots
kneath
304
45k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
We Have a Design System, Now What?
morganepeng
52
7.5k
Typedesign – Prime Four
hannesfritz
41
2.6k
Visualization
eitanlees
146
16k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
©Fusic Co., Ltd. 1 検索拡張⽣成(RAG)をAWSで作る⽅法 2024.4.24 苑⽥ 朝彰 @sonoda_mj Fusic
Tech Live Vol.19
©Fusic Co., Ltd. 2 苑⽥ 朝彰 Sonoda Tomotada - X:
sonoda_mj - 2023 AWS Jr.Champions - 2024 Community Builders(ML & GenAI) コメント 最近AWS StepFunctionsにハマってる ⾃⼰紹介 はじめに 株式会社Fusic
©Fusic Co., Ltd. 3 CONTENTS ⽬次 1. 検索拡張⽣成(RAG)とは 2. RAGをAWSで作ってみる
3. まとめ
©Fusic Co., Ltd. 4 検索拡張⽣成(RAG)とは 1
©Fusic Co., Ltd. 5 Retrieval Augmented Generation(RAG) ⽣成系の⾔語 AI モデルに外部メモリをつけるというコンセプトのことを指す
検索拡張⽣成(RAG)とは Vector Database LLM 質問 検索 返答 検索結果 引用:https://github.com/aws-samples/jp-rag-sample
©Fusic Co., Ltd. 6 事前に学習したデータに関しては返答することができる 検索拡張⽣成(RAG)とは LLM AWSについて教えて AWSってのはな
©Fusic Co., Ltd. 7 しかし、プライベート情報や新しい情報など、学習していない内容に関しては答 えられない 検索拡張⽣成(RAG)とは 苑⽥について教えて 私の知識はxxxx年まででぇ LLM
©Fusic Co., Ltd. 8 外部のデータベースなどを紐づけることで、新しい情報やプライベートの情報に 関する回答を⽣成することができる 検索拡張⽣成(RAG)とは Vector Database 苑⽥について教えて
©Fusic Co., Ltd. 9 外部のデータベースなどを紐づけることで、新しい情報やプライベートの情報に 関する回答を⽣成することができる 検索拡張⽣成(RAG)とは Vector Database 苑⽥について教えて
©Fusic Co., Ltd. 10 外部のデータベースなどを紐づけることで、新しい情報やプライベートの情報に 関する回答を⽣成することができる 検索拡張⽣成(RAG)とは Vector Database 検索結果を返す
©Fusic Co., Ltd. 11 外部のデータベースなどを紐づけることで、新しい情報やプライベートの情報に 関する回答を⽣成することができる 検索拡張⽣成(RAG)とは Vector Database 苑⽥ってのは…
©Fusic Co., Ltd. 12 Fusicの公開情報から構成されるRAG Fusic-RAG メンバー紹介 ニュース 開発事例 その他
©Fusic Co., Ltd. 13 RAGはどういう処理を⾏っているのか 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク
トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる
©Fusic Co., Ltd. 14 今回の登場⼈物 User Embedding Model Vector DB
LLM 質問をする⼈ テキストをベクトル にするモデル ベクトル⽤のDB テキストを⽣成する モデル
©Fusic Co., Ltd. 15 Vector DBにデータを⼊れる AWSを業務で使っています。 テキストを ベクトル化する Vector
DB Embedding Model LLM データソース
©Fusic Co., Ltd. 16 Vector DBにデータを⼊れる [0.1, 0.5, 0,3 …]
Vector DB Embedding Model LLM データソース
©Fusic Co., Ltd. 17 Vector DBにデータを⼊れる ≈≈ { [0.1, 0.5,
0,3 …] metadata: { text: AWSを業務で使っています。 dataSource: sonoda.md } } Vector DB Embedding Model LLM データソース
©Fusic Co., Ltd. 18 1. 質問をベクトル化する 苑⽥さんって誰ですか? Vector DB Embedding
Model LLM
©Fusic Co., Ltd. 19 1. 質問をベクトル化する [0.1, 0.5, 0,3 …]
Vector DB Embedding Model LLM
©Fusic Co., Ltd. 20 2. ベクトル化した質問を元に、Vector DBから似ているベクトルを探す [0.1, 0.5, 0,3
…]に似ている ベクトルを探す Vector DB Embedding Model LLM
©Fusic Co., Ltd. 21 2. ベクトル化した質問を元に、Vector DBから似ているベクトルを探す { [0.1, 0.5,
0,3 …] metadata: { text: AWSを業務で使っています。 dataSource: sonoda.md } } 似てるのあったわ Vector DB LLM
©Fusic Co., Ltd. 22 Embedding Model 3. 検索結果と質問からプロンプトを作成 あなたはhogehogeです 以下の質問に答えてください
# 情報 AWSを業務で使っています。 # 質問 苑⽥さんって誰ですか? Vector DB LLM
©Fusic Co., Ltd. 23 Embedding Model 4. LLMにプロンプトを投げる Vector DB
LLM あなたはhogehogeです 以下の質問に答えてください # 情報 AWSを業務で使っています。 # 質問 苑⽥さんって誰ですか?
©Fusic Co., Ltd. 24 4. LLMにプロンプトを投げる AWSを業務で使ってます Vector DB Embedding
Model LLM
©Fusic Co., Ltd. 25 会話履歴も⼊れてみる 苑田とは誰ですか? AWSエンジニアです 詳細を教えてください 詳細とは何でしょうか? 苑田とは誰ですか?
AWSエンジニアです 詳細を教えてください 彼はAWSだけではなく、Rubyも書ける ようです。緑のタイツを着ています。 会話履歴を使⽤しない場合 会話履歴を使⽤した場合
©Fusic Co., Ltd. 26 RAGをAWSで作ってみた 2
©Fusic Co., Ltd. 27 AI21 Labs、Anthropic、Cohere、Meta、Stability AI、Amazon などの⼤⼿ AI 企業が提供する⾼性
能な基盤モデル (FM) を単⼀の API で選択できるフルマネージド型サービス Amazon Bedrockとは
©Fusic Co., Ltd. 28 RAGはどういう処理を⾏っているのか(再掲) 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク
トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる
©Fusic Co., Ltd. 29 RAGはどういう処理を⾏っているのか(再掲) 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク
トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる 簡単に作成できる!!
©Fusic Co., Ltd. 30 Amazon Bedrock 内から基盤モデルをデータソースに接続して、検索拡張⽣成 (RAG) を⾏うことができる。 Knowledge
Base for Amazon Bedrock Bedrock LLM Bedrock Embedding Model Vector DB Data Source or or or S3 様々なデータを⼊れる .txt, .md, .html, .doc/docx .csv, .xls/.xlsx, .pdf
©Fusic Co., Ltd. 31 Knowledge Base for Amazon Bedrock(Pythonでの使い⽅)
©Fusic Co., Ltd. 32 AWSで作成した場合の構成図 or
©Fusic Co., Ltd. 33 AWSで作成した場合の構成図 or フロントエンド (アプリ、Slackなど)
©Fusic Co., Ltd. 34 AWSで作成した場合の構成図 or Knowledge Base for Amazon
Bedrock RAGを簡単に使⽤できる
©Fusic Co., Ltd. 35 AWSで作成した場合の構成図 or AWS Lambda サーバーレスでKBを呼び出す
©Fusic Co., Ltd. 36 AWSで作成した場合の構成図 or Pinecone(VectorDB) Freeプランを使⽤すると無料で検証できる
©Fusic Co., Ltd. 37 AWSで作成した場合の構成図 or DynamoDB 会話ログを保管する
©Fusic Co., Ltd. 38 実際の流れ or
©Fusic Co., Ltd. 39 実際の流れ or 苑⽥って誰ですか?
©Fusic Co., Ltd. 40 実際の流れ or RAGの処理 会話ログの保存 RAGの処理 1.
質問をベクトル化する 2. ベクトル化した質問を元に、 Vector DBから似ているベクトル (上位n個)を探す 3. 検索結果と質問からプロンプトを 作成 4. LLMにプロンプトを投げる 5. 回答を受け取る
©Fusic Co., Ltd. 41 実際の流れ or 苑⽥ってのはな
©Fusic Co., Ltd. 42 まとめ 3
©Fusic Co., Ltd. 43 まとめ 検索拡張⽣成(RAG)は、⾔語AIモデルに外部メモリを付けることで、未学習データにも対応可能にする技術。 Point 01 AWSではKnowledge Base
for Amazon Bedrockを活⽤することでRAGを簡単に実装可能。 Point 02 サーバレスで構築することで、格安で検証可能。 Point 03
©Fusic Co., Ltd. 44 Thank You We are Hiring! https://recruit.fusic.co.jp/
ご清聴いただきありがとうございました