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
Amazon Bedrock Agentsを用いてアプリ開発してみた!
Search
Har1101
November 06, 2024
Programming
0
580
Amazon Bedrock Agentsを用いてアプリ開発してみた!
JAWS-UG 初心者支部 第62回 オンラインLT会での登壇資料です
Har1101
November 06, 2024
Tweet
Share
More Decks by Har1101
See All by Har1101
Amazon Bedrock Agentsのマルチエージェント機能で競馬予想アプリ作ってみた!
har1101
4
630
re:Inventのアップデートを使ってRAGアプリ開発とRAGOpsに入門してみた!
har1101
1
200
BedrockのナレッジベースとLlamaIndexでGraphRAGを作って精度比較してみた!
har1101
3
340
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
490
Other Decks in Programming
See All in Programming
ARA Ansible for the teams
kksat
0
150
時計仕掛けのCompose
mkeeda
1
280
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
490
Amazon Bedrock Multi Agentsを試してきた
tm2
1
280
ファインディの テックブログ爆誕までの軌跡
starfish719
2
1.1k
AWS Lambda functions with C# 用の Dev Container Template を作ってみた件
mappie_kochi
0
240
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
220
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.7k
[Fin-JAWS 第38回 ~re:Invent 2024 金融re:Cap~]FaultInjectionServiceアップデート@pre:Invent2024
shintaro_fukatsu
0
400
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
1
640
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
110
CI改善もDatadogとともに
taumu
0
110
Featured
See All Featured
A Tale of Four Properties
chriscoyier
158
23k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
99
18k
Music & Morning Musume
bryan
46
6.3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
540
Site-Speed That Sticks
csswizardry
3
370
Transcript
Amazon Bedrock Agentsを使って アプリ開発してみた! NECソリューションイノベータ株式会社 福地開
© NEC Corporation 2024 2 アジェンダ 1. 自己紹介 2. 本日の狙い
3. 作ったアプリについて 4. Amazon Bedrock Agentsとは? 5. エージェントの作り方 6. エージェントの使い方 7. 実装で工夫したポイント 8. まとめ
© NEC Corporation 2024 3 1.自己紹介 • 名前:福地 開(ふくち はるき)
• 所属:NECソリューションイノベータ株式会社 • 年次:2年目 • 業務:AWSでコンテナベースの基盤開発 • 好きなAWSサービス:AWS CDK Amazon Bedrock
© NEC Corporation 2024 4 1.自己紹介 • 先日まで、AWSさんが主催するハッカソン型の研修「ANGEL Dojo」に参加して いました!
• 本日は、ANGEL Dojoで作ったアプリの話をします https://www.youtube.com/live/22Z2kROOXFI
© NEC Corporation 2024 5 2.本日の狙い ①Amazon Bedrock Agentsを知り、 「使ってみよう!」となっていただくこと
②生成AIアプリ開発の進化に 少しだけ触れていただくこと ※といっても、私は普段業務で生成AIを使っているわけではありません… 色んな知見を共有し合えたら嬉しいです!
© NEC Corporation 2024 6 3.作ったアプリについて • 一言で言うと、「旅行計画作成〜予約を一括で行える生成AIアプリ」 ※研修で作成したアプリなので、所属組織とは一切関係ありません。
© NEC Corporation 2024 7 3.作ったアプリについて • 一言で言うと、「旅行計画作成〜予約を一括で行える生成AIアプリ」
© NEC Corporation 2024 8 3.作ったアプリについて • 一言で言うと、「旅行計画作成〜予約を一括で行える生成AIアプリ」
© NEC Corporation 2024 9 3.作ったアプリについて 通常の旅行計画作成だと… このアプリなら! 個別に予約 するの面倒
くさい… 選択肢が 多すぎる… ◆選択肢は3択まで減らす! ◆このアプリで一括予約も可能! →個人情報の入力が1回で済む!
© NEC Corporation 2024 10 3.作ったアプリについて 通常の旅行計画作成だと… このアプリなら! 個別に予約 するの面倒
くさい… 選択肢が 多すぎる… ◆選択肢は3択まで減らす! ◆このアプリで一括予約も可能! →個人情報の入力が1回で済む! ※2024年9月13日、「Agents for Amazon Bedrock」から「Amazon Bedrock Agents」に名前が変わったそうです。 参考:https://dev.classmethod.jp/articles/amazon-bedrock-feature-names-updated/
© NEC Corporation 2024 11 4.Amazon Bedrock Agentsとは? • アプリケーション内で自律AIエージェントを構築および設定する機能
• 自律AIエージェント: 目的を達成するために、自ら考え、判断し、行動することができる生成AI
© NEC Corporation 2024 12 4.Amazon Bedrock Agentsとは? • アプリケーション内で自律AIエージェントを構築および設定する機能
• 自律AIエージェント: 目的を達成するために、自ら考え、判断し、行動することができる生成AI どういうこと…??
© NEC Corporation 2024 13 4.Amazon Bedrock Agentsとは? ◆従来の生成AI (チャットボットなど)
→上司から言われたことを遂行する部下 あれやっといて わかりました 北海道の観光地を 教えて 北海道の観光地は 1: 洞爺湖 2: のぼりべつクマ牧場 3: ノーザンホースパーク … (イメージ図)
© NEC Corporation 2024 14 ◆自律AIエージェント →上司の指示を受けて、その意図を汲み取って自分でタスクを考え、遂行する人 4.Amazon Bedrock Agentsとは?
北海道の観光地を 教えて 北海道の観光地は 1: 大通公園 2: 札幌市円山動物園 3: 白い恋人パーク などがあります。 旅行の予定であれば、 お手伝いしますか? … 旅行に行こうと している…? 旅行日は いつ…? 予約も 必要か…? 誰と旅行に 行く…? 予算は 幾らだ…? (イメージ図)
© NEC Corporation 2024 15 4.Amazon Bedrock Agentsとは? • アプリケーション内で自律AIエージェントを構築および設定する機能
• 自律AIエージェント: 目的を達成するために、自ら考え、判断し、行動することができる生成AI
© NEC Corporation 2024 16 4.Amazon Bedrock Agentsとは? • アプリケーション内で自律AIエージェントを構築および設定する機能
• 自律AIエージェント: 目的を達成するために、自ら考え、判断し、行動することができる生成AI ⇩ • AIが、より人間らしい振る舞いを見せてくれるもの • 自律AIエージェントをAWSで実装できるのが…
© NEC Corporation 2024 17 5.エージェントの作り方 • Bedrockでエージェントを作成する方法 1. 手動で作成する
2. Conversational Builderで作成する
© NEC Corporation 2024 18 5.エージェントの作り方 • Bedrockでエージェントを作成する方法 1. 手動で作成する
2. Conversational Builderで作成する
© NEC Corporation 2024 19 5.エージェントの作り方 1. 手動で作成する →Bedrockコンソールから数クリックで作成完了
© NEC Corporation 2024 20 1. 手動で作成する →Bedrockコンソールから数クリックで作成完了 →その後、モデル選択とプロンプト入力をすればすぐに使い始められる 5.エージェントの作り方
© NEC Corporation 2024 21 (例)アプリで使用したプロンプトを一部抜粋 5.エージェントの作り方
© NEC Corporation 2024 22 1. 手動で作成する →コンソールからテストできるので、まずはここから触ってみてほしい! 5.エージェントの作り方
© NEC Corporation 2024 23 5.エージェントの作り方 • Bedrockでエージェントを作成する方法 1. 手動で作成する
2. Conversational Builderで作成する →10/15頃登場した新機能! ※東京リージョンは未実装 ※11/7現在、バージニア北部・オレゴン・フランクフルト・ シドニー・パリリージョンでのみ利用可能
© NEC Corporation 2024 24 5.エージェントの作り方 2. Conversational Builderで作成する →AIと対話しながらエージェント作成が可能
© NEC Corporation 2024 25 2. Conversational Builderで作成する →画面上部の選択欄を「Assistant」に変更する 5.エージェントの作り方
© NEC Corporation 2024 26 2. Conversational Builderで作成する →2~3回のやり取りでエージェントが作成される! 5.エージェントの作り方
© NEC Corporation 2024 27 5.エージェントの作り方 手動と何が違うのかは頭に入れ るor整理しておく 2. Conversational
Builderで作成する →2~3回のやり取りでエージェントが作成される!
© NEC Corporation 2024 28 5.エージェントの作り方 • Bedrockでエージェントを作成する方法 1. 手動で作成する
→プロンプト入力・ツール作成は自分で行う (ツール:エージェントが使用するLambdaやナレッジベース) 2. Conversational Builderで作成する →プロンプト自動作成・ツール作成の補助も可能 ※ただし東京リージョン未対応、精度もまだ測定できていない
© NEC Corporation 2024 29 5.エージェントの作り方 • Bedrockでエージェントを作成する方法 1. 手動で作成する
→プロンプト入力・ツール作成は自分で行う (ツール:エージェントが使用するLambdaやナレッジベース) 2. Conversational Builderで作成する →プロンプト自動作成・ツール作成の補助も可能 ※ただし東京リージョン未対応、精度もまだ測定できていない どうやって 実装する…??
© NEC Corporation 2024 30 6.エージェントの使い方 • 作成したエージェントをアプリで使用する方法 →最も手軽なのは、Lambdaから呼び出す!
© NEC Corporation 2024 31 7.実装で工夫したポイント 複数のエージェントを組み合わせて1つのアプリを作成した エージェントにJSON形式で返答するよう指示した
© NEC Corporation 2024 32 7.実装で工夫したポイント 複数のエージェントを組み合わせて1つのアプリを作成した エージェントにJSON形式で返答するよう指示した
© NEC Corporation 2024 33 7.実装で工夫したポイント • 「複数のエージェントを組み合わせる」とは? →フェーズごとに異なるエージェントを使用した 複数のエージェントを組み合わせて1つのアプリを作成した
© NEC Corporation 2024 34 7.実装で工夫したポイント • 「複数のエージェントを組み合わせる」とは? →フェーズごとに異なるエージェントを使用した 複数のエージェントを組み合わせて1つのアプリを作成した
© NEC Corporation 2024 35 7.実装で工夫したポイント • 「複数のエージェントを組み合わせる」とは? →フェーズごとに異なるエージェントを使用した 複数のエージェントを組み合わせて1つのアプリを作成した
© NEC Corporation 2024 36 7.実装で工夫したポイント • 複数のエージェントを組み合わせるメリット • ①専門性と精度の向上
→各エージェントが特定のタスクに特化することで精度向上 また、プロンプトをタスクごとに最適化できる • ②保守性の向上 →個別の更新・改善が容易 プロンプトの肥大化を防ぐことができる • 実際に複数のエージェントを用いたアプリを本番稼働させている企業もある 複数のエージェントを組み合わせて1つのアプリを作成した 参考:https://speakerdeck.com/pharma_x_tech/llmmarutiezientonohuroenziniaringuwozhi-erullm-ops
© NEC Corporation 2024 37 7.実装で工夫したポイント 複数のエージェントを組み合わせて1つのアプリを作成した エージェントにJSON形式で返答するよう指示した
© NEC Corporation 2024 38 エージェントにJSON形式で返答するよう指示した 7.実装で工夫したポイント • 通常のAIチャットだと、テキスト形式で返ってくることが多い →画像表示ができない、予約・DB登録が難しい
© NEC Corporation 2024 39 エージェントにJSON形式で返答するよう指示した 7.実装で工夫したポイント • アプリでは、情報が集まったらJSON形式で返却
© NEC Corporation 2024 40 エージェントにJSON形式で返答するよう指示した 7.実装で工夫したポイント • アプリでは、情報が集まったらJSON形式で返却 柔軟な表示が
可能!
© NEC Corporation 2024 41 エージェントにJSON形式で返答するよう指示した 7.実装で工夫したポイント • アプリでは、情報が集まったらJSON形式で返却 情報をそのまま
DBに登録!
© NEC Corporation 2024 42 8.まとめ • Amazon Bedrock Agentsは、簡単に作成でき、使い始めることができる!
• 生成AIアプリ開発は今もなお進化中、どんどん発展していく! (ここで紹介したものは本当に氷山の一角) • Amazon Bedrockにたくさん触れながら、 一緒に最新情報をキャッチアップしていきましょう!
None
© NEC Corporation 2024 44 ※Bedrockのモデルアクセス有効化や制限値引き上げができない事象あり • Amazon Bedrock のモデルアクセスの有効化や制限値の引き上げができない時の対
応方法(AWS公式ブログ) • 最近、Amazon Bedrockのモデルアクセスが「使用不可」だらけの場合の対応策 まとめ(みのるんさんQiita)