Compound AI Systems
컴파운드 AI 시스템이 모델, 도구, 데이터 및 규칙을 결합하는 방식을 알아보세요. 신뢰할 수 있는 AI 워크플로를 위한 아키텍처, 애플리케이션, 트레이드오프 및 모범 사례를 살펴보세요.
복합 AI 시스템은 단일 모델이 아니라 여러 상호작용하는 구성 요소로 구축된 AI 애플리케이션입니다. 하나의 시스템은 모델, 검색 서비스, 데이터베이스, 결정론적 규칙, 외부 도구, 사람의 검토를 결합하여 하나의 조정된 워크플로로 구성할 수 있습니다. 예를 들어 컴퓨터 비전에서는 한 모델이 객체를 감지하는 동안 트래킹 소프트웨어가 객체의 식별 정보를 유지하고, 비즈니스 규칙이 이벤트를 해석하며, 모니터링 서비스가 프로덕션 성능을 관찰할 수 있습니다. 복합 AI 시스템의 핵심 특징은 구성입니다. 즉, 시스템 수준의 동작은 구성 요소들이 정보를 교환하고 의사 결정을 내리는 방식에서 나타납니다.
복합 AI 시스템의 작동 방식#
복합 시스템은 더 큰 작업을 여러 전문 단계로 나눕니다. 일반적인 구성 요소에는 데이터 전처리, 하나 이상의 AI 모델, 스토리지, 검증 로직, 애플리케이션 프로그래밍 인터페이스, 오케스트레이션 레이어가 포함됩니다. OpenAPI 사양에 설명된 것과 같은 명확한 계약은 각 서비스가 수락하고 반환하는 데이터를 정의합니다.
제어 방식은 기존 코드가 고정된 순서로 구성 요소를 호출하는 결정론적 방식일 수도 있고, AI 에이전트 오케스트레이션 레이어가 런타임에 도구와 경로를 선택하는 동적 방식일 수도 있습니다. AI 오케스트레이션은 애플리케이션 전반의 종속성, 재시도, 리소스 및 데이터 흐름을 조정합니다.
일반적인 패턴으로는 검색이 언어 모델에 컨텍스트를 제공하는 검색 증강 생성과 카메라, 레이더 또는 기타 입력을 결합하는 센서 융합 파이프라인이 있습니다. 독립된 모델에서 통합 시스템으로 전환되는 더 광범위한 변화는 Berkeley AI Research의 복합 AI 시스템 개요에 설명되어 있습니다. (bair.berkeley.edu)
복합 시스템이 중요한 이유#
구성을 활용하면 개발자는 하나의 거대한 모델을 재학습하지 않고도 애플리케이션을 개선할 수 있습니다. 나머지 워크플로를 안정적으로 유지하면서 전문화된 구성 요소를 교체하거나 확장하거나 최적화할 수 있습니다. 또한 규칙과 검증 단계는 확률적 모델 출력에 전적으로 의존하는 것보다 더 높은 수준의 제어를 제공할 수 있습니다.
이러한 이점에는 시스템 수준의 트레이드오프가 따릅니다.
- 장애 전파: 잘못된 감지, 검색 실패 또는 사용할 수 없는 API가 이후의 모든 의사 결정에 영향을 미칠 수 있습니다.
- 지연 시간 및 비용: 각 모델 호출, 네트워크 요청 및 검증 단계는 전체 응답 예산의 일부를 소모합니다.
- 인터페이스 드리프트: 한 서비스를 업데이트하면 해당 서비스의 출력 형식이나 가정이 변경되어 다른 구성 요소가 조용히 중단될 수 있습니다.
- 평가의 어려움: 강력한 구성 요소가 있다고 해서 종단 간 결과까지 우수하다는 보장은 없습니다.
따라서 머신러닝 운영은 전체 워크플로를 포괄해야 합니다. OpenTelemetry 관측성 가이드는 트레이스, 메트릭 및 로그를 통해 분산 서비스 전반에서 발생한 일을 파악하는 방법을 설명하며, MLflow 실험 추적은 모델 구성과 평가 결과를 기록할 수 있습니다. (opentelemetry.io)
관련 개념 및 주요 차이점#
복합 AI 시스템은 단순히 복잡한 모델을 다르게 부르는 이름이 아닙니다.
모델 앙상블은 일반적으로 투표, 평균 또는 스태킹을 통해 여러 모델의 예측을 결합합니다. 앙상블은 복합 시스템 내부의 하나의 구성 요소일 수 있지만, 일반적으로 데이터베이스, 도구, 워크플로 로직 및 운영 서비스를 포함하지 않습니다.
에이전트형 워크플로에서는 모델이 자율적으로 작업이나 도구를 선택합니다. 복합 시스템은 더 광범위한 개념으로, 많은 시스템이 자율 에이전트 없이 고정 파이프라인, 이벤트 기반 서비스 또는 사람의 승인을 사용합니다.
마찬가지로 RAG는 검색과 생성을 포함하는 특정한 복합 패턴입니다. 복합 AI는 언어 모델을 사용하지 않고도 컴퓨터 비전, 예측, 최적화, 로보틱스 및 기존 소프트웨어를 조정할 수 있습니다.
실제 적용 사례#
-
제조 시각 검사: 카메라가 제품을 촬영하고, Ultralytics YOLO26 모델이 결함을 감지하며, 규칙 기반 로직이 심각도와 위치를 확인하고, 생산 시스템이 각 항목을 불합격 처리하거나 승인합니다. 불확실한 사례는 사람 검사자에게 전달할 수 있으며, 저장된 이미지는 이후 재학습을 지원합니다.
-
교통 및 주차 분석: 감지를 통해 차량을 식별하고, 다중 객체 트래킹이 프레임 간 식별 정보를 유지하며, 기하학적 로직이 차선 또는 주차 영역의 점유 여부를 판단하고, 대시보드가 집계된 수치와 알림을 표시합니다. 오류가 발생하면 중복 집계, 혼잡 이벤트 누락 또는 잘못된 가용성 추정으로 이어질 수 있으므로 모든 단계를 함께 테스트해야 합니다.
다음의 단순화된 예제는 인식 결과가 결정론적 의사 결정 로직으로 전달되는 과정을 보여줍니다.
from ultralytics import YOLO
# Perception component
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Policy component
person_class = next(i for i, name in result.names.items() if name == "person")
person_count = int((result.boxes.cls == person_class).sum())
decision = "review" if person_count >= 4 else "continue"
print({"people_detected": person_count, "next_step": decision})
result.save(filename="compound_system_input.jpg")여기서 YOLO는 구조화된 관찰 결과를 생성하고, 별도의 정책 로직이 다음 작업을 결정합니다. 프로덕션 시스템에는 스토리지, 알림, 액세스 제어 또는 사람의 검토를 추가할 수 있습니다.
실용적인 설계 지침#
측정 가능한 종단 간 목표부터 설정한 다음 각 구성 요소에 하나의 명확한 책임을 할당합니다. 모든 경계에서 스키마와 타임아웃을 정의하고, 구성 요소를 독립적으로 테스트하며, 모델 정확도만이 아니라 실제와 유사한 워크플로를 평가합니다.
트레이스를 사용하여 개별 요청을 추적하고, 지연 시간 및 비용 예산을 설정하며, 사용할 수 없는 서비스에 대비해 재시도 또는 안전한 대체 경로를 제공합니다. Kubernetes 상태 프로브는 배포된 서비스가 준비 상태와 활성 상태 신호를 노출하는 방식을 보여줍니다.
위험 제어는 데이터 액세스, 외부 도구, 사람의 재정의 및 이후 단계의 결과를 포함하여 전체 시스템을 다뤄야 합니다. NIST AI 위험 관리 프레임워크는 이러한 위험을 거버넌스, 측정 및 관리하기 위한 수명 주기 중심의 지침을 제공합니다. 팀은 Ultralytics Platform을 사용하여 더 광범위한 복합 애플리케이션 내에서 비전 구성 요소를 위한 데이터셋 어노테이션, 학습, 배포 및 프로덕션 모니터링을 연결할 수 있습니다. (nist.gov)









