팁 (조언)
워크플로에 도달하기 전에 먼저 더 간단한 패턴을 시도하여 요구 사항을 충족하는지 확인하는 것이 좋습니다. 설정 및 디버그가 더 쉽습니다. 워크플로는 단일 에이전트가 자체적으로 안정적으로 제공할 수 없는 보장된 실행 순서가 필요한 경우에 가장 유용합니다.
지금까지의 여정은 에이전트를 사용하여 빌드하는 점점 더 강력한 방법을 다루었습니다. 단일 에이전트가 도구를 사용하고, 기술을 로드하고, 미들웨어를 통해 실행하고, 풍부한 컨텍스트를 그릴 수 있는 방법을 살펴보았습니다. 에이전트를 다른 에이전트에 대한 도구로 사용하여 구성하고 A2A를 사용하여 서비스 경계를 넘어 연결했습니다.
이러한 모든 패턴은 공통된 특성을 공유합니다. LLM은 다음에 어떤 일이 일어날지 결정합니다. 모델은 호출할 도구, 위임 여부 및 중지 시기를 선택합니다. 이는 올바른 경로가 대화에 종속되는 개방형 작업에 강력하지만 프로세스 자체에 규칙이 있는 경우 책임이 있습니다.
다음과 같은 시나리오를 고려합니다.
- 매번 초안을 작성, 검토, 수정 및 승인해야 하는 문서 검토 파이프라인 입니다.
- 정보를 수집하고, 규정 준수 검사를 실행하고, 계정을 프로비전하고, 환영 전자 메일을 보내는 고객 온보딩 흐름 ( 일부 단계는 병렬로, 일부는 사람의 승인에 의해 제어됨)입니다.
- 여러 원본에서 데이터를 수집하고, 결과를 병합하고, 보고서를 생성하는 분석 워크플로 입니다. 여기서 중간 정도의 오류는 다시 시작하지 않고 마지막 검사점에서 다시 시작해야 합니다.
각 경우에 프로세스의 구조 는 미리 알려져 있습니다. 단계, 그 순서, 의사 결정 지점은 런타임 시 모델이 파악하도록 해서는 안 되는 부분입니다. 그래프를 명시적으로 정의하고 해당 그래프 내에서 에이전트(또는 다른 논리)를 실행할 수 있도록 합니다.
이것이 워크플로가 제공하는 것입니다.
인텔리전스 스펙트럼
에이전트 애플리케이션은 완전히 자율적이거나 완전히 규칙 기반이 될 필요가 없습니다. 그 사이에는 스펙트럼이 있으며 워크플로를 통해 착륙할 위치를 선택할 수 있습니다.
Fully intelligent Fully deterministic
(model decides everything) (code decides everything)
◄──────────────────────────────────────────────────────────────►
│ │ │
│ Single agent with │ Workflow with agent │ Workflow with only
│ tools — the model │ executors — the graph │ deterministic executors
│ picks every step │ controls the process, │ — no LLM involved,
│ │ agents handle the │ pure business logic
│ │ reasoning-heavy steps │
왼쪽 끝에서 도구가 있는 단일 에이전트는 모든 것을 처리합니다. 모델은 수행할 작업, 위임 시기 및 중지 시기를 결정합니다. 이는 가장 유연한 접근 방식이지만 예측 가능성이 가장 낮은 방법입니다. 오른쪽 끝에서는 순수한 결정적 실행기가 있는 워크플로는 기본적으로 기존의 파이프라인이며 완전히 예측 가능하지만 AI 추론은 전혀 없습니다.
대부분의 실제 애플리케이션은 중간 어딘가에 살고 있습니다. 워크플로는 단계가 어떤 순서로 실행되는지, 어떤 게이트와 함께 실행되는 구조를 정의하고, 해당 워크플로 내의 개별 실행기는 LLM 추론을 활용하는 단계에 에이전트를 사용합니다. 당신이 필요로 하는 중요한 곳에 AI의 지능을 적용하여 명확한 프로세스의 예측 가능성을 확보할 수 있습니다.
핵심 인사이트는 다이얼을 제어한다는 것입니다. 프로세스의 각 단계에 대해 다음을 결정합니다.
- 모델이 수행할 작업을 파악해야 하나요? → 에이전트 실행기를 사용합니다.
- 코드에서 결과를 결정해야 하나요? → 일반 비즈니스 논리와 함께 결정적 실행기를 사용합니다.
- 사람이 전화를 해야 하나요? → 휴먼 인 더 루프 게이트를 사용합니다.
이는 에이전트를 대체하는 것이 아니라 애플리케이션의 각 부분에 얼마나 많은 인텔리전스 가 들어가는지 명시적으로 제어하는 워크플로의 진정한 기능입니다.
올바른 패턴 선택
이 경험의 앞부분과 워크플로의 패턴은 경쟁적인 접근 방식이 아니며 스펙트럼에서 서로 다른 점입니다. 핵심 질문은 다음에 무슨 일이 일어나는지 누가 결정해야 하는가하는 것입니다.
| 질문 | 대답이 "모델"인 경우 | 대답이 "개발자"인 경우 |
|---|---|---|
| 다음에 해결해야 할 하위 작업은 무엇입니까? | 에이전트를 도구로 - 외부 에이전트가 동적으로 라우팅 | 워크플로 - 그래프가 경로를 정의합니다. |
| 다른 에이전트를 포함할지 여부 | 도구로서의 에이전트 - 모델 기반 위임 | 워크플로의 에이전트 - 그래프가 에이전트를 함께 연결합니다. |
| 언제 인간에게 물어봐야 할까요? | 도구 승인 - 반응형 도구별 | 휴먼 인 더 루프 - 정의된 지점에서 명시적 게이트 |
| 부분 오류를 처리하는 방법 | 도구 구현의 재시도 논리 | 검사점 - 마지막으로 저장된 상태에서 다시 시작 |
실제로 대부분의 프로덕션 시스템은 둘 다 결합합니다. 워크플로는 상위 수준 프로세스를 정의하고, 해당 워크플로 내의 개별 실행기는 LLM 추론을 활용하는 단계에 에이전트를 사용합니다. 워크플로 페이지의 에이전트는 이 작업을 수행하는 방법을 정확하게 보여 줍니다.
기본 제공 오케스트레이션 패턴
일반적인 다중 에이전트 조정 시나리오의 경우 Agent Framework는 직접 사용하거나 사용자 지정할 수 있는 미리 빌드된 워크플로 템플릿인 기본 제공 오케스트레이션 패턴을 제공합니다.
| 패턴 | 사용 시기 |
|---|---|
| 순차 | 에이전트는 정의된 순서로 하나씩 실행합니다. 각 에이전트는 이전 에이전트의 출력에 따라 빌드됩니다. |
| 동시성 | 에이전트는 병렬로 실행됩니다. 작업이 독립적이고 대기 시간을 줄이려는 경우에 유용합니다. |
| 핸드오프 | 에이전트는 컨텍스트에 따라 서로 제어를 전송합니다. 전문가에게 라우팅하는 데 적합합니다. |
| 그룹 채팅 | 에이전트는 토론, 검토 또는 브레인스토밍에 유용한 공유 대화에서 공동 작업합니다. |
| Magentic | 관리자 에이전트는 특수 에이전트를 동적으로 조정하여 구조와 유연성의 균형을 조정합니다. |
이러한 오케스트레이션은 에이전트 조정의 반복적인 작업을 자동으로 처리하므로, 에이전트 자체에 집중할 수 있습니다.
에이전트로서의 워크플로
가장 강력한 컴퍼지션 패턴 중 하나는 워크플로를 래핑하여 일반 에이전트처럼 보이는 것입니다. 에이전트 기능인 워크플로를 사용하면 복잡한 다단계 워크플로를 가져와서 표준 에이전트 인터페이스를 통해 노출할 수 있습니다. 다른 에이전트는 이를 도구로 호출할 수 있고, A2A 클라이언트는 HTTP를 통해 호출할 수 있으며, 소비자는 워크플로와 통신하고 있다는 것을 알 필요가 없습니다.
여정 요약
이제 에이전트 개발 패턴의 전체 스펙트럼을 살펴보았습니다.
| 패턴 | 적합한 대상 |
|---|---|
| LLM 기본 사항 | 기초 이해 |
| LLM에서 에이전트로 | 에이전트 추상화 |
| 도구 추가 | 외부 시스템에서 작동하는 에이전트 |
| 기술 추가 | 재사용 가능한 모듈식 에이전트 동작 |
| 미들웨어 추가 | 횡단 관심사 및 가드레일 |
| 컨텍스트 공급자 | 메모리, 개인 설정 및 RAG |
| 도구로서의 에이전트 | 단순 에이전트 구성 및 위임 |
| 에이전트 간 (A2A) | 서비스 간 에이전트 통신 |
| 워크플로 | 명시적 제어를 사용하는 복잡한 다단계 오케스트레이션 |
각 패턴은 기능과 복잡성을 추가합니다. 최고의 에이전트 시스템은 요구 사항을 충족하는 가장 간단한 패턴을 사용하고 시나리오에서 요구하는 경우에만 더 강력한 패턴에 도달합니다.
다음 단계
더 자세히 살펴보기:
- 워크플로 개요 - 핵심 개념, 아키텍처 및 시작
- 실행기 및 에지 - 워크플로 그래프의 구성 요소
- 워크플로의 에이전트 - AI 에이전트를 워크플로 단계에 통합
- 오케스트레이션 — 사전 구축된 다중 에이전트 패턴(순차, 동시, 핸드오프, 그룹 채팅, 마그네틱)
- 휴먼 인 더 루프 - 승인 게이트 및 외부 입력
- 검사점 및 재개 - 긴 실행 시간의 워크플로 복구
- 상태 관리 - 실행기 간에 데이터 공유
- 에이전트로서의 워크플로 - 에이전트 인터페이스를 통해 워크플로 노출