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
3
1.2k
20231027_Bedrock勉強会
https://minorun365.connpass.com/event/300097/
の登壇資料
Kazuki Maeda
October 26, 2023
Tweet
Share
More Decks by Kazuki Maeda
See All by Kazuki Maeda
生成AIによって変わる世界 -可能性とリスクについて考える-
kzkmaeda
2
110
新しいことを組織ではじめる、そしてつづける
kzkmaeda
5
760
20240824_JAWS_PANKRATION_2024
kzkmaeda
0
45
20240416_devopsdaystokyo
kzkmaeda
1
380
20240321_生成AI時代のDevOps
kzkmaeda
2
990
20240222_LangChain_ver0.1.0_LCEL
kzkmaeda
4
360
20240201_クラウド利用料を 半額にするために取り組んだ10+のコト
kzkmaeda
4
7.1k
20231011_LangChainコントリビュートのすゝめ
kzkmaeda
0
1.2k
LangChain Japan MeetUp 2023-07-20
kzkmaeda
0
590
Other Decks in Technology
See All in Technology
Can We Measure Developer Productivity?
ewolff
1
150
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1k
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
AGIについてChatGPTに聞いてみた
blueb
0
130
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
600
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Practical Orchestrator
shlominoach
186
10k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Why Our Code Smells
bkeepers
PRO
334
57k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Embracing the Ebb and Flow
colly
84
4.5k
4 Signs Your Business is Dying
shpigford
180
21k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Code Review Best Practice
trishagee
64
17k
A better future with KSS
kneath
238
17k
Typedesign – Prime Four
hannesfritz
40
2.4k
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必須ですね