AI 오케스트레이션

여러 역할을 독립 실행 단위로 분리하여 무엇을 언제 실행할지 결정하는 상위 제어 구조

즉 실행 흐름을 통제하기 위한 구조를 의미

LangChain

LLM을 중심으로 외부 도구와 데이터 소스를 연결해 실행 흐름을 구성하는 프레임워크

  • Chain : 순차 실행 흐름
  • Agent : 상황에 따라 도구를 선택하는 실행 단위
  • Tool : 외부 기능(API, 검색, 코드 실행 등)

LangFlow

LangChain을 시각적으로 설계하고, 프로토타이핑 할 수 있는 오픈 소스 low-code/노 코드 도구

기본 구성 개념

  • Flow
    • 하나의 작업을 수행하기 위해 여러 컴포넌트를 연결한 실행 단위이자 전체 실행 구조
  • Component
    • 모델, 프롬프트, 도구, 입력/출력 등 Flow를 구성하는 최소 기능 블록

오케스트레이션 구조 설계

상위 Orchestrator + 하위 역할 Agent 구조

  • 전체 실행을 통제하는 Ochestrator가 있고, Planner/Generator/Reviewer는 독립된 하위 Agent로 분리한다.

Orchestrator가 하위 Agent를 Tool로 호출

  • Orchestrator는 각 역할 Agent를 내부 구현이 아닌 하나의 Tool처럼 선택하고 호출한다.

조건에 따른 실행 흐름

  • 건너뛰기
  • 재실행
  • 종료판단

AI 오케스트레이션 구조의 단점/한계

  1. 구현/유지보수 난이도 증가 : 역할 분리, 라우팅, 상태관리로 인해 구조가 금방 커지고, 수정할 때 영향 범위도 증가한다.
  2. 비용/지연 증가 : 에이전트를 여러 번 호출하는 구조라 토큰 비용이 누적되고, 응답 시간이 길어진다.
  3. 오류 전파 : 상위 Planner/Orchestrator가 잘못 되면 하위 Agent들도 잘못된 결과를 만들게 된다.
  4. 디버깅 난이도 증가 : 동일한 입력에 대해 다른 결과를 반환할 수 있어서 판단을 추적하기 어렵다.