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
【クラウド食堂 #4 ~AWSカテゴリ指定LT会~】AIエージェントアプリのためのElasti...
Search
kei1-dev
September 17, 2025
Technology
0
36
【クラウド食堂 #4 ~AWSカテゴリ指定LT会~】AIエージェントアプリのためのElastic Beanstalk
https://cloud-shokudo.connpass.com/event/359494/
kei1-dev
September 17, 2025
Tweet
Share
More Decks by kei1-dev
See All by kei1-dev
AWS CDKでアプリコードを管理する
kei1dev
0
51
AWSアーキテクチャ図からLLM使ってCDKを実装する
kei1dev
0
47
Other Decks in Technology
See All in Technology
ドメイン駆動セキュリティへの道しるべ
pandayumi
0
160
Data Hubグループ 紹介資料
sansan33
PRO
0
2.6k
Digitization部 紹介資料
sansan33
PRO
1
6.6k
AI に「学ばせ、調べさせ、作らせる」。Auth0 開発を加速させる7つの実践的アプローチ
scova0731
0
330
CodeRabbit CLI + Claude Codeの連携について
oikon48
0
550
Claude in Chromeで始める自律的フロントエンド開発
diggymo
1
200
20260114_データ横丁 新年LT大会:2026年の抱負
taromatsui_cccmkhd
0
360
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
The Engineer with a Three-Year Cycle
e99h2121
0
160
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
[Iceberg Meetup #4] ゼロからはじめる: Apache Icebergとはなにか? / Apache Iceberg for Beginners
databricksjapan
0
290
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
340
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
30 Presentation Tips
portentint
PRO
1
190
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
0
520
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
170
So, you think you're a good person
axbom
PRO
2
1.9k
A better future with KSS
kneath
240
18k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
110
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
120
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
140
ラッコキーワード サービス紹介資料
rakko
1
2.1M
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
76
Transcript
Copyright © 2025 BeeX Inc. All Rights Reserved. AIエージェントアプリのための Elastic
Beanstalk Keiichi Kurosawa 株式会社 BeeX クラウド食堂 #4
Copyright © 2025 BeeX Inc. All Rights Reserved. 2 黒澤圭一(Keiichi
Kurosawa) 株式会社 BeeX /Senior Technical Consultant エンタープライズソリューション本部 クラウドネイティブ開発部所属 直近の登壇履歴: - JAWS Days 2025 - AWS CDK with CodingAgent - AWS Summit 自社ブース - Bedrock Agent Who Are You?
Copyright © 2025 BeeX Inc. All Rights Reserved. 3 カスタムAIエージェントアプリのホスティングに
Elastic Beanstalkもいいなと思ってもらう 今日の目標
Copyright © 2025 BeeX Inc. All Rights Reserved. 4 •
AIエージェントとは? • Code Interpreter • 環境要件とElastic Beanstalk • まとめ Agenda
Copyright © 2025 BeeX Inc. All Rights Reserved. AIエージェントとは?
Copyright © 2025 BeeX Inc. All Rights Reserved. 6 •
定義 • AIエージェントは、デジタルおよび現実の環境で、状況を認識し、意思決定を下し、ア クションを起こし、目的を達成するためにAI技術を適用する、自律的または半自律的な ソフトウェアです。 • 特性(=下記のそれぞれのレベルを高められるとよいエージェントになる) • 適応性: 変化に応じて、振る舞いや戦略を調整できる能力 • 積極性: 目的達成のために自らアクションを起こせる能力 • 目的の複雑性: 相互に関連する複数の目的達成に求められるタスクを管理し、実行できる 能力 • 環境の複雑性: 不確実性、変動性、複雑性を伴う環境で、タスクの制御、実行できる能力 • 自律性: ほとんどまたはまったく人間の介入なしで、独立して稼働できる能力 参考: https://www.gartner.co.jp/ja/articles/ai-agents AIエージェントの定義とその特性
Copyright © 2025 BeeX Inc. All Rights Reserved. 7 •
「認識」:ユーザーからの質問や要求を解析し、意図を正確に把握する段階(=五感) • ユーザから提供された情報やRAG、Web検索などを用いる • 「判断」: 得た情報を整理し、推論を行う(=頭) • LLMが行うのはここ。実行手順の計画、結果の判断などを行う • 「実行」: 具体的なアクションを起こす(=手&道具) • ツールを呼び出し、外部に影響を与える AIエージェントの仕組み
Copyright © 2025 BeeX Inc. All Rights Reserved. 8 •
エージェントが扱える情報(=context)を適切に提供できるようにする • いわゆるコンテキストエンジニアリング • ユーザ依頼やRAG、メモリ、Web検索、ツール情報などから適切な情報を過不足なく与える • “タスクを達成するために必要なものをすべて LLM に提供するために、適切な情報とツールを適 切な形式で、適切なタイミングで提供する動的システムを設計および構築する分野”(リンク) • 多様なToolsを準備する • ファイルに書き込む、データベースにデータを書き込む、外部のAPIを呼び出す、コード を実行する、GUIを操作するなどAIエージェントが呼び出すことが可能なあらゆる機能 や関数を用意すればするほどできることが増える。 →適切なContextとToolsを組み合わせることでエージェントは複雑なタスクに対応 できる AIエージェントができることを増やすには? 今日はToolsにまつわる環境の話です
Copyright © 2025 BeeX Inc. All Rights Reserved. Code Interpreter
Copyright © 2025 BeeX Inc. All Rights Reserved. 10 エージェントが限られたタスクに対応する場合、タスク実行に必要なツールすべてを事
前に用意することができる →パターンが多い場合はどうする? • 例えば: 様々なパターンのグラフや表を作る • 円、棒、折れ線、ヒートマップ、ピラミッドグラフなど Code Interpreter • AIエージェントが生成したソースコードをサブプロセスで実行し、その結果が得られ るTool • つまり、AIエージェントが作成できるコードであれば(理論上)何でもできる! • よくあるユースケース: ファイル処理、データ分析など (実際は環境に入っているライブラリが制約になることが多く、できることのパターンは限られますし、 もちろんコードはLLMから出力されているので複雑なものだとエラーで動かないことも。。。) 多くのToolsを用意するには?
Copyright © 2025 BeeX Inc. All Rights Reserved. 11 •
今回はMicrosoft開発のAutoGen FWをベースに以降の話をします。(リンク) • Code Interpreterとのネイティブ統合 • Dockerを利用した完全分離されたPython実行環境の実現 • LLMが生成したコードを直接実行することはセキュリティリスクになるため、コ ンテナ等による分離はほぼ必須 • (主要なAIエージェントFWであるLangChain/LangGraphではE2Bを組み合わせて実現) Code Interpreterを組み込む
Copyright © 2025 BeeX Inc. All Rights Reserved. 環境要件と Elastic
Beanstalk
Copyright © 2025 BeeX Inc. All Rights Reserved. 13 •
技術スタック、環境要件 • フロントエンド: React + Vite + TS + Tailwind CSS • バックエンド: FastAPI + AutoGen + uvicorn • インフラ: Code Interpreter用Dockerが動かせる、DBはなくてもOK • 主要な選択肢 • EC2ベース(Elastic Beanstalk) • コンテナベース(ECS, EKS) • サーバレス(Lambda, S3+Cloudfront) 想定技術スタックと環境要件、その選択肢
Copyright © 2025 BeeX Inc. All Rights Reserved. 14 •
定番構成の構築・アプリデプロイの自動化サービス • ALB + EC2(Python対応) + Cloudwatch… etcの環境がすぐに手に入る Elastic Beanstalk Elastic BeanstalkのBlackbelt資料、2017年のものが最新なんですね・・・
Copyright © 2025 BeeX Inc. All Rights Reserved. 15 •
.ebextensions: 環境構築のカスタマイズが容易に行える • commands: デプロイ処理前に実行すべきコマンドやスクリプトを指定 commands: 01_install_docker: command: "yum install -y docker" 02_start_docker: command: "systemctl start docker" • container_commands: 新バージョンの展開後に実行すべきコマンドを指定 container_commands: 01_docker_socket_permissions: command: | chmod 666 /var/run/docker.sock chgrp docker /var/run/docker.sock Elastic BeanstalkでのDockerセットアップ(抜粋)
Copyright © 2025 BeeX Inc. All Rights Reserved. 16 •
AIエージェントの構成や機能の拡張方法が急激に変化している中で、サービスの変化 にアプリを適用させるのは悪手なのでは?という疑問 • Bedrock AgentではTools部分実装がLambdaだったり、AgentCoreだとエンドポイントの制 約やCode InterpreterをAWS SDK経由での呼び出しだったり(そもそもAgentCoreはまだ Preview) • シンプルなビルディングブロックでAIエージェントアプリを高速に構築し、素早いFBと機 能拡張を行うことのほうがビジネス価値につながる • AIエージェントアプリケーションを動作させられる環境をシンプルに素早く構築可能 • Webアプリケーションを動かすための標準構成(DB含む)を合わせて作れるAWSサービスは 他にない • Amplifyも近いがTSベースのアプリに限られる • コンピューティング、データベース、LBなど複数のビルディングブロックを使用、管理す る必要がある。 なぜElastic Beanstalkなのか
Copyright © 2025 BeeX Inc. All Rights Reserved. 17 •
Lambda: Docker pullの挙動 • Code Interpreterがその環境で初回実行されるタイミングでベースとなる Dockerイメージを取得される • 次回以降はそのイメージを使いまわす • Lambdaの有効期限が短いため、実行のたびにDocker pullが走り、実用に耐え ない時間がかかる • コンテナ: Docker in docker • 文字通り、Dockerコンテナ内でDockerコンテナを動かすこと • 開発者でDevcontainerを使っている場合に使っているケースが多い? • 特権モードが必要 →Fargateが使えない • ログ管理が複雑化(タスクログに加え、DinDログどうとる?) • ホストへのアクセスができないため、調査大変そう なぜコンテナ、サーバレスだとダメなのか(未検証)
Copyright © 2025 BeeX Inc. All Rights Reserved. まとめ
Copyright © 2025 BeeX Inc. All Rights Reserved. 19 •
AIエージェントができることを増やすにはコンテキストエンジニア リングとToolsの多様さが必要 • Toolsの一種として、LLMが作成したコードを実行できるCode Interpreterを用いることで多様な処理を実現できる • Code Interpreterの実行環境整備のため、AIエージェントの将来の 拡張を見据えた選定としてElastic Beanstalkを利用することも一案 まとめ
Copyright © 2025 BeeX Inc. All Rights Reserved. Copyright ©
2025 BeeX Inc. All Rights Reserved.