Agent2Agent Protocol
Agent2Agent Protocol (A2A)이 Ultralytics YOLO26을 활용해 AI 에이전트가 프레임워크 전반에서 서로를 발견하고, 소통하고, 작업을 위임하고, 안전하게 협업하도록 지원하는 방법을 알아보세요.
에이전트 간 프로토콜(A2A)은 서로 독립적인 AI 에이전트가 다양한 프레임워크, 공급업체, 조직에 걸쳐 서로를 발견하고, 요청을 교환하고, 작업을 위임하고, 결과를 반환할 수 있도록 하는 개방형 통신 표준입니다. A2A는 에이전트의 내부 메모리, 추론 과정 또는 도구를 노출하는 대신 협업을 위한 공통 인터페이스를 제공합니다. 이를 통해 전문 에이전트가 독립적으로 구현 및 운영되는 상태를 유지하면서 더 큰 목표에 기여하는 분산 AI 에이전트 시스템을 구축할 수 있습니다.
에이전트 간 프로토콜의 작동 방식#
공식 A2A 프로토콜 개요에서는 작업을 요청하는 클라이언트 에이전트와 작업을 수행하는 원격 에이전트 간의 상호작용을 정의합니다. 통신에는 비공식적인 애플리케이션별 메시지 대신 HTTP 기반 인터페이스와 구조화된 프로토콜 객체가 사용됩니다. (a2a-protocol.org)
일반적인 상호작용에는 다음 요소가 포함됩니다.
- 에이전트 카드 및 검색: 에이전트 카드는 에이전트의 ID, 엔드포인트, 지원 기능, 인증 요건 및 기술을 설명하는 JSON입니다. 클라이언트 에이전트는 이를 사용하여 원격 에이전트가 작업을 처리할 수 있는지 판단합니다.
- 메시지: 요청, 지침, 컨텍스트 및 응답은 텍스트, 파일 또는 구조화된 데이터를 포함하는 메시지로 표현됩니다.
- 작업: 작업은 식별자와 상태가 있는 상태 유지 작업 단위입니다. 문서화된 A2A 작업 수명 주기는 완료되거나 실패하거나 추가 입력이 필요하거나 취소될 수 있는 작업을 지원합니다.
- 아티팩트: 보고서, 이미지, 동영상 또는 JSON 레코드와 같은 구체적인 출력은 대화 텍스트에 섞이지 않고 아티팩트로 반환됩니다.
- 스트리밍 및 비동기 작업: 장시간 실행되는 에이전트는 점진적인 업데이트를 스트리밍하고, 폴링을 지원하거나, 웹후크를 통해 클라이언트에 알릴 수 있습니다.
기본 요청 형식은 JSON-RPC 2.0 사양을 따르므로, 구현 간에 일관된 메서드, 매개변수, 응답 및 오류 구조를 사용할 수 있습니다.
관련 에이전트 기술과 비교한 A2A#
A2A는 에이전트 간 통신을 다루지만 에이전트형 시스템의 모든 부분을 정의하지는 않습니다.
- 모델 컨텍스트 프로토콜: MCP는 주로 에이전트를 도구, 데이터 소스 및 리소스에 연결합니다. A2A는 하나의 자율 에이전트를 다른 에이전트에 연결합니다. 공식 A2A 및 MCP 지침은 두 프로토콜을 경쟁 관계로 취급하는 대신 함께 사용하는 방법을 설명합니다. (a2a-protocol.org)
- 에이전트 스킬: 스킬은 에이전트가 전문 작업을 수행하도록 돕는 재사용 가능한 지침과 절차를 패키징합니다. 에이전트 카드는 원격 협업을 위한 기능을 알리고, Ultralytics 에이전트 스킬은 호환되는 코딩 에이전트가 문서화된 컴퓨터 비전 워크플로를 따르도록 안내합니다.
- AI 에이전트 오케스트레이션: 오케스트레이션은 어떤 에이전트가 어떤 순서로 어떤 제약 조건에서 작업할지 결정합니다. A2A는 오케스트레이터가 사용할 수 있는 통신 계층을 제공합니다.
- 함수 호출 및 도구 사용: 함수 호출은 특정 작업을 실행합니다. A2A 요청은 원격 에이전트가 독립적으로 계획하고 완료하는 더 포괄적인 목표를 위임할 수 있습니다.
실제 AI 및 컴퓨터 비전 활용 사례#
제조 검사: 코디네이터 에이전트는 생산 이미지를 전문 컴퓨터 비전 에이전트에 보낼 수 있습니다. 해당 에이전트는 결함 감지를 실행하고 주석이 추가된 이미지와 구조화된 검사 결과를 아티팩트로 반환합니다. 그러면 코디네이터는 확인된 결함을 유지보수 에이전트에 위임하고, 불확실한 사례는 사람의 검토를 받도록 전달할 수 있습니다.
소매 재고 관리: 매장 운영 에이전트는 비전 에이전트에 선반 이미지를 검사하고, 제품 수를 세고, 빈 공간을 식별하도록 요청할 수 있습니다. 그런 다음 해당 관찰 결과를 재고 기록을 확인하는 재고 에이전트와 보충 요청을 준비하는 조달 에이전트에 보낼 수 있습니다. A2A를 사용하면 에이전트가 모델, 소스 코드 또는 비공개 내부 컨텍스트를 공유하지 않아도 상호 운용할 수 있습니다.
이러한 워크플로에서는 Ultralytics Platform을 사용하여 시각적 데이터 세트에 주석을 추가하고, 모델을 학습시키고, 추론 엔드포인트를 배포하고, 에이전트가 호출하는 인식 서비스를 모니터링할 수 있습니다.
컴퓨터 비전 에이전트 예시#
다음 문서화된 Ultralytics YOLO 예측 워크플로는 원격 비전 에이전트 내의 인식 단계를 나타냅니다.
from pathlib import Path
from ultralytics import YOLO
source = "https://ultralytics.com/images/bus.jpg"
output_path = Path("vision_artifact.jpg")
# 원격 에이전트의 시각적 분석 수행
model = YOLO("yolo26n.pt")
results = model(source)
result = results[0]
result.save(filename=str(output_path))
print(output_path)여기서 Ultralytics YOLO26은 시각적 추론을 수행하고 주석이 추가된 이미지를 생성합니다. A2A 서버는 해당 이미지를 아티팩트로 반환하면서 기계가 읽을 수 있는 감지 결과를 별도로 반환할 수 있습니다. 프로토콜은 결과를 전송하고 추적하지만 비전 모델을 대체하지는 않습니다.
설계 및 보안 고려 사항#
A2A의 상호 운용성만으로 다중 에이전트 시스템이 안전하거나 신뢰할 수 있게 되는 것은 아닙니다. 개발자는 에이전트 카드를 검증하고, 모든 호출자를 인증하고, 스킬별로 액세스를 승인하고, 위임된 권한을 제한하며, 원격 출력을 신뢰할 수 없는 입력으로 취급해야 합니다. 프로토콜의 엔터프라이즈 구현 지침은 HTTPS, OAuth 기반 인증, 최소 권한 승인, 로깅, 추적 및 데이터 최소화와 같은 확립된 웹 제어 방식을 권장합니다. (a2a-protocol.org)
프로덕션 시스템은 타임아웃, 재시도 정책, 작업 취소, 멱등 작업 및 중대한 작업에 대한 사람의 승인을 정의해야 합니다. Ultralytics Platform 배포 모니터링을 통해 요청 오류, 지연 시간 및 엔드포인트 상태를 모니터링하면 협업 에이전트 전체로 문제가 확산되기 전에 비전 기반 에이전트 워크플로의 실패를 식별할 수 있습니다.









