구글 에이전트 개발 키(Google Agent Development Kit, ADK)란?
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
AI/에이전트 개발자, 소프트웨어 엔지니어, DevOps 엔지니어
핵심 요약
- ADK는 AI 에이전트를 개발하기 위한 오픈소스 프레임워크로,
VSCode
,Docker
,Google CloudRun
등 다양한 환경에서 실행 가능 MCP(Model Context Protocol)
를 통해 외부 도구/API와의 통합이 가능하며,Gemini 2.5
,FastAPI
,Streamlit
을 활용한 예제 제공이벤트 루프(Event Loop)
기반의 설계로, 사용자 요청 처리 및 도구 호출 간 상호작용을 효율적으로 관리
섹션별 세부 요약
1. Google ADK 개요
- 오픈소스 프레임워크로,
Gemini
,Claude
,GPT
등 다양한 언어 모델 지원 조직화된 워크플로우
,맥락 기억(Contextual Memory)
,협업 에이전트(Collaborative Agents)
등 핵심 기능 제공- 공식 문서 및 빠른 시작 가이드 제공
2. ADK 이벤트 루프(Event Loop)
Runner
가 사용자 요청을 받아Agent
실행Agent
가 처리 결과를Event
로 반환 →Runner
가 상태 변경, 로깅, UI 전달 등 처리- 이 과정이 반복되며, 사용자 요청 완료 시 종료
3. MCP(Model Context Protocol)
- 대규모 언어 모델(LLM)과 외부 앱/도구 간 통신 표준화
- 예시:
Gemini
,Claude
와의 연동 지원 - 관련 링크: Anthropic 공식 문서, MCP GitHub 저장소
4. 로컬/리모트 MCP 예제 구현
- 로컬 MCP:
FileOps
도구 사용,Linux (WSL)
환경에서 실행 가능 nodejs
,npm
,npx
설치 필요- 리모트 MCP:
Serper
검색 도구 사용,Serper API 키
및Gemini API 키
설정 필요 .env
파일에 환경 변수 정의:
```python
SERPER_API_KEY=PASTE_YOUR_ACTUAL_API_KEY_HERE
GOOGLE_API_KEY=PASTE_YOUR_ACTUAL_API_KEY_HERE
```
5. 코드 구현 예시
- 프론트엔드 (Streamlit):
```python
import streamlit as st
st.set_page_config(page_title="Agent Chat")
user_query = st.chat_input("Ask for tool commands or anything...")
# 사용자 입력 처리 및 응답 표시 로직
```
- 백엔드 (FastAPI):
```python
from fastapi import FastAPI
from google.adk.agents.llm_agent import LlmAgent
app = FastAPI()
MODEL = "gemini-2.5-flash-preview-04-17"
# ADK 에이전트 생성 및 MCP 도구 연동 로직
```
결론
- ADK 프레임워크를 활용한 에이전트 개발은
Gemini 2.5
,FastAPI
,Streamlit
등과의 통합을 통해 실무 적용 가능 - 필수 설치 사항:
nodejs
,npm
,npx
,fastapi
,uvicorn
,google-adk
등 의존성 설치 - GitHub 예제 프로젝트 활용: 로컬 MCP 예제, 리모트 MCP 예제