에이전트

에이전트 핸드오프

Agent Handoff

에이전트가 자기 역할 밖의 요청을 받았을 때, 그 일에 맞는 다른 에이전트에게 대화의 주도권과 맥락을 함께 넘기는 방식이다. 상담원이 기술 문의 전화를 기술팀으로 돌리듯 사용자가 같은 말을 되풀이하지 않게 하며, 고객 지원처럼 담당 분야가 뚜렷하게 나뉘는 멀티에이전트 시스템에서 쓴다.

방식사용자에게 답하는 쪽이럴 때 쓴다
핸드오프넘겨받은 에이전트담당 분야가 뚜렷하게 나뉠 때
에이전트를 도구로 호출처음 에이전트(관리자)여러 전문가의 결과를 모아 답 하나로 만들 때
단일 에이전트 + 도구에이전트 하나역할이 단순할 때

모델에게는 '넘기기 도구'로 보인다

OpenAI Agents SDK에서는 에이전트를 만들 때 handoffs 목록에 넘겨받을 에이전트를 적는다. 모델에게는 이것이 '결제 에이전트로 넘기기' 같은 도구로 보이고, 모델이 그 도구를 부르면 다음 차례부터 해당 에이전트가 대화를 이어받는다. 세부 설정이 필요하면 handoff() 함수로 감싸서 등록한다.

LangGraph에서는 조건부 엣지나 다음에 실행할 노드를 지정하는 방식으로 같은 흐름을 만든다. 예전 OpenAI Swarm도 이 패턴이 핵심이었고, A2A 같은 에이전트 간 통신 표준은 서로 다른 시스템의 에이전트끼리 일을 주고받는 방법을 정한다.

설계 핵심은 '언제'와 '무엇을'

정할 것어떻게
언제 넘길지각 에이전트 지침에 "결제 오류면 결제 에이전트로"처럼 기준을 적는다
무엇을 넘길지대화 전체, 또는 필요한 부분만 걸러서 넘긴다 (Agents SDK는 입력 필터 제공)
넘길 때 할 일고객 정보 조회 같은 준비 작업을 콜백으로 먼저 실행한다

예를 들어 고객 지원이라면 일반 문의 에이전트를 입구로 두고, 결제·환불·기술 에이전트를 넘길 대상으로 연결한다. 사용자가 "결제가 안 돼요"라고 하면 입구 에이전트가 결제 에이전트로 넘기고, 그 뒤 대화는 결제 에이전트가 직접 이어 간다.

기준이 겹치면 서로 떠넘긴다

담당 범위가 겹치면 두 에이전트가 요청을 계속 주고받는 핑퐁이 생긴다. 범위는 겹치지 않게 적고, 넘길 수 있는 대상도 꼭 필요한 곳만 열어 둔다. 대화 이력을 통째로 넘기면 대화가 길어질수록 비용이 늘고 초점도 흐려지므로, 긴 대화는 요약하거나 걸러서 넘긴다.

결과를 모아야 하면 핸드오프가 아니다

Anthropic이 소개한 리서치 시스템처럼 주 에이전트가 하위 에이전트에게 조사를 나눠 맡기고 결과를 모으는 일에는 관리자 방식이 맞다. 핸드오프는 주도권을 넘기면 처음 에이전트가 빠지기 때문이다. 역할이 하나뿐이라면 에이전트를 나누지 않는 편이 단순하고 디버깅도 쉽다.

창구 하나에 담당이 여럿인 곳에서 쓴다

가장 흔한 구조는 입구에 분류 담당 에이전트를 두고, 요청 내용을 보고 담당 에이전트로 넘기는 방식이다. 사용자는 창구 하나와 대화하지만, 실제 답은 그 분야를 맡은 에이전트가 한다.

어디서어떻게 쓰나
고객 지원 챗봇입구 에이전트가 문의를 분류해 결제·환불·기술 에이전트로 넘기고, 이후 대화는 담당 에이전트가 이어 간다
사내 헬프데스크IT·인사·총무 문의를 한 창구에서 받아 분야별 에이전트로 넘긴다
다국어 응대사용자 언어를 보고 그 언어로 지침을 받은 에이전트에게 대화를 넘긴다
#위임#전환#멀티에이전트
참고 자료
관련 영상
← AI Wiki에서 더 보기
updated at 2026-10-20