Skip to content

ADK_REVIEW

lazybrain80 edited this page May 23, 2026 · 8 revisions

Google ADK ๊ฒ€ํ†  โ€” ๋…ผ์˜ ์ž๋ฃŒ

โš ๏ธ ์ด ๋ฌธ์„œ๋Š” ๋…ผ์˜ยท๊ฒ€ํ† ์šฉ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ ์„ค๊ณ„ ๊ฒฐ์ •์— ๋ฐ˜์˜๋œ ๋‚ด์šฉ์ด ์•„๋‹ˆ๋ฉฐ, 7๊ฐœ ์„ค๊ณ„ deliverable์˜ ๋ถˆ๋ณ€์‹์„ ๋ฐ”๊พธ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ADK(Agent Development Kit, ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ ํ‚คํŠธ) ์ฑ„ํƒ ์—ฌ๋ถ€๋Š” ๋ฏธ๊ฒฐ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

์ž‘์„ฑ์ผ: 2026-05-23

ํ˜„์žฌ orchestrator๋Š” LangGraph + Claude Agent SDK(Software Development Kit, ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ‚คํŠธ) ๋กœ MCP(Model Context Protocol, ๋ชจ๋ธ ์ปจํ…์ŠคํŠธ ํ”„๋กœํ† ์ฝœ) ์„œ๋ฒ„ 3๊ฐœ๋ฅผ LLM(Large Language Model, ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ) ๋„๊ตฌ๋กœ ๋…ธ์ถœํ•œ๋‹ค (OSS_INTEGRATION ยง3.3). "Google ADK๋กœ๋„ ๋™์ผํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€, ๊ทธ๋ฆฌ๊ณ  ๋„์ž… ์ด์ ์ด ์žˆ๋Š”๊ฐ€"๋ฅผ ๊ฒ€ํ† ํ•œ ๋ฉ”๋ชจ.

1. ๋‘ ๊ฒฐ์ •์€ ์„œ๋กœ ๋…๋ฆฝ์ ์ด๋‹ค

๊ฐ€์žฅ ๋จผ์ € ๋ถ„๋ฆฌํ•ด์•ผ ํ•  ์ : ํ”„๋ ˆ์ž„์›Œํฌ ๊ต์ฒด์™€ ๋ชจ๋ธ ๊ต์ฒด๋Š” ๋ณ„๊ฐœ์˜ ๊ฒฐ์ •์ด๋‹ค.

๊ฒฐ์ • ์ถ• ์„ ํƒ์ง€ ๋น„๊ณ 
ํ”„๋ ˆ์ž„์›Œํฌ LangGraph + Claude Agent SDK โ†” Google ADK ADK๋Š” ๋ชจ๋ธ ์ค‘๋ฆฝ์ 
๋ชจ๋ธ Claude(Opus/Sonnet) โ†” Gemini โ†” ๊ธฐํƒ€ LiteLLM ๋ž˜ํผ๋กœ ๊ต์ฐจ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

๋”ฐ๋ผ์„œ "ADK + Claude" ๋„, "Claude Agent SDK ์œ ์ง€ + ๋ชจ๋ธ๋งŒ Gemini" ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. ADK ๋„์ž…์ด ๊ณง Gemini ์ฑ„ํƒ์„ ์˜๋ฏธํ•˜์ง€ ์•Š๋Š”๋‹ค.

MCP๋Š” ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ์ด๋ผ ์„œ๋ฒ„ ์ธก(mcp-robot-adapter ๋“ฑ 3๊ฐœ)์€ ์–ด๋А ๊ฒฝ์šฐ๋“  ๋ณ€๊ฒฝ ๋ถˆํ•„์š”ํ•˜๋‹ค. ๋ฐ”๋€Œ๋Š” ๊ฒƒ์€ orchestrator ์•ˆ์˜ LLM ํ˜ธ์ถœ์ž๋ฟ์ด๋‹ค.

2. ๋ชจ๋ธ ์„ฑ๋Šฅ โ€” Gemini 3.5 Flash vs Claude Opus 4.7

ํ•ญ๋ชฉ Gemini 3.5 Flash Claude Opus 4.7 ์ด ํ”„๋กœ์ ํŠธ ์ค‘์š”๋„
์ถœ๋ ฅ ์†๋„ / TTFT(Time To First Token, ์ฒซ ํ† ํฐ๊นŒ์ง€ ์‹œ๊ฐ„) ~4๋ฐฐ ๋น ๋ฆ„, <500ms 1โ€“3์ดˆ โ–ณ
๋น„์šฉ (input/output, 1M tokens) ~$0.075 / ~$0.30 ~$15 / ~$75 (~100๋ฐฐ) โ—Ž
์ค‘์ฒฉ tool callยท์—๋Ÿฌ ๋ณต๊ตฌ ์–‘ํ˜ธ ๋” ์‹ ๋ขฐ์„ฑ ๋†’์Œ โ—Ž
๊ธด ๋ฉ€ํ‹ฐํ„ด instruction adherence ๋ณดํ†ต ์šฐ์ˆ˜ โ—Ž
agentic ๋ฒค์น˜ (MCP Atlas, Toolathlon ๋“ฑ) Flash๊ฐ€ ์ƒํšŒ (๊ตฌ๊ธ€ ๋ฐœํ‘œ ๊ธฐ์ค€) โ€” โ—‹

ํ•ด์„:

  • orchestrator๋Š” vision/zone/enter ๊ฐ™์€ ์‚ฌ๋žŒ-์ƒํ˜ธ์ž‘์šฉ ํŽ˜์ด์Šค์˜ ์ด๋ฒคํŠธ ํŠธ๋ฆฌ๊ฑฐ์ด๊ณ  per-session lock์œผ๋กœ ์ง๋ ฌํ™”๋œ๋‹ค (SYSTEM_DESIGN ยง7.3). ์ดˆ๋‹น ์ˆ˜์‹ญ ๋ฒˆ ๋„๋Š” tight loop์ด ์•„๋‹ˆ๋ฏ€๋กœ Flash์˜ ์†๋„ ์šฐ์œ„๊ฐ€ ๊ฒฐ์ •์ ์ด์ง€ ์•Š๋‹ค.
  • ๋ฐ˜๋Œ€๋กœ ์ถœ๋ ฅ์€ ๋กœ๋ด‡ ๋ฌผ๋ฆฌ ๋™์ž‘ ๋ช…๋ น์ด๋‹ค. ์ค‘์ฒฉ tool call ์‹ ๋ขฐ์„ฑยท์กฐ๊ฑด๋ถ€ instruction ์ค€์ˆ˜๊ฐ€ ์•ˆ์ „๊ณผ ์ง๊ฒฐ๋˜์–ด Opus์˜ ๊ฐ•์ ์ด ์ •๋‹นํ™”๋œ๋‹ค. ์ด๋Š” SYSTEM_DESIGN ยง15์—์„œ Opus(ํ’ˆ์งˆ) vs Sonnet(latency)์„ ์ €์šธ์งˆํ•˜๋˜ ์ถ•๊ณผ ๊ฐ™๋‹ค.
  • ๋น„์šฉ 100๋ฐฐ ์ฐจ์ด๋Š” ๋ฌด์‹œ ๋ชป ํ•œ๋‹ค. ๊ฐ€๋“œ๋ ˆ์ผ์ด ์ด๋ฏธ MCP ์„œ๋ฒ„ ์ธก์— ๊ฐ•์ œ๋˜๋ฏ€๋กœ(JSON schema โ†’ capability whitelist โ†’ zone polygon clamp โ†’ velocity clamp), "๋ชจ๋ธ์ด ๊ฐ€๋” ํ‹€๋ ค๋„ ์„œ๋ฒ„์—์„œ ๋ง‰ํžŒ๋‹ค"๋Š” ์•ˆ์ „๋ง์ด ์žˆ๋‹ค. โ†’ ์ €๋นˆ๋„ ๋‹จ์ˆœ ๊ฒฐ์ •์€ ์ €๋น„์šฉ ๋ชจ๋ธ, ๊ณ ์œ„ํ—˜ ๊ฒฐ์ •์€ Opus ๊ฐ™์€ ํ‹ฐ์–ด๋ง ์—ฌ์ง€๊ฐ€ ์žˆ๋‹ค.

์š”์ง€: Gemini๋กœ ๋ฐ”๊ฟ€ ๊ฐ•ํ•œ ์ด์œ ๋Š” ์„ฑ๋Šฅ์ด ์•„๋‹ˆ๋ผ ๋น„์šฉ์ด๋‹ค. ์•ˆ์ „ยท์‹ ๋ขฐ์„ฑ ๊ด€์ ์—์„  Claude Opus๊ฐ€ ์ด ์›Œํฌ๋กœ๋“œ์— ์—ฌ์ „ํžˆ ๋” ๋ถ€ํ•ฉํ•œ๋‹ค.

3. Google ADK ๋„์ž… ์ด์  (ํ”„๋ ˆ์ž„์›Œํฌ)

ADK๋Š” 2026๋…„ 1.0 GA(General Availability, ์ •์‹ ์ถœ์‹œ) ์— ๋„๋‹ฌํ–ˆ๊ณ  (Python/Go/Java/TypeScript), ์ฃผ์š” ๊ฐ•์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

์ข‹์€ ์ 

  • MCP 1๊ธ‰ ์ง€์› โ€” MCPToolset์œผ๋กœ MCP ์„œ๋ฒ„๋ฅผ ๋ถ™์ด๋ฉด ๋„๊ตฌ ์ž๋™ ๋“ฑ๋ก. ๊ธฐ์กด MCP ์„œ๋ฒ„ 3๊ฐœ๋Š” ๊ทธ๋Œ€๋กœ ์žฌ์‚ฌ์šฉ.
  • A2A(Agent-to-Agent, ์—์ด์ „ํŠธ ๊ฐ„ ํ†ต์‹ ) ํ”„๋กœํ† ์ฝœ โ€” ๋ฉ€ํ‹ฐ ์—์ด์ „ํŠธ ์œ„์ž„ ํ‘œ์ค€ํ™”. ํ–ฅํ›„ "๋กœ๋ด‡๋ณ„ sub-agent" ํ™•์žฅ ์‹œ ์œ ๋ฆฌ.
  • ์›Œํฌํ”Œ๋กœ์šฐ ์—์ด์ „ํŠธ (Sequential/Parallel/Loop) ๋‚ด์žฅ โ€” LangGraph ๊ทธ๋ž˜ํ”„๋ฅผ ๋Œ€์ฒดํ•  ์ถ”์ƒํ™” ์กด์žฌ.
  • Vertex AI / GKE(Google Kubernetes Engine, ๊ตฌ๊ธ€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์—”์ง„) ๋ฐฐํฌ ํ†ตํ•ฉ โ€” GCP(Google Cloud Platform, ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ) ์œ„์—์„œ ์šด์˜ํ•œ๋‹ค๋ฉด ๋งค๋„๋Ÿฌ์›€.

์ด ํ”„๋กœ์ ํŠธ์— ํ•œํ•ด ํšŒ์˜์ ์ธ ์ 

  • ADK์˜ ๋‘ ๊ฐ„ํŒ ๊ธฐ๋Šฅ์ด ์ด ํ”„๋กœ์ ํŠธ์—์„  ์ž˜ ์•ˆ ๋งž๋Š”๋‹ค. ADK๊ฐ€ ๋‚ด์„ธ์šฐ๋Š” ๊ฐ•์ ์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€์ธ๋ฐ, ๋‘˜ ๋‹ค ์šฐ๋ฆฌ ๊ตฌ์กฐ์™€๋Š” ์–ด๊ธ‹๋‚œ๋‹ค.
    • A2A(์—์ด์ „ํŠธ ๊ฐ„ ์ง์ ‘ ํ†ต์‹ ): ADK๋Š” ์—ฌ๋Ÿฌ ์—์ด์ „ํŠธ๊ฐ€ ์„œ๋กœ ์ง์ ‘ ๋Œ€ํ™”ํ•˜๋ฉฐ ์ผ์„ ๋‚˜๋ˆ  ๊ฐ–๋Š” ๋ฐฉ์‹์„ ์ž˜ ์ง€์›ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ๋ชจ๋“  ์„œ๋น„์Šค๊ฐ€ MQTT ํ•œ ๊ณณ์„ ๊ฑฐ์ณ์„œ๋งŒ ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ธฐ๋กœ ์ •ํ–ˆ๊ณ (์„ค๊ณ„ ๋ถˆ๋ณ€์‹), orchestrator๋„ ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์•„๋‹ˆ๋ผ ์‚ฌ์‹ค์ƒ ํ•˜๋‚˜๋‹ค. ์ฆ‰ "์—์ด์ „ํŠธ๋ผ๋ฆฌ ์ง์ ‘ ๋Œ€ํ™”"ํ•  ์ผ์ด ๊ฑฐ์˜ ์—†์–ด์„œ ์ด ๊ธฐ๋Šฅ์„ ์“ธ ์ž๋ฆฌ๊ฐ€ ์—†๋‹ค.
    • ์„ธ์…˜ ์ƒํƒœ ๊ด€๋ฆฌ: ADK๋Š” ๋Œ€ํ™” ๋งฅ๋ฝยท์ง„ํ–‰ ์ƒํƒœ๋ฅผ ์ž๊ธฐ ์•ˆ์— ์ €์žฅํ•ด ์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ–๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์šฐ๋ฆฌ๋Š” ์ด๋ฏธ ๋ชจ๋“  ์ƒํƒœ๋ฅผ Home Assistant ํ•œ ๊ณณ์—๋งŒ ์ €์žฅํ•˜๊ธฐ๋กœ ๋ชป ๋ฐ•์•˜๋‹ค(orchestrator๋Š” ์ƒํƒœ๋ฅผ ์•ˆ ๋“ค๊ณ  ๋งค๋ฒˆ HA์—์„œ ์กฐํšŒํ•˜๋Š” stateless graph). ๊ทธ๋ž˜์„œ ADK์˜ ์ƒํƒœ ์ €์žฅ ๊ธฐ๋Šฅ์„ ์ผœ๋ฉด "์ƒํƒœ๋ฅผ ๋‘ ๊ณณ์— ๋‘๋Š”" ์…ˆ์ด ๋˜์–ด ์˜คํžˆ๋ ค ์›์น™๊ณผ ์ถฉ๋Œํ•œ๋‹ค.
    • ์ •๋ฆฌํ•˜๋ฉด, ADK๋ฅผ ์จ๋„ ์ด ๋‘ ๊ธฐ๋Šฅ์€ ๊บผ๋‘๊ฑฐ๋‚˜ ์šฐํšŒํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ, ADK๋กœ ๋ฐ”๊ฟ”์„œ ์–ป๋Š” ์‹ค์ต์ด ๊ทธ๋งŒํผ ์ค„์–ด๋“ ๋‹ค.
  • ๋ฐฐํฌ ๋ชจ๋ธ์ด ghcr.io ๊ธฐ๋ฐ˜ cloud-build/local-run (DEPLOYMENT) ์ด๋ผ GCP ์ข…์† ์ด์ ์ด ์•ฝํ•˜๋‹ค.
  • ํ”„๋กฌํ”„ํŠธ ์บ์‹ฑ ๋ฆฌ์Šคํฌ: "system prompt + zone playbook โ†’ Anthropic prompt caching" ์ตœ์ ํ™”๋Š” Claude Agent SDK๊ฐ€ Anthropic API๋ฅผ ์ง์ ‘ ์น  ๋•Œ ๊ฐ€์žฅ ๊น”๋”ํ•˜๋‹ค. ADK๊ฐ€ Claude๋ฅผ LiteLLM ๊ฒฝ์œ ๋กœ ๋ถ€๋ฅด๋ฉด cache_control ์ „๋‹ฌ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์ฆํ•ด์•ผ ํ•˜๊ณ , ์•ˆ ๋˜๋ฉด ๋น„์šฉ ์ด์ ์ด ๊นŽ์ธ๋‹ค.

4. ์ •๋ฆฌ / ๊ถŒ๊ณ  ๋ฐฉํ–ฅ

  • ๋ชจ๋ธ: Gemini์˜ ๋งค๋ ฅ์€ ์†๋„๋ณด๋‹ค ๋น„์šฉ(100x). ๋‹จ ์•ˆ์ „ ๋ช…๋ น ๋””์ŠคํŒจ์น˜ ์›Œํฌ๋กœ๋“œ ํŠน์„ฑ์ƒ Claude์˜ tool-use ์‹ ๋ขฐ์„ฑ์ด ๋” ๋ถ€ํ•ฉ โ†’ ์ „๋ฉด ๊ต์ฒด๋ณด๋‹ค ํ‹ฐ์–ด๋ง ๊ฒ€ํ† ๊ฐ€ ํ•ฉ๋ฆฌ์ .
  • ํ”„๋ ˆ์ž„์›Œํฌ: ADK๋Š” ํ›Œ๋ฅญํ•˜๋‚˜, MQTT ์ค‘์‹ฌยทHA ์ƒํƒœ์ €์žฅยท้žGCP ๋ฐฐํฌ ๊ตฌ์กฐ์—์„œ๋Š” LangGraph ๋Œ€๋น„ ์ถ”๊ฐ€ ์ด๋“์ด ์ œํ•œ์ ์ด๊ณ  prompt caching ๊ฒ€์ฆ ๋ถ€๋‹ด์ด ์ƒ๊ธด๋‹ค.
  • ๋‘ ๋ณ€๊ฒฝ ๋ชจ๋‘ SYSTEM_DESIGN ยง15์— ์—†๋Š” ์‹ ๊ทœ ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •์ด๋ฏ€๋กœ, ์„ค๊ณ„ ๋ฐ˜์˜ ์ „ ํ•ฉ์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

5. ์ถœ์ฒ˜

Clone this wiki locally