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
書籍推薦AIエージェントを作ってみよう ワークショップ
Search
fujioka-a
August 20, 2025
Technology
0
3
書籍推薦AIエージェントを作ってみよう ワークショップ
Bedrock Agent + Google Books API + Lambda + Powertoolsを使ってAIエージェントを作成するワークショップです
fujioka-a
August 20, 2025
Tweet
Share
More Decks by fujioka-a
See All by fujioka-a
Bedrock AgentをサポートしたPowertools for AWS Lambdaによる開発の効率化・省力化
fujioka6789
0
170
Other Decks in Technology
See All in Technology
あなたの知らない OneDrive
murachiakira
0
230
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
420
トヨタ生産方式(TPS)入門
recruitengineers
PRO
2
220
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
180
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
470
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
ECS モニタリング手法大整理
yendoooo
1
120
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
1.1k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
自治体職員がガバクラの AWS 閉域ネットワークを理解するのにやって良かった個人検証環境
takeda_h
2
380
AIドリブンのソフトウェア開発 - うまいやり方とまずいやり方
okdt
PRO
9
580
TypeScript入門
recruitengineers
PRO
11
2.4k
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
It's Worth the Effort
3n
187
28k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
780
Documentation Writing (for coders)
carmenintech
73
5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
A Tale of Four Properties
chriscoyier
160
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Music & Morning Musume
bryan
46
6.7k
A better future with KSS
kneath
239
17k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Facilitating Awesome Meetings
lara
55
6.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Transcript
書籍推薦AIエージェントを作ってみよう Powertools for AWS LambdaのBedrock Agent連携 AWS Learning workshop 2025.08.20
藤岡敦史
メールを解釈して自動返信する エージェントです 社員の勤務時間から労務状況を 分析するエージェントです Slackチャネルの投稿からプロジェクトの サマリを投稿するエージェントです A. 役割を与えられた、目的達成のために動くLLM&プログラム Q. AIエージェントとは?
LLM & プログラム (HTML/テキスト解析、メール送信) LLM & プログラム (ファイル読み込み、データ分析) LLM & プログラム (Slack読み込み&送信)
• AIエージェントを手軽に作れるサービス • コンソール操作だけでも作れるので、まずはコレから始めるべし • 主に以下を指定すればOK ⚬ プロンプト(エージェントの役割・範囲) ⚬ IAMロール(権限)
⚬ アクショングループ(連携するLambda(プログラム部分)) →ここが今回のワークショップのコアになります! ⚬ ガードレール(倫理的・法律的な侵害をさせないガード) Bedrock Agent 必須 必須 任意 任意
AIエージェントのカスタマイズ 実務でAIエージェントを使うには、ハルシネーション回避や精度向上が求められる →どうすれば良いか? ①モデル中心のアプローチ ②モデル外部からのアプローチ ファインチューニング など モデルのパラメータをチューニングや、 会社・業界固有のデータを与えて、 モデル本体の強化を図る
RAG(検索拡張生成) 会社・業界固有のデータをDB化しておき、 検索結果をエージェントに扱わせる Search インターネット検索結果や、 データ提供するAPIのレスポンスを、 エージェントに扱わせる ※詳細はFVブログをご確認ください https://techblog.forgevision.com/entry/2025/01/29/185046
AIエージェントのカスタマイズ 実務でAIエージェントを使うには、ハルシネーション回避や精度向上が求められる →どうすれば良いか? ①モデル中心のアプローチ ②モデル外部からのアプローチ ファインチューニング など モデルのパラメータをチューニングしたり、 会社・業界固有のデータを与えて、 モデル本体の強化を図る
RAG(検索拡張生成) 会社・業界固有のデータをDB化しておき、 検索結果をエージェントに扱わせる Search インターネット検索結果や、 データ提供するAPIのレスポンスを、 エージェントに扱わせる ※詳細はFVブログをご確認ください https://techblog.forgevision.com/entry/2025/01/29/185046 本ワークショップでは Searchアプローチを採用しました! Google Books APIを使用 →APIレスポンスを元に 回答を生成することで、 実在する書籍のみ回答させて ハルシネーションさせない
• Bedrock AgentがAPI利用するには、 APIコールするLambdaを実装する必要がある • 加えて、Bedrock Agentとのリクエスト/レスポンスするための お決まりのLambda実装をする必要があった... (決まった型を決まった通りに自前で実装する必要があるというのが、結構面倒くさい) Bedrock
AgentからのToolUse Bedrock Agent ①ユーザー入力から、 APIコールが必要かを判断 ②Bedrock AgentからLambdaをコール(ToolUse) ③実装された処理が実行 (APIコール&Bedrockへ返却) Lambda 外部API
• OSSライブラリ • ロギング、トレース、メトリクスなど、ベストプラクティス の型・実装パターンを、ライブラリの利用で完結させられる →決まりきった実装をライブラリ利用に置き換えることで、 開発速度やメンテナンス性を向上させられる • 以下の言語をサポート •
Python / Java / TypeScript / .NET • ※もっと詳しく知りたい方は、ぜひ以下のAWS福井さんの資料を参照ください https://pages.awscloud.com/rs/112-TZM-766/images/20221124_24th_ISV_DiveDeepSeminar_Lambda_Powertools.pdf Powertools for Lambdaとは
• 今回新たに、Bedrock AgentからLambdaを呼び出しする際に必要とする、 Lambda側での決まった実装パターンがユーティリティ化(機能化)された →自前実装せずPowertoolsを使用することで、実装が大きく効率化される PowertoolsのBedrock Agent連携 ユーティリティ 概要 トレース
X-rayと連携した処理のトレース ログ 構造化ロギング メトリクス カスタム名前空間を利用したメトリクス集計 Event Handler AppSync AppSync Eventからのパブリッシュ&サブスクライブ に対するイベントハンドリング Bedrock Agent Bedrock Agentからの呼び出しに対するイベントハンドリング Powertoolsのユーティリティ(一部抜粋 ※言語ごとに、他にも便利なユーティリティが多数あります!)
ワークショップの構成 ②ユーザー入力からリクエスト内容を分析、 ToolUseを判断 ③Bedrock AgentからLambdaをコール(ToolUse) ④実装された処理が実行 (APIコール&Bedrockへ返却) Lambda Google Books
API Bedrock Agent ① AWSコンソールの、Bedrockエージェント 画面から、読みたい本をリクエスト ⑦エージェントからの推薦結果を確認 ⑤書籍情報(タイトル、著者、ページ数、 出版日、概要など)を整理して、 最適な3冊を推薦する文章を作成 CDK Bedrockの設定・プロンプト・Lambda実装・Powertoolsを使った連携を、すべ てTypeScriptで実装しています。CDKで一括デプロイ可能。 ユーザー
ここからはデモになります。 以下リポジトリのソースコードを使って、 各自のAWSアカウントに書籍推薦エージェントを作りましょう! https://github.com/fujioka-a/bedrock-agent-lambda-powertools