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
750
Amazon Bedrock Agentsを用いてアプリ開発してみた!
JAWS-UG 初心者支部 第62回 オンラインLT会での登壇資料です
Har1101
November 06, 2024
Tweet
Share
More Decks by Har1101
See All by Har1101
AWS上でMCPを安全に使いたい ~Mastraを添えて~
har1101
7
1.3k
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
6
1.3k
Amazon Bedrock Agentsのマルチエージェント機能で競馬予想アプリ作ってみた!
har1101
5
830
re:Inventのアップデートを使ってRAGアプリ開発とRAGOpsに入門してみた!
har1101
1
300
BedrockのナレッジベースとLlamaIndexでGraphRAGを作って精度比較してみた!
har1101
3
450
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
520
Other Decks in Programming
See All in Programming
Fiber Scheduler vs. General-Purpose Parallel Client
hayaokimura
1
250
Bedrock × Confluenceで簡単(?)社内RAG
iharuoru
1
100
Road to RubyKaigi: Making Tinny Chiptunes with Ruby
makicamel
4
520
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.1k
20250426 GDGoC 合同新歓 - GDGoC のススメ
getty708
0
100
Cursor/Devin全社導入の理想と現実
saitoryc
27
20k
The Missing Link in Angular’s Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
130
ComposeでWebアプリを作る技術
tbsten
0
130
タイムゾーンの奥地は思ったよりも闇深いかもしれない
suguruooki
1
810
Memory API : Patterns, Performance et Cas d'Utilisation
josepaumard
1
160
Youtube Lofier - Chrome拡張開発
ninikoko
0
2.5k
Thank you <💅>, What's the Next?
ahoxa
1
570
Featured
See All Featured
Become a Pro
speakerdeck
PRO
28
5.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Designing Experiences People Love
moore
142
24k
Rails Girls Zürich Keynote
gr2m
94
13k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.3k
How STYLIGHT went responsive
nonsquared
100
5.5k
Designing for Performance
lara
608
69k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
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)