$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Bedrock Agentsを用いてアプリ開発してみた!
Search
Har1101
November 06, 2024
Programming
0
370
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
440
Other Decks in Programming
See All in Programming
デザインパターンで理解するLLMエージェントの作り方 / How to develop an LLM agent using agentic design patterns
rkaga
11
2.3k
Serverless苦闘史
mosh_inc
0
130
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
160
イマのCSSでできる インタラクション最前線 + CSS最新情報
clockmaker
5
3.7k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
9
4k
今からはじめるAndroidアプリ開発 2024 / DevFest 2024
star_zero
0
370
Vapor Revolution
kazupon
2
2.4k
Swift Testing - iPlayground
chiaoteni
0
130
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Italy
prof18
0
110
Jakarta EE meets AI
ivargrimstad
0
320
Micro Frontends Unmasked Opportunities, Challenges, Alternatives
manfredsteyer
PRO
0
180
Discord Bot with AI -for English learners-
xin9le
0
100
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Code Review Best Practice
trishagee
64
17k
Speed Design
sergeychernyshev
25
640
Thoughts on Productivity
jonyablonski
67
4.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Building Your Own Lightsaber
phodgson
103
6.1k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
GraphQLとの向き合い方2022年版
quramy
44
13k
The World Runs on Bad Software
bkeepers
PRO
65
11k
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)