LangGraph — 그래프로 표현하는 다중 에이전트 구조
LangGraph — 그래프로 표현하는 다중 에이전트 구조
모든 복잡한 작업이 다중 에이전트를 요구하는 건 아니에요. 하지만 특정 상황, 예컨대 한 에이전트가 도구가 너무 많아 선택을 잘못하거나, 전문 지식이 많은 도메인에서는 여러 에이전트가 유리해요.
대표적인 협업 패턴
LangChain 문서는 네 가지 패턴을 제시해요.
- Subagents: 한 메인 에이전트가 서브에이전트를 도구처럼 호출하고 라우팅을 책임져요. 병렬 실행이 가능해 다중 도메인에서 가장 효율적이에요(약 5콜, 9K 토큰).
- Handoffs: 담당을 이어받는 방식. 순차 실행이라 비용이 크고(7+콜, 14K+ 토큰) 여러 도메인 동시 질의엔 비효율적이에요.
- Skills: 서브에이전트가 필요할 때 컨텍스트를 불러오는 방식. 콜 수는 적지만 컨텍스트 누적으로 토큰이 커져요.
- Router: 라우터가 적절한 전문 에이전트/스킬을 고르는 구조. 서브에이전트처럼 병렬 친화적이에요.
핵심 아이디어
패턴은 섞을 수 있어요. 예: 서브에이전트가 사용자 지정 워크플로를 호출하는 도구를 쓰고, 그 워크플로가 다시 라우터를 부르는 식이죠. 상태 저장 패턴(Handoffs, Skills)은 반복 요청에서 콜을 40~50% 줄여요.