adk

2 개의 포스트

ODW #2: ADK로 싱글/멀티 에이전트를 개발해 사내 시스템과 통합 (새 탭에서 열림)

LY Corporation은 사내 AI 활용의 개인차를 극복하고 업무 생산성을 높이기 위해 'ADK(Agent Development Kit)'를 활용한 싱글 및 멀티 에이전트 개발 워크숍을 진행했습니다. 이 워크숍은 개인 중심의 AI 도구 활용에서 벗어나, 팀 단위로 최적화된 AI 에이전트를 구축하고 MCP(Model Context Protocol)를 통해 사내 시스템과 통합하는 실무 지식을 공유하는 데 중점을 두었습니다. 결과적으로 복잡한 업무를 자동화하는 멀티 에이전트 시스템을 직접 구현함으로써 지식 사일로 현상을 해소하고 조직 차원의 기술 상향 평준화를 목표로 하고 있습니다. **사내 AI 활용의 한계와 워크숍의 필요성** * **지식의 사일로화:** 개인별로 로컬 AI 도구(Cline, Claude Code 등)를 사용하면서 활용 능력에 따른 생산성 격차가 발생하고, 유사한 문제에 대해 각자 프롬프트를 최적화하는 중복 작업이 빈번해졌습니다. * **싱글 에이전트의 한계:** 단일 LLM 기반 에이전트만으로는 복잡한 비즈니스 로직이나 전문적인 대응에 한계가 있으며, 이를 해결할 수 있는 멀티 에이전트 개념에 대한 이해가 부족한 상황이었습니다. * **정보 접근의 어려움:** Jira, Confluence 등 사내 시스템에 파편화된 정보를 검색하고 요약하는 데 많은 시간이 소요되어, 이를 자동화할 수 있는 중앙 집중형 에이전트 호스팅의 필요성이 대두되었습니다. **에이전트 개발 도구: ADK와 MCP** * **ADK (Agent Development Kit):** 에이전트의 동작을 정의하고 멀티 에이전트 시스템을 구현하기 위한 오픈소스 프레임워크입니다. Python 등을 활용해 함수를 정의하면 에이전트가 이를 도구(Tool)로 인식하여 실행할 수 있게 해줍니다. * **MCP (Model Context Protocol):** LLM을 Jira, Confluence와 같은 외부 시스템과 연결하는 표준 프로토콜입니다. 이를 통해 에이전트가 사내 문서나 업무 이력을 능동적으로 탐색하고 활용할 수 있는 환경을 제공합니다. * **컨텍스트 관리:** 너무 많은 도구를 에이전트 하나에 부여하면 정확도가 떨어지므로, 멀티 에이전트 구조를 통해 역할별로 컨텍스트를 분리하여 성능을 최적화합니다. **멀티 에이전트를 활용한 '프로젝트 추적기' 구현** * **순차적 에이전트(Sequential Agent) 구조:** 복잡한 프로젝트 관리 업무를 해결하기 위해 4개의 특화된 에이전트를 순차적으로 연결하는 파이프라인을 구성했습니다. * **단계별 역할 분담:** * 1단계: 진행 중인 작업 분석(Jira 데이터 수집) * 2단계: 할 일(Todo) 목록 분석 및 우선순위 파악 * 3단계: 수집된 정보를 종합하여 마크다운 형식의 리포트 생성 * 4단계: 생성된 리포트를 지정된 언어로 번역 * **실무 적용 효과:** 사용자가 일일이 데이터를 찾고 정리할 필요 없이, 멀티 에이전트 시스템이 사내 시스템에 접속하여 분석부터 번역까지 완료된 종합 보고서를 즉시 제공합니다. 단순히 AI 도구를 도입하는 것을 넘어, 팀의 고유한 도메인 지식과 사내 시스템을 결합한 '팀 전용 에이전트'를 구축하는 것이 중요합니다. ADK와 같은 프레임워크를 활용해 멀티 에이전트 환경을 구축하고 이를 호스팅하여 공유한다면, 개인의 프롬프트 엔지니어링 역량에 의존하지 않고 조직 전체의 업무 효율을 상향 평준화할 수 있습니다.

GitLab을 이용한 Google Agent Engine으로의 안전하고 빠른 배포 (새 탭에서 열림)

Google의 AI 에이전트 전용 관리형 런타임인 'Agent Engine'에 GitLab CI/CD를 활용하여 안전하고 효율적으로 배포하는 방법을 안내합니다. GitLab의 네이티브 Google Cloud 통합과 워크로드 아이덴티티 페더레이션(Workload Identity Federation) 기술을 활용하면 복잡한 인프라 관리 없이 보안이 강화된 자동 배포 환경을 구축할 수 있습니다. 이를 통해 개발자는 서버 관리나 보안 설정의 번거로움에서 벗어나 에이전트 로직 개발에만 집중할 수 있는 최적화된 DevSecOps 워크플로우를 확보하게 됩니다. **Agent Engine의 역할과 가치** * AI 에이전트를 위해 설계된 Google Cloud의 관리형 런타임으로, 인프라의 구축, 확장, 세션 관리 및 메모리 저장소를 자동으로 처리합니다. * 개발자가 하위 인프라를 직접 관리할 필요가 없으며, Google Cloud의 로깅, 모니터링, IAM(ID 및 액세스 관리) 시스템과 네이티브하게 통합됩니다. * 에이전트가 운영 환경에서 안정적으로 실행되고 확장될 수 있는 최적화된 환경을 제공합니다. **GitLab을 통한 배포의 보안 및 효율성** * **내장 보안 스캐닝:** 별도의 구성 없이도 의존성 스캐닝, SAST(정적 애플리케이션 보안 테스트), 비밀 정보 탐지 등의 보안 검사가 배포 과정에서 자동으로 수행됩니다. * **키리스(Keyless) 인증:** 워크로드 아이덴티티 페더레이션을 사용하여 서비스 계정 키 파일 없이 Google Cloud에 인증하므로, 키 유출로 인한 보안 위험을 근본적으로 제거합니다. * **파이프라인 간소화:** GitLab의 CI/CD 템플릿과 Agent Development Kit(ADK)를 결합하여 복잡한 배포 로직을 체계적으로 관리할 수 있습니다. **IAM 통합 및 환경 설정** * GitLab 프로젝트의 통합 설정에서 Google Cloud 프로젝트 ID, 워크로드 아이덴티티 풀 ID 등을 입력하여 플랫폼 간 신뢰 관계를 구축합니다. * 배포를 위해 서비스 주체(Service Principal)에 `roles/aiplatform.user`와 `roles/storage.objectAdmin` 권한을 반드시 부여해야 합니다. * 이 설정 과정을 통해 생성된 스크립트를 Google Cloud Shell에서 실행함으로써 안전한 인증 기반을 마련합니다. **CI/CD 파이프라인 구성 및 실행** * `.gitlab-ci.yml` 파일을 통해 테스트(보안 스캔)와 배포(Deploy) 두 단계로 구성된 파이프라인을 정의합니다. * 배포 단계에서는 `identity: google_cloud` 지시어를 사용하여 키리스 인증을 활성화하고, ADK CLI의 `adk deploy agent_engine` 명령어를 사용하여 에이전트를 패키징 및 배포합니다. * 파이프라인 캐싱 기능을 활용하여 pip 의존성 설치 속도를 높이고 전체적인 배포 사이클을 단축합니다. **실용적인 결론** AI 에이전트의 배포와 운영에서 가장 큰 걸림돌은 보안 설정과 인프라 관리입니다. GitLab과 Google Agent Engine을 결합한 이 방식은 보안 스캔을 자동화하고 인증 과정을 간소화함으로써, 엔터프라이즈 급의 안전성을 유지하면서도 배포 속도를 획기적으로 높일 수 있는 최선의 선택이 될 것입니다.