피드로 돌아가기
Dev.toAI/ML
원문 읽기
AWS Fargate 기반 Google ADK Multi-Agent 분산 오케스트레이션 구현
Multi-Agent A2A with the Agent Development Kit(ADK), Amazon Fargate, and Gemini CLI
AI 요약
Context
Multi-Agent AI 시스템 구축 시 플랫폼 간 Python 버전 관리의 파편화와 분산 환경에서의 에이전트 간 통신 보안 확보가 주요 병목 지점임. 특히 Google 생태계 도구를 non-Google 인프라에서 운영할 때 발생하는 인증 및 동적 서비스 발견 문제 해결이 필요함.
Technical Solution
- Gemini-2.5-Flash 모델 중심의 효율적 추론 구조와 복잡한 작업 처리를 위한 Gemini-2.5-Pro의 계층적 모델 배치
- Google OIDC 토큰을 처리하는 authenticated_httpx.py 유틸리티를 통한 AWS Fargate 환경 내 서비스 간 보안 통신 구현
- x-forwarded-host 헤더 기반의 a2a_utils.py 미들웨어를 적용하여 동적 컨테이너 환경의 Agent Card URL 자동 재작성 및 서비스 발견 해결
- Pydantic 스키마를 활용한 Judge Agent의 구조화된 출력 설계를 통한 오케스트레이션 로직의 타입 안정성 확보
- 단일 Fargate Task 내 5개 컨테이너 배치를 통한 리소스 최적화 및 shared/adk_app.py 진입점 통일을 통한 일관된 로깅 및 A2A 등록 체계 구축
- pyenv 및 nvm을 활용한 런타임 환경 표준화를 통해 플랫폼 간 Python/Node.js 버전 불일치 제거
실천 포인트
1. Multi-Agent 설계 시 작업 복잡도에 따라 Flash/Pro 모델을 분리 배치하여 비용과 성능 최적화
2. 분산 컨테이너 환경에서 서비스 URL 하드코딩을 피하고 HTTP 헤더 기반의 동적 라우팅 미들웨어 검토
3. 에이전트 간 데이터 교환 시 Pydantic 등 스키마 검증 라이브러리를 도입하여 런타임 타입 에러 방지
4. non-native 클라우드 환경 배포 시 OIDC 기반의 서비스 간 인증(Service-to-Service Auth) 모듈 우선 구현