전송 계층 (메시지 전달)¶
전송 계층(Transports)은 에이전트에서 클라이언트로 A2UI 메시지를 전달합니다. A2UI는 특정 전송 방식에 의존하지 않으므로(transport-agnostic), JSON을 보낼 수 있는 모든 방법을 사용할 수 있습니다.
실제 컴포넌트 렌더링은 렌더러(renderer)에서 수행되며, 에이전트는 A2UI 메시지를 생성하는 역할을 담당합니다. 에이전트에서 클라이언트로 메시지를 전달하는 것이 바로 전송 계층의 역할입니다.
동작 방식¶
A2UI는 순차적인 JSON 메시지 시퀀스를 정의합니다. 전송 계층은 이 시퀀스를 에이전트에서 클라이언트로 전달하는 책임을 집니다. 일반적인 전송 메커니즘은 JSON Lines(JSONL)와 같은 형식을 사용하는 스트림이며, 여기서 각 라인은 하나의 A2UI 메시지가 됩니다.
사용 가능한 전송 방식¶
| 전송 방식 | 상태 | 활용 사례 |
|---|---|---|
| A2A 프로토콜 | ✅ 안정(Stable) | 멀티 에이전트 시스템, 엔터프라이즈 메시(Mesh) |
| AG UI | ✅ 안정(Stable) | 풀스택 React 애플리케이션 |
| REST API | 📋 계획됨 | 단순 HTTP 엔드포인트 |
| WebSockets | 💡 제안됨 | 실시간 양방향 통신 |
| SSE (Server-Sent Events) | 💡 제안됨 | 웹 스트리밍 |
A2A 프로토콜¶
에이전트 대 에이전트(A2A) 프로토콜은 안전하고 표준화된 에이전트 간 통신을 제공합니다. A2A 확장을 통해 A2UI와 쉽게 통합할 수 있습니다.
장점:
- 내장된 보안 및 인증 기능
- 다양한 메시지 형식, 인증 및 전송 프로토콜에 대한 바인딩 지원
- 관심사의 명확한 분리
A2A를 사용하고 있다면 이 과정은 거의 자동으로 이루어집니다.
TODO: 상세 가이드 추가 예정
참고: A2A 확장 명세
AG UI¶
AG UI는 A2UI 메시지를 AG UI 메시지로 변환하고, 전송 및 상태 동기화를 자동으로 처리합니다.
AG UI를 사용하고 있다면 이 과정은 자동으로 이루어집니다.
TODO: 상세 가이드 추가 예정
커스텀 전송 방식 구축¶
JSON을 전송할 수 있는 모든 방식을 사용할 수 있습니다:
HTTP/REST:
WebSockets:
Server-Sent Events:
다음 단계¶
- A2A 프로토콜 문서: A2A에 대해 알아보기
- A2A 확장 명세: A2UI + A2A에 대한 상세 내용