콘텐츠로 이동

ADK와 Agent Engine

ADK(Agent Development Kit)는 Google이 공개한 오픈소스 AI 에이전트 프레임워크이고, Agent Engine은 만든 에이전트를 배포하는 Vertex AI의 관리형 런타임입니다.

개념설명
AgentLLM + instruction + tools 로 구성되는 실행 단위
Tool에이전트가 호출하는 함수/API (Python 함수, OpenAPI, MCP 등)
Sub-agent에이전트 아래에 다른 에이전트를 배치하는 멀티 에이전트 구성
Session / State대화 세션과 상태 관리
Runner로컬 실행/디버깅 (adk web, adk run)
from google.adk.agents import Agent
def get_exchange_rate(currency: str) -> dict:
"""환율을 조회합니다."""
return {"currency": currency, "rate": 1350.0}
root_agent = Agent(
name="fx_agent",
model="gemini-2.5-flash",
instruction="환율 질문에 도구를 사용해 답변한다.",
tools=[get_exchange_rate],
)
Terminal window
pip install google-adk
adk web # 로컬 개발 UI (http://localhost:8000)
옵션장점고려사항
Agent Engine세션/메모리 관리 내장, 완전관리형, Vertex AI 통합런타임 커스터마이징 제한
Cloud Run자유로운 커스터마이징, 기존 CI/CD 재사용세션 저장소 등 직접 구성
GKE대규모/복잡 구성운영 부담 최대

데모/PoC는 Cloud Run, 프로덕션 에이전트 플랫폼은 Agent Engine을 기본 검토안으로 잡는 것을 권장합니다.

  • Coordinator + Specialist: 루트 에이전트가 의도 분류 후 전문 서브 에이전트에 위임
  • Sequential / Parallel Workflow: 정해진 순서/병렬로 에이전트 실행 (Workflow Agents)
  • Agent-as-a-Tool: 다른 에이전트를 도구처럼 호출
  1. instruction은 짧은 규칙 목록으로 — 장문 서술보다 불릿 규칙이 안정적
  2. 도구 docstring이 곧 스펙 — 파라미터 설명을 명확히 작성
  3. 상태 공유는 session.state 활용, 도구 간 암묵적 전역변수 금지
  4. 평가: adk eval로 시나리오 회귀 테스트 자동화
  5. MCP 서버 연결로 외부 시스템(DB, GitHub 등) 도구화 가능