오케스트레이션 vs 에이전트 — 지휘자와 연주자의 차이

…

한줄 요약

에이전트는 자율적으로 행동하는 단일 AI고, 오케스트레이션은 여러 에이전트의 협력을 설계하는 상위 구조다. 문제 크기에 맞는 구조를 고르는 것이 핵심이다.

본문

왜 용어가 헷갈리는가

2024년 AI 분야에서 “에이전트”라는 단어가 과도하게 쓰이게 됐다.

검색 하나 하는 간단한 봇도 에이전트, 수십 개의 도구를 써서 복잡한 업무를 처리하는 시스템도 에이전트다. “멀티 에이전트 시스템”이라고 부르기도 하고 “오케스트레이션”이라고 부르기도 한다.

이 혼란 때문에 많은 팀이 단순한 문제에 과도하게 복잡한 구조를 도입하거나, 반대로 복잡한 문제에 너무 단순한 구조를 쓴다.

층위로 정리하면 명확해진다.


3층 구조

레벨 3: 오케스트레이션 레이어
        "여러 에이전트를 언제, 어떤 순서로, 어떻게 협력시킬지"
              ↕
레벨 2: 에이전트 레이어
        "주어진 목표를 달성하기 위해 스스로 판단하고 도구를 사용"
              ↕
레벨 1: 툴/모델 레이어
        "검색, 계산, DB 조회, API 호출 같은 구체적 행동"

레벨 1 — 툴 (Tool)

특정 기능을 실행하는 함수다. 자율성이 없다. 호출되면 실행하고 결과를 반환한다.

예시:

  • get_lab_result(patient_id, test_name) → 검사 결과 반환
  • search_guideline(query) → 가이드라인 문서 반환
  • calculate_egfr(creatinine, age, sex) → eGFR 수치 반환

툴은 “무엇을 할지 판단”하지 않는다. 호출받으면 실행할 뿐이다.


레벨 2 — 에이전트 (Agent)

목표를 받으면 어떤 툴을 어떤 순서로 쓸지 스스로 결정한다.

목표: "이 환자에게 메트포르민 처방 가능한가?"

에이전트의 판단:
→ [생각] 신기능 확인 필요
→ [행동] get_lab_result("P-2023", "eGFR")
→ [관찰] eGFR = 28
→ [생각] eGFR 28이면 금기 기준 확인 필요
→ [행동] search_guideline("metformin contraindication CKD")
→ [결론] 금기, 대안 제시

계획하고, 실행하고, 결과를 보고, 다음 행동을 조정한다.


레벨 3 — 오케스트레이션 (Orchestration)

여러 에이전트가 협력하도록 조율한다.

오케스트레이터가 하는 일:
- 어떤 에이전트에게 어떤 태스크를 맡길지 결정
- 에이전트 간 결과를 전달
- 병렬/순차 실행 조율
- 실패한 에이전트 재시도 또는 우회
- 최종 결과 통합

단일 에이전트 vs 오케스트레이션 선택 기준

단일 에이전트로 충분한 경우

조건예시
하나의 맥락에서 해결 가능SOAP 노트 초안 작성
필요한 툴이 5개 이하특정 약물 정보 조회
순차 작업, 병렬 불필요환자 편지 작성
전문성이 한 도메인에 집중영상 판독 보조

오케스트레이션이 필요한 경우

조건예시
다른 전문 지식이 함께 필요다학제 케이스 검토
병렬 처리로 빨라지는 태스크 있음전체 병동 회진 준비
태스크가 너무 길어서 컨텍스트 부족연간 환자 관리 보고서
체크 앤 밸런스 필요처방 안전성 이중 검증

오케스트레이션의 구조 3가지

중앙 집중형 (Centralized)

하나의 오케스트레이터가 모든 에이전트를 직접 지휘한다.

오케스트레이터
    ├→ 에이전트 A
    ├→ 에이전트 B
    └→ 에이전트 C

단순하고 제어하기 쉽다. 에이전트가 많아지면 오케스트레이터가 병목이 될 수 있다.

계층형 (Hierarchical)

메인 오케스트레이터 아래 서브 오케스트레이터들이 있고, 각각이 에이전트 그룹을 담당한다.

메인 오케스트레이터
    ├→ 진단 서브오케스트레이터
    │       ├→ 내과 에이전트
    │       └→ 영상 에이전트
    └→ 치료 서브오케스트레이터
            ├→ 약물 에이전트
            └→ 처치 에이전트

대규모 시스템에 적합하다. 각 서브팀이 독립적으로 작동한다.

분산형 (Decentralized)

에이전트들이 서로 직접 대화한다. AutoGen이 이 방식에 가깝다.

유연하지만 전체 흐름 제어가 어렵다.


가장 흔한 실수

“AI 에이전트 시스템을 만든다”고 하면 많은 팀이 처음부터 오케스트레이션부터 시작한다.

단일 에이전트로 검증하지 않고 바로 멀티 에이전트로 넘어가면:

  • 디버깅이 어렵다 (어느 에이전트가 틀렸는지 알기 어려움)
  • 비용이 많이 든다 (에이전트 수 × 호출 횟수)
  • 복잡도가 올라간다

권장 순서:

  1. 단일 에이전트로 기본 동작 검증
  2. 성능 한계 파악 (어디서 단일 에이전트가 부족한지)
  3. 필요한 지점에만 에이전트 추가
  4. 오케스트레이션 도입

더 알고 싶다면

🔗 관련 글

← 오케스트레이션 시리즈 전체 보기