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
720
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
5
760
re:Inventのアップデートを使ってRAGアプリ開発とRAGOpsに入門してみた!
har1101
1
270
BedrockのナレッジベースとLlamaIndexでGraphRAGを作って精度比較してみた!
har1101
3
420
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
510
Other Decks in Programming
See All in Programming
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
7
3.7k
英語文法から学ぶ、クリーンな設計の秘訣
newnomad
1
270
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
140
Windows版PHPのビルド手順とPHP 8.4における変更点
matsuo_atsushi
0
370
GDG Super.init(version=6) - From Where to Wear : 모바일 개발자가 워치에서 발견한 인사이트
haeti2
0
560
自分のために作ったアプリが、グローバルに使われるまで / Indie App Development Lunch LT
pixyzehn
1
120
20250326_生成AIによる_レビュー承認システムの実現.pdf
takahiromatsui
17
5.4k
複雑なフォームと複雑な状態管理にどう向き合うか / #newt_techtalk vol. 15
izumin5210
4
2.9k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
820
Scala 3 で GLSL のための c-like-for を実装してみた
exoego
1
180
PHPでお金を扱う時、終わりのない 謎の1円調査の旅にでなくて済む方法
nakka
3
1k
データベースエンジニアの仕事を楽にする。PgAssistantの紹介
nnaka2992
9
4.2k
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
490
KATA
mclloyd
29
14k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
25k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
Music & Morning Musume
bryan
46
6.4k
Speed Design
sergeychernyshev
28
860
The Art of Programming - Codeland 2020
erikaheidi
53
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
118
51k
Raft: Consensus for Rubyists
vanstee
137
6.8k
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)