$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
Search
izumin5210
December 23, 2025
Programming
0
15
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
https://knowledgework.connpass.com/event/372086/
izumin5210
December 23, 2025
Tweet
Share
More Decks by izumin5210
See All by izumin5210
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
2.4k
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.6k
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
980
TypeScript を活かしてデザインシステム MCP を作る / #tskaigi_after_night
izumin5210
5
840
複雑なフォームを継続的に開発していくための技術選定・設計・実装 #tskaigi / #tskaigi2025
izumin5210
14
9.4k
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
10
3.9k
複雑なフォームと複雑な状態管理にどう向き合うか / #newt_techtalk vol. 15
izumin5210
4
4.8k
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
9
6.2k
Other Decks in Programming
See All in Programming
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
140
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
160
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
550
Developing static sites with Ruby
okuramasafumi
0
310
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
160
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
120
Go コードベースの構成と AI コンテキスト定義
andpad
0
130
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.8k
ゲームの物理 剛体編
fadis
0
360
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
0
110
ローカルLLMを⽤いてコード補完を⾏う VSCode拡張機能を作ってみた
nearme_tech
PRO
0
130
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
130
Featured
See All Featured
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
210
A Modern Web Designer's Workflow
chriscoyier
698
190k
Faster Mobile Websites
deanohume
310
31k
What the history of the web can teach us about the future of AI
inesmontani
PRO
0
370
Between Models and Reality
mayunak
0
150
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.9k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.7k
The SEO Collaboration Effect
kristinabergwall1
0
300
GraphQLとの向き合い方2022年版
quramy
50
14k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
180
Transcript
AI Agent Tool のための バックエンドアーキテクチャを考える 2025-12-23 Encraft #22 @izumin5210
@izumin5210 © LayerX Inc. whoami LayerX バクラク事業部 (2022-09 -) Platform
Engineering 部 Enabling チーム Staff Software Engineer バックエンドや Web フロントエンドが専門です AI は初心者 ISUCON14 4位 好きな AI SDK v6 の API は .toModelOutput()
今日の話のスコープ © LayerX Inc. LLM / Agent を プロダクトに組み込む とき
Backend は 何を単位に能力を提供するか 3
変化の出発点 Before 利用主体が 人間・決定論コード After 利用主体が Agent Agent は 考えながらタスクを進める主体
© LayerX Inc. 4
従来の AI 機能のバックエンドアーキテクチャ上の位置づけ © LayerX Inc. AI はリクエストツリーの 「葉」 に
単機能な complicated subsystem 呼び出し元がすべて決める AI は 制御フローを持っていなかった 5
AI Agent 機能のバックエンドアーキテクチャ上の位置づけ © LayerX Inc. AI が 制御フローに入ってくる 実行時に
分岐・再計画 ツリーの葉ではなく 根 / 節 に 6
AI Agent 機能のバックエンドアーキテクチャを考える © LayerX Inc. 7
Tool "a contract between deterministic systems and non-deterministic agents" "agents
have different ways of perceiving the potential actions they can take" Tool = Agent に開放する、ユースケース・目的に合わせた操作 © LayerX Inc. Anthropic, 2025, https://www.anthropic.com/engineering/writing-tools-for-agents 8
Tool 設計と API 設計の違い 従来の API 設計 for Backend/Frontend 開発者・システム向け
に書く Agent 向け Tool 設計 エージェントのため に設計する © LayerX Inc. メモリ豊富なシステムが相手 呼び出し側が手続きを組み立てる Limited context を持つ主体が相手 Agent がタスクを組み立てる Anthropic, 2025, https://www.anthropic.com/engineering/writing-tools-for-agents 9
シンプルなケース:単一ドメインのタスク © LayerX Inc. 単一ドメインの 意味あるタスク として Tool を呼ぶ 10
複数ドメインにまたがる場合 © LayerX Inc. 複数集約・複数操作を 束ねたタスク Agent からは 1 回の
Tool 呼び出し 内部では複数ステップが走る 11
実装パターン © LayerX Inc. 2つのリソースを2つのツールで操作するような Agent 12
1つのユースケースなら tool にまとめる © LayerX Inc. リソース指向な API とは違い、tool はユースケースごとに作る
ユースケースとして1つなら、 tool は1つにしたほうが AI からすると使いやすい 13
内部的には usecase 層が存在する(概念的にあるいは実際に) © LayerX Inc. 概念的には複数のドメインにまたがった操作する usecase 層が存在するイメージ 14
Agent を外に置く © LayerX Inc. バックエンドに利用している言語で AI 周りのエコシステムが不十分な場合、Agent 周り を別サービスに分けることも選択肢になる
15
Agent Tool 向けのユースケース指向 API を提供する © LayerX Inc. 「どの処理のかたまりでユースケースを構成するか」は Backend
側で持つほうが自然 かもしれない 16
複数プロダクトにまたがる場合 © LayerX Inc. 複数のプロダクトにまたがるタスク 17
複数プロダクトで1ユースケース © LayerX Inc. プロダクトが1つのときと同じく、ユースケースとして1つなら tool は1つに 18
ユースケースの集約層 - Backend for Agents 的なレイヤ © LayerX Inc. ユースケースを複数の
Agent から利用するケースなどで、集約レイヤを設ける? BFF(Backend for Frontend) に対して、Agent 向けの API 提供層… BFA(Backend for Agents)? 19
設計の分割軸 Tool の粒度:ユースケース単位で作る © LayerX Inc. リソース単位ではなく、ユースケース単位 サービスをまたぐ場合も同様 20
設計の分割軸 Agent の配置:Backend 内か外か © LayerX Inc. Backend 言語の AI
エコシステムの充実度 AI 周りの複雑さ・開発者の分離 21
設計の分割軸 追加レイヤ:BFA(Backend for Agents) © LayerX Inc. 複雑な Agent /
複数 Agent から利用するケース Tool 向け API のレイヤを別途設ける 22
設計は一つに定まらない 設計が1つに定まることはない(多分) © LayerX Inc. LLM / AI Agent は偏在しうる
多様な大きさのタスクで利用される 1つのリソースしか触れないかもしれないし、プロダクトをまたぐかもしれない タスクの規模にフィットした設計を選択していく 23
Agent が偏在する世界の設計 Agent は 特別な一箇所に閉じない © LayerX Inc. 小さな Agent
〜 大きな Agentic workflow どの規模のタスクにも Agent は登場しうる 多様なエンジニアが触る 24
Agent 遍在を前提にした基盤・概念 Tool 定義 Agent に何を 開放するか Durable Execution Human-in-the-loop
を含む 処理の定義 および確実な実行 ... and more 必要なもの、準備していくものはまだまだたくさん! © LayerX Inc. 25