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
150
Amazon Bedrock Agentsを用いてアプリ開発してみた!
JAWS-UG 初心者支部 第62回 オンラインLT会での登壇資料です
Har1101
November 06, 2024
Tweet
Share
More Decks by Har1101
See All by Har1101
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
430
Other Decks in Programming
See All in Programming
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
440
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
250
Hotwire or React? ~Reactの録画機能をHotwireに置き換えて得られた知見~ / hotwire_or_react
harunatsujita
9
4.3k
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
240
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
120
LLM生成文章の精度評価自動化とプロンプトチューニングの効率化について
layerx
PRO
2
140
CSC305 Lecture 13
javiergs
PRO
0
130
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
1.8k
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
400
C#/.NETのこれまでのふりかえり
tomokusaba
1
170
Outline View in SwiftUI
1024jp
1
210
ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜
tkikuc
11
2.3k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
A Modern Web Designer's Workflow
chriscoyier
693
190k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Building Applications with DynamoDB
mza
90
6.1k
Agile that works and the tools we love
rasmusluckow
327
21k
For a Future-Friendly Web
brad_frost
175
9.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Writing Fast Ruby
sferik
626
61k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
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)