$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
書籍推薦AIエージェントを作ってみよう ワークショップ
Search
fujioka-a
August 20, 2025
Technology
0
10
書籍推薦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
270
Other Decks in Technology
See All in Technology
eBPFとwaruiBPF
sat
PRO
4
1.7k
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
9
2k
.NET 10 のパフォーマンス改善
nenonaninu
2
4.8k
私も懇親会は苦手でした ~苦手だからこそ懇親会を楽しむ方法~ / 20251127 Masaki Okuda
shift_evolve
PRO
4
560
ページの可視領域を算出する方法について整理する
yamatai1212
0
160
モバイルゲーム開発におけるエージェント技術活用への試行錯誤 ~開発効率化へのアプローチの紹介と未来に向けた展望~
qualiarts
0
310
技術以外の世界に『越境』しエンジニアとして進化を遂げる 〜Kotlinへの愛とDevHRとしての挑戦を添えて〜
subroh0508
1
160
Introduction to Bill One Development Engineer
sansan33
PRO
0
330
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
600
Capture Checking / Separation Checking 入門
tanishiking
0
120
Data Hubグループ 紹介資料
sansan33
PRO
0
2.3k
その設計、 本当に価値を生んでますか?
shimomura
3
190
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
76
5.2k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Navigating Team Friction
lara
191
16k
Rails Girls Zürich Keynote
gr2m
95
14k
Scaling GitHub
holman
464
140k
Code Review Best Practice
trishagee
73
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Automating Front-end Workflow
addyosmani
1371
200k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
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