Compound AI Systems
복합 AI 시스템은 하나의 모델 호출 대신 모델, 검색기, 도구, 규칙 등 서로 상호작용하는 여러 구성 요소를 사용해 작업을 해결합니다.
복합 AI 시스템은 단일 모델을 한 번 호출하는 대신 여러 모델 호출, 검색기, 외부 도구, 규칙, 사람의 검토 등 여러 상호작용 요소를 사용해 작업을 해결하는 애플리케이션입니다. Berkeley, Stanford, Databricks 등 여러 그룹의 Matei Zaharia와 공동 저자들은 2024년 2월 Berkeley AI Research 게시물에서 이러한 추세를 명명하고, 최첨단 성능이 모놀리식 모델보다 시스템에서 점점 더 많이 나오고 있다고 주장했습니다. 예를 들어 AlphaCode 2는 대규모 언어 모델(LLM)로 최대 100만 개의 프로그램 후보를 생성한 뒤 필터링하고 점수를 매깁니다. AlphaGeometry는 LLM과 기호 연역 엔진을 결합해 올림피아드 기하 문제를 해결하고, ChatGPT는 웹 검색, Python 실행, 이미지 생성 시점을 모델이 결정합니다. 같은 게시물에서는 Databricks 데이터를 인용해 LLM 애플리케이션의 60%가 검색 증강 생성(RAG)을 일부 형태로 사용하고 30%는 다단계 체인을 사용한다고 설명합니다.
더 큰 모델 대신 시스템을 구축하는 이유#
- 더 저렴한 품질 향상: 샘플링, 투표, 검증은 더 큰 모델을 학습하는 것보다 저렴하게 정확도를 높일 수 있습니다. Google은 CoT@32를 사용한 Gemini Ultra의 MMLU 벤치마크 점수 90.04%를 보고했습니다. CoT@32는 연쇄적 사고 답변 32개를 샘플링하고 충분한 답변이 일치하면 다수결 결과를 반환합니다. GPT-4는 5샷 프롬프트에서 86.4%를 기록했습니다.
- 최신 데이터: 모델의 지식은 학습 데이터 기준 시점에서 멈추지만, 검색기나 벡터 데이터베이스는 쿼리 시점에 최신 정보, 비공개 정보 또는 접근 제어된 정보를 제공할 수 있습니다.
- 제어와 신뢰: 필터, AI 가드레일, 인용, 검증 단계는 모델 하나에 프롬프트를 입력하고 준수하기를 기대하는 것보다 동작을 더 쉽게 제약할 수 있습니다.
- 비용 목표: 모델 라우팅은 간단한 요청을 소형 모델로, 어려운 요청을 대형 모델로 전달하므로 각 애플리케이션은 품질, 지연 시간, 가격 간의 균형을 직접 선택할 수 있습니다.
단일 요청 경로에 네 가지 아이디어를 모두 결합할 수 있습니다.
컴퓨터 비전의 복합 시스템#
프로덕션 비전 애플리케이션은 거의 기본적으로 복합 구조입니다. 탐지기가 객체를 찾고, 트래커가 프레임 간 객체를 연결하며, 기하학적 규칙이 위치를 이벤트로 변환하고, 스토리지와 알림이 이벤트에 대응합니다. Ultralytics Solutions는 YOLO26 모델을 중심으로 이러한 시스템을 여러 개 패키징합니다. 객체 계수는 탐지, 다중 객체 추적, 선 또는 영역 검사를 결합해 각 트랙 ID가 진입하거나 나갈 때 한 번씩만 계산합니다. 보안 경보 시스템은 화면 내 탐지 수가 설정된 임계값에 도달하면 프레임을 이메일로 전송합니다. 더 작은 파이프라인도 모델이 구조화된 관측값을 생성하고 별도의 로직이 이를 처리하는 같은 패턴을 따릅니다.
from ultralytics import YOLO
# 인식 구성 요소: 탐지기는 픽셀을 구조화된 관측값으로 변환합니다
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
detections = results[0].summary()
# 정책 구성 요소: 결정론적 규칙은 신뢰도 높은 탐지를 승인하고 불확실한 탐지는 표시합니다
accepted = [d["name"] for d in detections if d["confidence"] >= 0.5]
uncertain = [d["name"] for d in detections if d["confidence"] < 0.5]
# 라우팅 구성 요소: 불확실한 결과는 다운스트림 자동화 대신 담당자에게 전달됩니다
action = "human review" if uncertain else "auto-approve"
print({"accepted": accepted, "uncertain": uncertain, "action": action})출력된 결정은 검토자가 모델을 재학습하지 않고도 읽고 변경할 수 있는 규칙에서 나오며, 사람에게 전달된 불확실한 이미지에 레이블을 지정하면 능동 학습 루프에서 다음 모델에 사용할 학습 데이터가 추가됩니다.
복합 시스템 구축 및 운영#
구성 요소를 거치면서 오류가 누적됩니다. 각 단계의 정확도가 90%인 단계 세 개를 거치면 종단 간 결과의 정확도는 약 73%에 불과하므로, 팀은 각 부분을 따로 측정하기보다 고정된 작업 모음에서 시스템 전체를 측정합니다. 검색 엔진이나 규칙처럼 그래디언트로 학습할 수 없는 구성 요소에는 다른 최적화 방법이 필요합니다. DSPy와 같은 프레임워크는 종단 간 지표를 기준으로 파이프라인의 모든 프롬프트를 튜닝합니다. 프로덕션에서는 관측 가능성 추적을 통해 각 요청이 모든 모델 호출과 도구를 거치는 과정을 살펴보며, 버전 관리와 모델 모니터링 같은 머신러닝 운영(MLOps) 관행을 모든 구성 요소에 적용합니다. 한 구성 요소의 업데이트가 다음 구성 요소의 입력을 조용히 변경할 수 있기 때문입니다.
복합 AI와 관련 용어 비교#
- 모델 앙상블: 동일한 입력에 대한 여러 모델의 예측을 하나의 출력으로 결합합니다. 앙상블은 복합 시스템에 포함될 수 있는 한 가지 패턴입니다.
- 에이전트 워크플로: 모델이 런타임에 도구와 단계를 선택하며 제어 흐름을 결정하는 복합 시스템입니다. 많은 복합 시스템은 이러한 결정이 필요 없는 고정 파이프라인을 사용합니다.
- 전문가 혼합(MoE): 함께 학습되는 단일 모델 내부의 전문가 서브네트워크 사이에서 토큰을 라우팅합니다. 복합 시스템은 별도로 구축하고 배포한 구성 요소 사이에서 요청을 라우팅합니다.










