적용 대상: Azure Logic Apps(표준)
중요합니다
이 기능은 미리 보기로 제공되고 Microsoft Azure 미리 보기에 대한 보충 사용 약관이 적용됩니다.
단일 에이전트 루프의 기능을 초과하는 복잡한 시나리오 또는 정교한 작업을 처리하는 AI 통합 솔루션의 경우 Azure Logic Apps는 기본적으로 단순하고 구성된 워크플로에서 복잡한 자율 시스템에 이르는 공통적이고 검증된 다중 에이전트 루프 오케스트레이션 패턴을 지원합니다. 여러 에이전트 루프는 복잡한 작업을 수행해야 하는 복잡한 워크플로에서 역할, 책임 및 워크로드를 배포하는 데 도움이 됩니다.
경우에 따라 AI 통합 솔루션은 단일 에이전트 루프의 기능, 성능 또는 효율성을 초과할 수 있는 복잡한 시나리오 또는 정교한 작업을 처리해야 합니다. 이러한 시나리오에서는 여러 에이전트 루프를 추가하고 사용하여 워크플로에서 역할, 책임 및 워크로드를 배포하는 것이 좋습니다. Azure Logic Apps는 기본적으로 단순하고 구성된 워크플로에서 복잡한 자율 시스템에 이르는 공통적이고 검증된 다중 에이전트 루프 오케스트레이션 패턴을 지원합니다.
보다 효과적인 다중 에이전트 루프 시스템을 빌드하는 데 도움이 되는 이 가이드는 다음 개념을 배우고 이해하는 데 도움이 됩니다.
- 다중 에이전트 루프 워크플로를 단일 에이전트 루프 워크플로와 비교하는 방법(예: 단일 에이전트 루프 제한 사항 및 다중 에이전트 루프 이점).
- 지원되는 다중 에이전트 루프 오케스트레이션 패턴은 가장 간단한 패턴에서 가장 복잡한 패턴으로 나열됩니다.
- 시나리오에 가장 적합한 패턴을 선택할 때 고려해야 할 사항입니다.
- 각 패턴을 적용하는 시기 및 방법
단일 에이전트 루프 제한 및 다중 에이전트 루프 이점
다음 표에서는 단일 에이전트 루프가 해석, 처리 및 추론에서 의사 결정 및 실행에 이르기까지 복잡한 솔루션의 모든 작업을 수행할 때의 과제를 나열합니다.
| Limitation | Description |
|---|---|
| 인지 부하 | 복잡한 작업을 수행하려면 에이전트 루프가 동시에 여러 문제를 저글링해야 하므로 개별적인 측면에서 성능이 저하됩니다. |
| 오류 전파 | 하나의 오류는 복구 메커니즘 없이 전체 프로세스를 탈선시킬 수 있습니다. |
| 특수화 없음 | 모든 유형의 작업에 대해 하나의 에이전트 루프를 똑같이 최적화할 수는 없습니다. |
| 확장성 제약 조건 | 모놀리식 에이전트 루프에 기능을 추가하면 복잡성이 기하급수적으로 증가합니다. |
다중 에이전트 루프 아키텍처는 복잡한 문제를 특수하고 관리 가능한 구성 요소로 분해하여 단일 에이전트 루프 제한 사항을 해결합니다. 간단하고 구성 가능한 패턴을 사용하여 솔루션을 디자인하고 빌드할 때 구현은 복잡한 프레임워크를 사용하는 데 비해 더 큰 성공을 경험합니다. 단순성 및 구성성의 이 원칙은 다중 에이전트 루프 디자인의 핵심에 있습니다.
여러 에이전트 루프는 특수한 역할, 책임을 맡아 워크플로에서 워크로드를 배포할 수 있습니다. 다음 표에서는 안정성, 유지 관리 기능, 특수화 및 확장성에 대한 주요 다중 에이전트 루프 이점을 나열합니다.
| 이익 | Description |
|---|---|
| 관심 영역 분리 | 각 에이전트 루프는 특정 전문 지식 영역에 집중할 수 있습니다. |
| 독립 최적화 | 특정 작업에 대해 각 에이전트 루프를 조정할 수 있습니다. |
| 오류를 분리하다 | 한 에이전트 루프의 오류가 반드시 다른 에이전트 루프로 연계되는 것은 아닙니다. |
| 재사용 가능성 | 다른 워크플로에서 특수 에이전트 루프를 다시 사용할 수 있습니다. |
| 사용자 참여형 | 당신은 인간 검토 및 개입을 위한 자연스러운 검사점을 가지고 있습니다. |
| 확장 가능한 개발 | 팀은 서로 다른 에이전트 루프에서 개별적으로 독립적으로 작업할 수 있습니다. |
Azure Logic Apps는 다음 기능을 제공하여 다중 에이전트 루프 시스템을 빌드하는 데 도움이 됩니다.
| Capability | Description |
|---|---|
| 시각적 디자인 | 에이전트 루프 상호 작용 및 의사 결정 지점을 보여 주는 명확한 그래픽 표현을 제공합니다. |
| 기본 제공 상태 관리 | 에이전트 루프 호출에서 컨텍스트를 유지 관리하기 위한 기본 지원을 포함합니다. |
| 오류 처리 | 강력한 오류 처리 및 재시도 메커니즘을 제공합니다. |
| 모니터링 및 관찰 가능성 | 다중 에이전트 워크플로에 대한 포괄적인 로깅 및 모니터링을 제공합니다. |
| 통합 기능 | Azure Logic Apps의 1,400개 이상의 커넥터 에서 작업으로 지원되는 에이전트 도구를 만들 수 있도록 하여 외부 실제 서비스 및 서비스와 쉽게 통합할 수 있습니다. |
| 확장성 | 엔터프라이즈급 안정성으로 자동으로 확장됩니다. |
자세한 내용은 다음 문서를 참조하세요.
프롬프트 연결 패턴
이 워크플로 패턴은 작업을 순차적 단계로 분리합니다. 각 단계는 특정 에이전트 루프 호출에 해당합니다. 각 LLM(큰 언어 모델) 호출은 이전 LLM의 출력을 처리합니다. Azure Logic Apps에서 이 패턴은 각 에이전트 루프의 출력이 다음 에이전트 루프의 입력이 되는 여러 에이전트 루프 체인으로 변환됩니다.
낮은 복잡성 수준
워크플로가 다음 조건을 충족하는 경우에 사용합니다.
- 복잡한 작업에는 순차적 처리가 필요합니다.
- 선형 시퀀스를 따르는 고정 하위 작업으로 작업을 완전히 분해할 수 있습니다.
- 단계 간에 유효성 검사가 필요합니다.
- 각 단계는 구체적이 고 집중된 주의의 혜택을 누릴 수 있습니다.
- 품질은 속도보다 더 중요합니다.
예시
- 마케팅 복사본 생성 → 다른 언어로 번역
- 전체 문서 작성 → 개요 유효성 검사 → 문서 개요 만들기
- 데이터 추출 → 데이터 유효성 검사 → 데이터 서식 지정
주요 특성 및 이점
- 미리 결정된 단계는 선형 진행을 따릅니다.
- 각 에이전트 루프는 정확도를 높이는 잘 정의된 단일 작업에 중점을 둡니다.
- 각 단계에는 품질 관리를 위한 프로그래밍 방식 검사점 또는 유효성 검사 "게이트"가 포함될 수 있습니다.
- 체인에서 문제가 발생하는 위치를 쉽게 디버그하고 식별할 수 있습니다.
- 모듈성을 사용하면 각 단계를 독립적으로 최적화할 수 있습니다.
- 더 나은 정확도와 결과를 위해 대기 시간을 단축합니다.
자세한 내용은 다음 리소스를 참조하세요.
라우팅 패턴
이 워크플로 패턴은 특수화된 후속 작업으로 입력을 분류하고 전달합니다. 이 동작을 사용하면 문제를 구분할 수 있으며 특정 입력 형식에 맞게 최적화할 수 있는 특수 프롬프트가 허용됩니다.
낮음~중간 복잡성 수준
서로 다르거나 특수한 처리가 필요한 고유한 입력 범주가 있는 경우 사용합니다.
예시
고객 서비스 쿼리를 라우팅합니다. 예를 들면 다음과 같습니다.
- 청구 → 청구 에이전트 루프
- 기술 지원 → 기술 지원 에이전트 루프
콘텐츠를 분류합니다. 예를 들면 다음과 같습니다.
- 긴급 → 우선 순위 워크플로
- 루틴 → 루틴 워크플로
LLM을 선택합니다. 예를 들면 다음과 같습니다.
- 기본 질문 → 기본 에이전트 루프
- 고급 또는 복잡한 질문 → 고급 에이전트 루프
주요 속성
- 초기 분류 단계에서는 라우팅 위치를 결정합니다.
- 범주별로 특수화된 에이전트 루프가 표시됩니다.
- 다른 입력 형식 간의 최적화 충돌을 방지합니다.
- 기존 분류 알고리즘 또는 LLM 기반 라우팅을 사용할 수 있습니다.
자세한 내용은 랩: 라우팅 패턴 구현을 참조하세요.
핸드오프 패턴
이 워크플로 패턴은 컨텍스트와 상태를 유지하면서 에이전트 루프 간에 원활한 전환을 만듭니다. 이 동작은 인간과 유사한 에스컬레이션 또는 전문 지식 이전이 필요한 시나리오에 효과적입니다.
중간 복잡성 수준
대화 연속성을 유지하면서 서로 다른 특수화를 사용하여 에이전트 루프 간에 제어를 전송해야 하는 경우에 사용합니다.
예시
- 고객 서비스 시나리오(예: 일반 지원 → 기술 전문가 → 청구)
- 콘텐츠 만들기 워크플로(예: 리서치 → 쓰기 → 편집)
- 복잡한 문제 해결(예: 분석 → 솔루션 설계 → 솔루션 구현)
주요 특성 및 이점
- 각 에이전트 루프는 도메인별 전문 지식에 중점을 둡니다.
- 핸드오프에는 명확한 조건과 트리거가 있습니다.
- 전송 메커니즘에는 적절한 컨텍스트가 있습니다.
- 에이전트 루프는 대화 흐름에 따라 작업을 전달할 시기와 위치를 선택합니다.
- 에이전트 루프 핸드오프에서 상태 또는 전체 대화 기록을 유지합니다.
- 사용자 고객 서비스 에스컬레이션 패턴을 모방합니다.
- 한 에이전트 루프의 오류 또는 문제를 다른 에이전트 루프에서 격리합니다.
- 받는 사람 에이전트 루프를 준비하기 위한 초기화 작업이 있습니다.
자세한 내용은 랩: 핸드오프 패턴 구현을 참조하세요.
병렬화 패턴
이 워크플로 패턴에는 다음과 같은 기본 변형이 있습니다.
섹션화: 작업을 독립적인 병렬 하위 작업으로 나눕니다.
투표: 다양한 출력에 대해 동일한 작업을 여러 번 실행합니다.
중간 복잡성 수준
여러 하위 작업을 더 빠르게 처리하기 위해 독립적으로 실행하거나, 다양한 관점이 신뢰성을 높여줄 때 사용합니다.
예시
분할
- 예를 들어 한 에이전트 루프는 콘텐츠를 검사하고 다른 하나는 정책 위반을 검사하는 등 콘텐츠를 조정합니다.
- 예를 들어 다른 에이전트 루프에서 보안, 성능, 스타일 등을 확인하는 등의 코드를 검토합니다.
투표
- 여러 에이전트 루프는 서로 다른 임계값을 사용하여 콘텐츠 적합성을 평가합니다.
- 합의 기반 의사 결정을 통해 취약성을 평가합니다.
주요 특징
- 동시 실행 속도가 향상되었습니다.
- 프로그래밍 방식으로 집계된 결과입니다.
- 특정 측면에 대한 집중적인 주의로 인해 성능이 향상됩니다.
자세한 내용은 랩: 병렬 처리 패턴 구현을 참조하세요.
오케스트레이터-작업자 패턴 - 도구로서 중첩 에이전트 루프
이 워크플로 패턴은 에이전트 루프를 다른 에이전트 루프가 호출할 수 있는 정교한 도구로 처리합니다. 한 LLM은 작업을 동적으로 분석하고, 작업을 다른 LLM에 위임하고, 결과를 합성합니다.
높은 복잡성 수준
필요한 하위 작업을 미리 예측할 수 없고 동적 작업 분해가 필요한 경우에 사용합니다.
예시
- 예측할 수 없는 파일 수를 변경해야 하는 코딩 작업입니다.
- 여러 동적 원본에서 정보를 수집하는 작업을 조사합니다.
- 다양한 특수 기능이 필요한 복잡한 분석 작업입니다.
병렬화와 주요 차이점
- 오케스트레이터는 필요한 하위 작업을 동적으로 결정합니다.
- 더 유연하지만 예측할 수 없습니다.
- 정교한 조정 논리가 필요합니다.
자세한 내용은 랩: 오케스트레이터-작업자 패턴 구현을 참조하세요.
평가자-최적화자 패턴
이 워크플로 패턴에는 하나의 LLM 호출이 응답을 생성하는 반면, 다른 LLM 호출은 루프에서 평가 및 피드백을 제공하며 이는 사람의 반복적 개선 프로세스를 모방합니다.
높은 복잡성 수준
명확한 평가 기준이 있는 경우와 반복적인 구체화에서 측정 가능한 값을 제공하는 경우에 사용합니다.
예시
- 미묘한 평가와 세련미로 문학 콘텐츠를 번역합니다.
- 분석을 위해 여러 라운드가 필요한 복잡한 검색 작업을 수행합니다.
- 콘텐츠를 만들고, 품질을 평가하고, 여러 반복을 개선합니다.
주요 속성
- 반복 구체화 루프를 실행합니다.
- 명확한 평가 기준이 필요합니다.
- 생성기 및 계산기 에이전트 루프 역할을 사용합니다.
- 종료 조건을 사용하여 무한 루프를 방지합니다.
자세한 내용은 랩: 계산기 최적화 프로그램 패턴 구현을 참조하세요.