역할별 에이전트 분리 + 전역 메모리 + 로그 관측 + 데이터 형식 명시 경험
졸업 프로젝트에서 멀티에이전트 오케스트레이터를 처음 설계해봤습니다. 여러 도구를 가진 에이전트를 하나의 파이프라인으로 묶을 때, 어떤 에이전트에 어떤 요청을 보낼지 라우팅 로직이 핵심이라는 걸 배웠습니다. 처음에는 단일 에이전트에 도구를 다 몰아넣었다가, 도구가 많아질수록 컨텍스트가 오염되는 문제가 생겨서 에이전트를 역할별로 분리했습니다. 대화 메모리는 전역 상태로 관리하면서 각 에이전트가 이전 단계 결과를 참조할 수 있게 했습니다. 관측 측면에서는 각 에이전트가 무엇을 받아서 무엇을 출력했는지 로그로 남기는 구조를 만들어서 오류 원인을 추적하기 쉽게 했습니다. 에이전트끼리 결과를 넘길 때 데이터 형식을 명시적으로 정의해두지 않으면 파이프라인이 조용히 실패하는 케이스도 경험했습니다.
오케스트레이터 설계는 각 에이전트의 책임 범위를 얼마나 명확하게 가르냐에 달려 있다는 걸 배웠습니다.