orchestration이 정확히 뭔가요?
에이전트 글에서 자주 보이는데 개념이 잘 안 잡힙니다. agent랑 뭐가 다른 건지...
답변 1개
쉽게 말하면 LLM 호출 한 방으로 안 끝나는 작업을 여러 단계로 쪼개서 "무슨 단계를 어떤 순서로, 실패하면 어떻게" 돌릴지 배선하는 부분이에요.
실무에서 부딪히는 건 보통 이런 것들:
- 분기 (이 답이 X면 도구 A 호출, 아니면 그냥 답)
- 리트라이 / 폴백 (툴콜 실패하거나 JSON 깨지면 재시도, 그래도 안 되면 다른 모델)
- 상태 들고 다니기 (이전 단계 결과를 다음 step 컨텍스트에 넣기)
- 병렬 (여러 검색 동시에 던지고 모아서 합치기)
agent 쪽이 "다음에 뭐 할지 모델이 알아서 정함"이라면, orchestration은 그 흐름을 코드/그래프로 명시적으로 깔아두는 쪽에 가깝다고 보면 돼요. 케바케라 경계는 좀 흐릿하지만요.
LangGraph 튜토리얼에서 노드/엣지로 그래프 그려보는 게 감 잡기엔 제일 빨랐어요. 처음엔 그냥 if문 몇 개로 시작했다가 리트라이/분기 늘어나면서 그래프로 갈아탔습니다.