//
알아서 잘하는 에이전틱 AI 시스템 구축하기 · 안자나바 비스와스, 릭 탈루크다르
조정자-작업자-위임자(Coordinator-Worker-Delegator) 모델은 다중 에이전트 시스템을 설계하는 구조화된 접근법이다. 네 가지 핵심 원칙에 기반한다.
각 에이전트가 명확히 구분된 책임을 가진다. 조정자는 전체 흐름을 관리하고, 작업자는 구체적인 작업을 수행하며, 위임자는 작업을 적절한 작업자에게 배분한다. 하나의 에이전트가 모든 것을 처리하는 것보다 역할을 분리했을 때 각 에이전트의 프롬프트가 단순해지고 성능이 안정된다.
에이전트들이 수평적으로 나열되는 것이 아니라, 명확한 상하 관계를 가진다. 조정자가 최상위에서 전체를 총괄하고, 위임자가 중간 레이어에서 작업을 분배하며, 작업자가 최하위에서 실제 작업을 수행한다.
에이전트 간 정보가 어떤 경로로 흐르는지 명시적으로 정의한다. 불필요한 에이전트 간 통신을 줄이고, 필요한 정보만 적절한 시점에 전달되도록 설계한다.
환경 변화나 예상치 못한 상황에서 역할과 워크플로를 동적으로 조정할 수 있어야 한다.
책 전반에 걸쳐 사용되는 여행 계획 에이전트를 CWD 모델로 구현하는 과정을 상세히 다룬다.
CWD 모델에서 에이전트에 부여할 수 있는 역할을 다섯 가지로 정리한다.
| 역할 | 책임 | 여행 에이전트 예시 |
|---|---|---|
| 관리자(Manager) | 프로젝트 수준의 의사결정 | 전체 여행 계획의 방향 설정 |
| 분석가(Analyst) | 데이터 수집 및 분석 | 항공편/숙소 가격 비교 분석 |
| 반성자(Reflector) | 결과 품질 평가 및 개선 제안 | 생성된 일정의 실현 가능성 검토 |
| 탐색자(Explorer) | 새로운 옵션과 대안 탐색 | 비주류 관광지, 숨은 맛집 발굴 |
| 작업 해석자(Task Interpreter) | 상위 지시를 구체적 작업으로 변환 | "3박 4일 도쿄 여행"을 세부 작업으로 분해 |
반성자 역할이 흥미롭다. 4장에서 다룬 성찰 능력을 독립 에이전트로 분리한 것이다. 결과를 생성하는 에이전트와 평가하는 에이전트를 분리함으로써, 자기 확인 편향 문제를 구조적으로 완화할 수 있다.
다중 에이전트 시스템에서 에이전트 간 소통 방식은 시스템의 효율성과 안정성을 좌우한다.
에이전트들의 행동이 충돌하지 않도록 동기화한다. 예를 들어 항공편 예약 에이전트와 숙소 예약 에이전트가 동시에 같은 날짜 범위에서 작업할 때, 한쪽의 결과가 다른 쪽의 제약 조건이 될 수 있다.
상충하는 요구사항 사이에서 최적의 타협점을 찾는다. 예산 관리 에이전트는 비용을 줄이려 하고, 품질 관리 에이전트는 서비스 수준을 유지하려 할 때, 양쪽의 우선순위를 조율하여 균형 잡힌 결과를 도출한다.
한 에이전트가 획득한 정보를 다른 에이전트가 활용할 수 있도록 공유한다. 항공편 검색 에이전트가 발견한 경유지 정보가 관광지 추천 에이전트의 입력이 되는 식이다.
CWD 모델의 성패는 각 에이전트의 시스템 프롬프트 설계에 달려 있다. 책에서는 효과적인 시스템 프롬프트의 구성 요소를 다음과 같이 정리한다.
에이전트 간 상호작용은 크게 두 가지 패턴으로 나뉜다.
시스템 프롬프트에 "당신은 전문가입니다" 같은 모호한 역할 부여보다, "당신은 항공편 검색 전문 에이전트입니다. Amadeus API를 사용하여 사용자가 지정한 출발지/도착지/날짜에 맞는 항공편을 검색하고, 가격/경유/시간 기준으로 상위 5개를 JSON 형식으로 반환합니다"처럼 구체적이고 범위가 명확한 지시가 훨씬 안정적인 결과를 낸다.
6장은 다중 에이전트 시스템의 실질적인 설계 패턴을 제시한다. CWD 모델은 소프트웨어 아키텍처의 관심사 분리 원칙을 에이전트 시스템에 적용한 것으로, 각 에이전트의 복잡성을 줄이면서 전체 시스템의 능력을 높이는 전략이다. 역할 할당과 커뮤니케이션 패턴에 대한 체계적 정리는 실제 다중 에이전트 시스템을 설계할 때 유용한 참조점이 된다.