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
20231027_Bedrock勉強会
Search
Kazuki Maeda
October 26, 2023
Technology
1.8k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20231027_Bedrock勉強会
https://minorun365.connpass.com/event/300097/
の登壇資料
Kazuki Maeda
October 26, 2023
More Decks by Kazuki Maeda
See All by Kazuki Maeda
「答えを出す」より「わかる」をつくる
kzkmaeda
1
220
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
780
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
3
2.4k
日本の教育の未来 を考える テクノロジーは教育をどのように変えるのか
kzkmaeda
1
370
モノリスの認知負荷に立ち向かう、コードの所有者という思想と現実
kzkmaeda
0
290
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
9
8.1k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
7.7k
生成AIを用いた 新しい学びの体験を 提供するまでの道のり
kzkmaeda
0
490
生成AIによって変わる世界 -可能性とリスクについて考える-
kzkmaeda
2
440
Other Decks in Technology
See All in Technology
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.5k
AI時代の EM への処方箋
staka121
PRO
0
140
関数型の考えを TypeScript に持ち込んで、テストしやすい純粋関数を増やす / Pure at the Core, Effects at the Edge: Bringing Functional Thinking into TypeScript
kaminashi
1
110
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
180
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
5.1k
環境凍結という Toil を倒す -セルフサービス型 Ephemeral テスト環境の 設計と実践
shirouz
1
2.3k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
貴方はどのエンジニアリングを磨くのか
hatyibei
0
130
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
3.1k
「早く出す」より「事業に効く」 ── 顧客の業務サイクルから逆算するAI時代の二重ループ開発と「変化の設計者」 / devsumi2026
rakus_dev
1
220
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
240
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
450
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Exploring anti-patterns in Rails
aemeredith
3
440
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
エンジニアに許された特別な時間の終わり
watany
107
250k
Statistics for Hackers
jakevdp
799
230k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
A designer walks into a library…
pauljervisheath
211
24k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
210
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
Transcript
非BedrockアプリをBedrock して 開発観点で比較する AWSの生成AI「Amazon Bedrock」入門&LT会! 2023-10-27 @kzk_maeda
自己紹介 Kazuki Maeda 𝕏 @kzk_maeda SRE/DRE @atama plus AWS Community
Builders AWS Startup Community Core Member
自己紹介
agenda 1. 対象RAGアプリの紹介 2. Bedrockしてみる 3. Bedrock前後で比較 (開発運用面)
免責 • 2023/10/26時点での情報を元に作成しています
対象RAGアプリの紹介
そもそもRAGとは? • Retrieval Augmented Generationの略 • 外部の知識ソースを利用して大規模言語モデル(LLM)の回答の 質を向上させる手法
対象のRAGアプリ紹介
対象のRAGアプリ紹介 モニタリングツールに 対してエラー検索 エラーログから 既存チケットを検索
対象のRAGアプリ紹介 LLM部分は LangChain + OpenAI APIで実現
Bedrockしてみる
「Bedrockする」とは? • Bedrock以外のLLMツールセットを用いて実装されたアプリケー ションをBedrockに移行すること
「Bedrockする」ために必要なこと • コードを修正 • 実行環境のIAM RoleにPolicyをアタッチ • 以上!
「Bedrock」してみた • LangChainのバージョン上げてboto3への依存を追加
「Bedrock」してみた • メインの部分はほぼこれでOK
「Bedrock」してみた • メインの部分はほぼこれでOK OpenAIへの依存を削除 boto3でBedrockのclient を定義し、LangChainの Embeddingに渡す Embedding modelとして 提供されているtitan
v1を 指定
「Bedrock」してみた • 仕上げに権限と環境変数を変えてデプロイ
Bedrock前後で比較
開発環境 • Bedrockへの認証をIAM Roleに持たせることで、コードの外の責 務となり、ローカルで動作確認する際に一工夫が必要 • ローカルフラグ持たせて、boto3のsession/clientの切り替えをす ることを一瞬考えたけど、今回は面倒だったのでCloud9にしまし た
セキュリティ • LLM APIのクレデンシャルを管理しなくても良いというのはとても 嬉しい!!!! • 通信も、AWSのInternal Networkを出ないので、外部のLLM API を利用するよりはセキュアに利用できます
オブザーバビリティ • Cloudwatch等によるログ/メトリクスのモニタリングが可能 • ログはBedrockのModel invocation loggingから設定可能 • ただし、LangSmithには劣るので今後に期待
オブザーバビリティ Cloudwatch LangSmith
おわりに
まとめ • シンプルなRAGアプリにおいて、非BedrockアプリをBedrockする のは、LangChainが実装を抽象化してくれているので非常に簡単 でした • 運用やセキュリティに関する機能がAWSに寄せられるメリットは 大きいと感じました • Knowledge
BaseというネイティブRAGアプリサービスもPrivate Previewに入っていたり、まだまだ進化の激しい技術なので今後 もwatch必須ですね