에이전트 핸드오프 (Agent Handoff)
멀티에이전트 시스템에서 한 에이전트가 완료한 작업 결과를 다음 에이전트에 전달하는 패턴.
핵심 메커니즘
에이전트 A의 최종 AI 메시지를 Human 메시지로 변환해 에이전트 B에 전달한다.
# AI 메시지 → Human 메시지로 변환
last_message = state["messages"][-1]
handoff_message = HumanMessage(content=last_message.content)이유: 다음 에이전트가 이전 에이전트의 결과를 “사용자가 내린 새 지시”로 인식해 자연스럽게 이어 처리한다. AI 메시지로 전달하면 대화 컨텍스트 상 혼선이 생길 수 있다.
LangGraph Command 통합
return Command(
goto="next_agent",
update={"messages": [handoff_message] + result_messages}
)종료 판단
시스템 프롬프트에 정의된 “최종 답변” 텍스트를 출력에서 감지:
- 포함 →
Command(goto=END)로 종료 - 미포함 → 다음 에이전트로 핸드오프