Files
landing_page/multi-agent-orchestration/SLIDE.md
T

410 lines
41 KiB
Markdown

---
title: AI Multi-Agents 오케스트레이션 기술 동향 및 사례
description: AI 에이전트의 핵심 기법부터 MCP/SKILL 확장, TMUX/crewAI/LangGraph 오케스트레이션 인프라, ACP/A2A 상호운용성 표준, AIoT/gRPC 동향까지 다루는 특강 발표자료용 문서입니다.
marp: true
---
<!-- NOTE: 이 문서의 동기화 사본이 paper_draft/SLIDE.md에 존재합니다. 이미지 상대경로는 루트 기준이므로 렌더링은 루트 SLIDE.md로 수행하세요. -->
# AI Multi-Agents 오케스트레이션 기술 동향 및 사례
### 정적 AI 모델에서 자율적 AI 에이전트로의 패러다임 전환
---
## 🔍 이 발표에서 다루고 싶은 핵심 화두
최근 AI 분야에서 가장 뜨거운 화두는, 단순히 사용자의 질문에 답을 하는 **정적 AI 모델(LLM)**을 넘어 스스로 목적을 가지고 움직이는 **자율형 AI 에이전트(AI Agent)**로의 패러다임 전환입니다.
우리가 흔히 쓰는 AI 모델이 똑똑하게 생각하고 답변을 생성하는 '지능 엔진'이라면, AI 에이전트는 그 지능에 자율성과 행동력, 그리고 다른 에이전트와의 협업 능력까지 결합한 실제 '행동의 주체'라고 볼 수 있습니다.
오늘 발표에서는 단순한 AI 모델을 자율적인 에이전트로 업그레이드하는 구체적인 엔지니어링 방법론부터 시작하여, 여러 에이전트들이 유기적으로 협업하는 오케스트레이션 인프라와 산업 표준 기술 동향을 아주 쉽게 풀어보려 합니다.
---
### 💡 구체적 사례 비교: "멀티 에이전트 관련 연구를 조사해줘"
사용자가 **"멀티 에이전트 관련 최신 연구 동향을 조사하고 보고서로 저장해줘"**라는 명령을 내렸을 때, 두 시스템은 완전히 다르게 움직입니다.
먼저 **AI 모델(LLM)**은 머릿속(학습된 데이터)에 있는 지식만을 꺼내서 기존 연구 목록을 말로 친절하게 설명해 줍니다. 겉보기에는 똑똑해 보이지만, 실시간으로 최신 논문을 인터넷에서 검색해 오거나 보고서 파일을 디스크에 직접 저장하는 '행동'은 수행하지 못합니다.
반면 **AI 에이전트(Agent)**는 명령을 받자마자 실제 행동을 개시합니다. 학술 API에 접속해 최신 논문을 검색해 오고, PDF 파일을 직접 다운로드해서 그 내용을 파싱한 다음, 최종 결과물을 마크다운 형태의 파일로 사용자의 컴퓨터 폴더에 실제로 만들고 저장해 줍니다.
---
### 📊 역할과 작동 방식의 결정적 차이
이 두 개념의 차이는 다음과 같이 쉽게 풀어볼 수 있습니다.
- **생각(Thinking)과 행동(Doing)의 차이**
AI 모델은 질문을 던지면 이에 부합하는 지식이나 코드를 화면에 '답변'해 주는 똑똑한 뇌 역할을 합니다. 반면 AI 에이전트는 최종 목적지에 도달하기 위해 스스로 세부 계획을 세우고 실제 컴퓨터 환경에서 발로 뛰는 손과 발 역할을 함께 수행합니다.
- **조언(Advise)과 실행(Execution)의 차이**
모델은 "이 스크립트를 이렇게 실행해서 저장하세요"라고 텍스트로 가이드라인만 알려줍니다. 하지만 에이전트는 운영체제나 파일 시스템에 직접 들어가서 스크립트를 실제로 실행하고 그 결과물을 직접 파일로 구체화합니다.
- **오류를 마주했을 때의 대처 능력**
모델은 실행 중 오류가 났을 때 사람이 에러 로그를 다시 복사해서 붙여넣어 주기 전까지는 대기할 수밖에 없습니다. 반면 에이전트는 오류가 나면 스스로 로그를 해석하고, 성찰(Reflection) 과정을 거쳐 계획을 수정해 다시 시도합니다.
---
### 🚗 아주 쉬운 비유: "운전자"와 "자율주행 차량"
그렇다면 에이전트는 모델이 시키는 대로만 움직이는 수동적인 존재일까요? 결코 그렇지 않습니다.
- **AI 모델(LLM)은 '운전자(뇌)' 입니다.**
"여기서 우회전하고 다음에서 멈추자"라는 인지적 판단과 주행 경로(추론)를 수립합니다.
- **AI 에이전트(Agent)는 '자율주행 차량 시스템 전체' 입니다.**
운전자의 판단을 가속 페달과 바퀴 회전(도구 실행)으로 바꾸며, 다음과 같은 독자적인 **시스템 수준의 판단**을 수행합니다:
- **안전 가드레일**: 운전자가 실수로 시스템을 파괴하는 명령과 같이 위험한 길로 가려 할 때 비상 제동을 걸어 이를 원천 차단합니다.
- **예외 복구 및 통제**: 네트워크 연결이 끊기거나 무한 루프에 빠지는 상황이 발생하면 스스로 판단하여 실행을 중단하고 우회 경로를 수립합니다.
- **합의 형성(Consensus)**: 멀티 에이전트 환경에서 각 에이전트들의 교차 검증 결과를 수집하여 통과나 반려 여부를 결정하고 최종 집행을 판정합니다.
---
## 🛠️ AI 에이전트가 갖춰야 할 4대 필수 기능
단순히 대화만 나누는 챗봇이 아니라, 진짜 제 역할을 하는 **자율형 AI 에이전트**가 되기 위해 소프트웨어 시스템 차원에서 반드시 제공해야 하는 4가지 핵심 기능입니다.
1. **계획 및 추론 능력 (Planning)**
2. **기억 및 상태 관리 능력 (Memory)**
3. **도구 활용 및 실행 능력 (Tool Use & Action)**
4. **상호 통신 및 협업 능력 (Collaboration)**
---
### 1. 계획 및 추론 능력 (Planning)
사용자가 최종 목표만 주면 스스로 실행 가능한 단계별 세부 태스크를 설계하고, 진행 과정에서 문제가 생기면 계획을 유연하게 수정하는 능력입니다.
- **Task Decomposition (작업 분해)**: 복잡한 목표를 실행 가능한 작은 단위의 세부 태스크로 분할 (예: Chain of Thought, Tree of Thoughts 등)
- **Self-Reflection (자기 성찰 및 피드백)**: 행동 결과를 스스로 분석하고 실수를 교정하여 향후 계획을 실시간으로 수정 (예: ReAct, Reflexion 프레임워크)
* **실제 예시**:
에이전트에게 "블로그 기사 작성"을 요청하면, 스스로 **'키워드 조사 ➡️ 개요 작성 ➡️ 본문 집필 ➡️ 오탈자 검사'** 순으로 계획을 세웁니다. 만약 맞춤법 검사 도중 치명적인 논리 오류를 발견하면, 본문 작성 단계로 스스로 되돌아가 계획을 수정하고 다시 쓰는 자가 성찰(Self-Reflection)을 거칩니다.
---
### 2. 기억 및 상태 관리 능력 (Memory)
현재 나누는 대화의 즉각적인 흐름(단기 기억)뿐만 아니라, 과거의 경험과 누적된 지식(장기 기억)을 필요할 때마다 영속적으로 꺼내어 쓰는 능력입니다.
- **Short-term Memory (단기 기억)**: 현재 대화나 컨텍스트 윈도우 내에서 실시간으로 유지되는 즉각적인 맥락 정보
- **Long-term Memory (장기 기억)**: 외부 데이터베이스나 벡터 DB를 활용하여 과거 대화 기록 및 지식을 RAG 기법으로 바인딩하는 정보 보존 공간
* **실제 예시**:
에이전트에게 "어제 작업하던 파이썬 소스코드의 오류를 이어서 수정해줘"라고 요청하는 경우입니다. 에이전트는 데이터베이스에 누적된 과거 대화 히스토리와, 벡터 DB에 저장되어 있는 소스코드의 예전 상태 정보를 동적으로 인출(Retrieval)해 와 대화 맥락을 끊김 없이 이어갑니다.
---
### 3. 도구 활용 및 실행 능력 (Tool Use & Action)
인터넷 검색, 외부 API 호출, 파일 시스템 접근, 코드 실행 등 컴퓨터 세상의 다양한 소프트웨어를 직접 연결하고 작동시키는 손과 발 역할을 의미합니다.
* **실제 예시**:
복잡한 나눗셈 연산을 해야 할 때 직접 계산기 도구를 호출해 오차 없이 연산하고, 최신 주식 시세를 알기 위해 증권사 API를 호출하며, 작성한 코드가 잘 돌아가는지 검증하기 위해 격리된 샌드박스 컴퓨터 환경(Docker)을 구동해 스크립트를 직접 실행합니다.
---
### 4. 상호 통신 및 협업 능력 (Collaboration)
혼자서 모든 일을 처리하는 것이 아니라, 다른 역할을 가진 전문 에이전트나 사용자 시스템과 표준 규격으로 메시지를 주고받으며 큰 작업을 분산 처리하는 능력입니다.
* **실제 예시**:
"이 프로젝트의 보안 취약점 보고서를 작성해줘"라는 명령을 내렸을 때의 상황입니다. 보안 에이전트가 소스코드를 스캔해 취약점을 나열하면, 인프라 에이전트가 가상 머신 설정을 검토하고, 최종적으로 리뷰어 에이전트들이 보고서의 신뢰성을 상호 검증하여 하나의 완성된 산출물을 합작해 냅니다.
---
## 🚀 패러다임 전환: Model eats the Scaffolding (모델이 외부 시스템을 흡수하다)
현재 에이전트 기술에서 가장 중요한 변화 중 하나는, 과거에 에이전트 제어 시스템(Scaffolding, 에이전트의 구동을 돕는 외부 뼈대 구조)이 수동으로 제어하던 기능들이 점점 AI 모델 내부로 흡수되고 있는 현상입니다.
- https://arca.live/b/characterai/174977057?category=%EB%89%B4%EC%8A%A42&p=1
- **스스로 생각하는 모델의 등장 (Test-time Compute, 추론 시점 추가 연산)**
최근 출시된 Gemini Thinking이나 OpenAI o1/o3 같은 모델들은 외부 시스템이 루프를 돌려주지 않아도, 모델 스스로 출력을 내보내기 전에 내부적으로 계획을 세우고(Planning) 스스로 오류를 성찰(Reflection)하는 과정을 완료합니다.
- **인지와 집행의 명확한 역할 분담**
이에 따라 고차원적인 논리 설계와 계획(Planning)은 **AI 모델** 내부로 빠르게 넘어가고 있습니다. 반면 외부의 **에이전트 인프라(Harness, 에이전트 실행 및 도구 제어 장치)**는 안전한 실행 환경(Sandboxing, 격리 환경 실행), 권한 통제, 상태 관리처럼 모델이 직접 수행하기 어려운 물리적 보호막 역할을 담당하는 방향으로 진화하고 있습니다.
- **차별화 요소(Alpha)의 이동**
단순히 계획을 짜는 흐름을 코드로 구현하는 것의 가치는 점차 줄어들고 있습니다. 이제는 복잡한 인프라를 실시간으로 제어하고, 서로 다른 규격을 가진 다양한 에이전트들을 표준 프로토콜로 유기적으로 엮어내는 기술이 핵심 경쟁력으로 부상하고 있습니다.
---
# 1. AI 에이전트 구현을 위한 3대 핵심 엔지니어링 기법
성공적인 AI 에이전트 시스템을 구현하기 위해서는 단순히 모델에게 프롬프트를 입력하는 것을 넘어, **모델 제어**, **정보 연동**, **물리적 환경 연결**을 유기적으로 엮어내는 3가지 핵심 엔지니어링 기법이 필요합니다.
1. **프롬프트 엔지니어링 (Prompt Engineering)**: 에이전트의 페르소나와 사고 방식(추론 가이드라인)을 규정하는 작업입니다.
2. **컨텍스트 엔지니어링 (Context Engineering)**: 대화 흐름을 끊김 없이 보존하고 관련 데이터를 적시에 제공하는 정보 정리 작업입니다.
3. **하네스 엔지니어링 (Harness Engineering)**: 격리된 환경에서 다양한 소프트웨어 도구를 안전하게 조작할 수 있는 물리적 손발을 달아주는 작업입니다.
---
### 1️⃣ 프롬프트 엔지니어링 (Prompt Engineering)
모델의 발전과 자체 추론 기능의 향상으로 예전만큼 미시적인 프롬프트 트릭에 집착할 필요는 줄어들고 있습니다. 하지만 프롬프트는 여전히 **AI 에이전트 활용의 시작점이자 뼈대**입니다. 구체적이고 명확한 작동 지침을 만들기 위해 프롬프트 작성 시 반드시 반영해야 할 3대 핵심 고려사항입니다.
- **역할 및 페르소나 지시 (Role)**
에이전트에게 전문 도메인 지식과 행동 경계를 지정해 줍니다. (예: *"너는 주니어 개발자를 코칭하는 꼼꼼한 테크리더 에이전트다. 직접 고치지 말고 가이드라인만 제공해라."*)
- **구체적인 작업 예시 제공 (Few-shot)**
원하는 출력 형식이나 중간 추론 과정의 모범 예시를 제공하여, 에이전트의 답변 일관성과 가독성을 극대화합니다.
- **자가 검증 방법 제시 (Verification)**
에이전트 스스로 작업의 무결성을 점검하게 하거나, 외부 시스템이 실행 결과를 확인 및 통제할 수 있도록 정형화된 출력 규격(예: 최종 통과 시 `[VERDICT: PASS]` 명시 요구)을 정의해 줍니다.
---
### 💡 실제 프롬프트 구조 예시 (ReAct 사고 방식)
에이전트가 단번에 대답하지 않고 단계별로 계획을 세워 도구를 사용하도록 프롬프트 구조를 강제하는 기법입니다.
```text
[System Prompt]
너는 복잡한 수식을 계산하는 수학 에이전트다. 다음 형식으로 사고해라:
- Thought: 문제 해결을 위한 다음 행동 계획을 작성해라.
- Action: 호출할 도구 이름과 인자값을 JSON으로 적어라. (예: Calculator)
- Observation: 도구 실행 결과가 여기에 채워질 것이다.
- Thought: 실행 결과를 바탕으로 성찰하고, 필요하면 다음 Action을 설계해라.
```
---
### 2️⃣ 컨텍스트 엔지니어링 (Context Engineering)
에이전트가 다루는 대화 맥락과 작업 상태(State)를 효율적으로 정제하고, 수많은 외부 정보 중 **지금 꼭 필요한 관련 데이터(RAG)**만을 선별하여 제한된 AI의 기억 공간(컨텍스트 윈도우)에 밀도 높게 채워 넣는 기술입니다.
* **핵심 설계 요소**:
- **대화 상태 보존**: 이전 턴의 작업 결과를 유실 없이 보존
- **동적 바인딩**: 외부 RAG 검색기에서 관련도 높은 중요 데이터만 적시에 필터링하여 공급
- **메모리 압축**: 불필요한 과거 로그는 요약하고, 핵심 현재 상태 구조체만 유지해 토큰 낭비 방지
* **에이전트 상태 보존 예시 (State JSON)**:
```json
{
"task_id": "job_10294",
"current_working_directory": "/workspace/src",
"error_logs": ["SyntaxError: unexpected EOF while parsing at line 14"],
"completed_subtasks": ["1. 소스코드 로드 완료", "2. 오류 라인 식별"],
"next_action_required": "오류 라인 14의 괄호 닫힘 확인 및 수정 스크립트 작성"
}
```
---
### 3️⃣ 하네스 엔지니어링 (Harness Engineering)
에이전트가 파일 시스템 제어, 브라우저 조작, 외부 API 호출 등 컴퓨터 세상의 다양한 도구들을 안전하게 가동할 수 있도록 **물리적 인터페이스(연결 고리)**를 구성하는 기술입니다.
* **핵심 설계 요소**:
- **도구 호출 가로채기(Intercepting)**: 모델이 내놓은 도구 호출 의도(JSON 등)를 감지하고, 실제 터미널이나 프로그램의 함수로 전달해 구동함
- **보안 샌드박싱 (Sandboxing)**: 에이전트가 악성 코드나 파괴적인 명령어를 무단 실행하지 않도록 격리된 가상 환경을 구축하고 권한을 통제함
* **물리 인터페이스 도구 결합 예시**:
```
[LLM의 출력] ──> "Action: execute_command, args: { cmd: 'ls -la' }"
│ (하네스가 이를 가로챔)
[하네스 제어기] ──> 격리된 Docker 샌드박스 내부에서 'ls -la' 실제 실행
│ (실행 결과 가로챔)
[LLM의 입력] <── "Observation: total 12\ndrwxr-xr-x 3 user..." (모델에 반환)
```
![Harness Diagram](../../assets/images/Screenshot%202026-06-25%20at%209.39.07%20pm.png)
---
# 2. AI Agent 기능 확장: MCP & SKILL
## MCP (Model Context Protocol)
Model Context Protocol(MCP)은 Anthropic이 2024년 11월 발표한 오픈 소스 프로토콜로, AI 애플리케이션(Host) 내부의 클라이언트(Client)가 로컬/원격의 도구(Tools), 데이터 소스(Resources), 그리고 컨텍스트 템플릿(Prompts)을 통일된 규격으로 안전하게 호출할 수 있는 공통 인터페이스입니다.
- **Host-Client-Server 구조**: 에이전트 플랫폼(Host) 내 클라이언트가 표준화된 MCP 프로토콜을 통해 외부의 다양한 MCP 서버들과 통신하여 기능을 동적으로 확장하는 형태
- **3대 제공 요소**:
- **Tools**: 에이전트가 실행할 수 있는 실행형 기능(계산기, 파일 제어, API 호출 등)을 명세하고 호출 처리
- **Resources**: 에이전트가 읽을 수 있는 데이터 소스, 파일, 컨텍스트 상태 정보를 노출
- **Prompts**: 자주 사용되는 프롬프트 템플릿과 실행 지침을 표준 규격으로 제공
## CLI 코딩 에이전트: Claude Code vs Cowork
AI 에이전트의 대표 주자인 Claude는 Claude Desktop App에서 Claude Cowork와 Claude Code라는 두 가지 상이한 서비스를 제공합니다.
- **작동 방식의 차이**: Claude Cowork는 일상적인 사무 비서 역할로 Cloud 상에서 필요한 파일(pdf, word, excel 등)을 읽고 쓰는 방식을 사용하며, Claude Code는 Coding 작업에 특화되어 Local Computer에 필요한 모듈과 소프트웨어를 설치하여 직접 파일 수정 및 실행을 수행
- **환경적 이점**: Claude Code는 터미널에서 로컬 컴퓨터의 필요한 모듈/소프트웨어를 바탕으로 작업 디렉터리 내 파일을 직접 제어하여 개발 업무에 고도화된 성능 발휘
![Screenshot 2026-06-25 at 10.04.54 pm](../../assets/images/Screenshot%202026-06-25%20at%2010.04.54%20pm.png)
- **생산성 극대화**: Claude Code를 프로젝트에 알맞게 조련하여 사용할 경우 단순 Cloud 비서 환경 대비 월등히 높은 결과물 기대 가능
## SKILL이란
Skills(기술/도구 패키지)는 AI 에이전트가 외부 환경과 동적으로 상호작용할 수 있도록 결합하는 기능적 실행 모듈입니다. 단순히 LLM에게 단순 프롬프트 지시를 하는 프롬프트 엔지니어링 수준을 넘어, 에이전트가 특정 목표를 위해 직접 실행할 수 있는 실행 코드, 도구의 명세 스키마(Tool Schema), 사용 설명 및 예시(Few-shot) 등이 하나로 패키징된 자율 확장 도구 모음입니다.
- **동적 모듈화 및 모듈화 방식**: 상황에 따라 필요한 기술을 동적으로 로드해 사용하고, 완료 후 반환하는 독립 모듈화 형태 채택
- **작업 수행 한계 돌파**: 텍스트 생성이라는 언어 모델의 한계를 넘어 파일 제어, 서버 배포, 물리 데이터 수집 등 실질적인 업무 대행 능력을 에이전트에 부여
## Skills 사례 소개
에이전트가 업무 현장에서 유용하게 사용하는 대표적인 Skills 사례들은 다음과 같습니다:
1. **코드베이스 분석 및 관리 Skill**
- 프로젝트 소스코드를 탐색(Grep), 특정 코드 조각을 치환(File replace), 변경 사항 검증(Linting), 최종 커밋 및 푸시 등을 처리하는 개발 자동화 Skill
2. **브라우저 자동화 및 스크래핑 Skill**
- 헤드리스 브라우저(Playwright, Puppeteer 등)를 기동하여 실시간 웹 트렌드 조사, 경쟁사 데이터 수집, 웹 UI에 대한 QA 테스트를 자율 수행하는 Skill
3. **인프라스트럭처 제어 및 DevOps Skill**
- 클라우드 환경(AWS, GCP 등)이나 Firebase Hosting, Cloud Firestore 등과 같은 서버리스 백엔드 서비스의 배포 및 데이터베이스 규칙 수정을 지원하는 시스템 운영용 Skill
4. **학술/도메인 특화 API Skill**
- 생화학 데이터베이스(ChEMBL), 의학 학술 논문(PubMed, arXiv), 유전학 정보(dbSNP, ClinVar) 등 전문 영역의 연구용 OpenAPI와 연동하여 자율 연구원(Researcher) 역할을 돕는 조사용 Skill
### Github를 점령한 Skills
![Screenshot 2026-06-25 at 9.43.29 pm](../../assets/images/Screenshot%202026-06-25%20at%209.43.29%20pm.png)
### Understand skill
Turn any codebase, knowledge base, or docs into an interactive knowledge graph you can explore, search, and ask questions about.
![Screenshot 2026-06-25 at 9.41.27 pm](../../assets/images/Screenshot%202026-06-25%20at%209.41.27%20pm.png)
### 유행이라 개발해본 multi-agent-mux skill
![Screenshot 2026-06-25 at 9.45.01 pm](../../assets/images/Screenshot%202026-06-25%20at%209.45.01%20pm.png)
![Recording Jun 25, 2026 - 11_56 AM](../../assets/images/Recording%20Jun%2025,%202026%20-%2011_56%20AM.mp4)
---
# 3. 멀티 에이전트 협업 체계 및 오케스트레이션 인프라
## 싱글 에이전트의 한계
단일 에이전트는 대규모 컨텍스트를 처리할 때 정보 누락(Lost in the middle) 현상이 발생하기 쉽고, 여러 도구를 한꺼번에 다루어야 할 때 환각(Hallucination)율이 증가하는 문제가 있습니다. 또한 역할 집중으로 인한 프롬프트의 장황화, 멀티태스킹 오류 및 컨텍스트 인지 한계 등의 명확한 한계를 가집니다.
## 멀티 에이전트란: 역할 세분화와 교차 검증
멀티 에이전트(Multi-Agent) 시스템은 단일 에이전트(Single Agent)의 한계를 극복하기 위해, 서로 다른 페르소나와 전문 도구(Skills)를 갖춘 여러 개의 에이전트들이 협력 네트워크를 형성하여 복잡한 목표를 조율(Orchestration)하고 분할 해결하는 구조입니다.
- **역할 세분화 (Role Specialization)**: 에이전트별로 한정된 역할(PM, Developer, QA, Researcher 등)과 도구만을 부여하여 프롬프트 노이즈를 억제하고 추론 정확도 향상
- **교차 검증**: 서로 다른 이종 모델(Gemini 작성 ➡️ Claude 검토 등) 간의 상호 비평 및 검증 루프를 통해 결과물의 정합성을 교차 검증하고 결과 신뢰성 극대화
- **분할 정복 (Divide and Conquer)**: 하나의 거대한 프로젝트를 독립된 세부 태스크로 쪼개어 다수의 에이전트가 병렬적으로 해결함으로써 복잡성 분산
## Subagent / Team agent
- ### Subagent란
Subagent는 부모 에이전트(Parent Agent 또는 Orchestrator)에 의해 동적으로 생성되어 특정 국소적이고 독립적인 태스크를 대행한 뒤, 결과를 상위로 반환하고 소멸하는 종속형 에이전트입니다.
- **컨텍스트 격리**: 하위 작업의 맥락만을 분기(Branch)하여 처리함으로써 상위 대화의 컨텍스트 오염을 막고 토큰 소모량 최적화 및 속도 개선
- **예시**: 메인 에이전트가 리팩토링 중 특정 모듈 에러 복구 작업만을 subagent에 위임하여 처리하는 독립적인 문제 해결 기법
![Pasted image 20260625224821](../../assets/images/Pasted%20image%2020260625224821.png)
![Pasted image 20260625224849](../../assets/images/Pasted%20image%2020260625224849.png)
- ### Team agent란
Team agent는 단일 계층적인 수직 구조를 넘어, 수평적이고 다양한 역할을 맡은 여러 독립 에이전트가 협의체(Crew/Team)를 구성하여 대화형 협력(Multi-agent Debate) 및 협상을 통해 목표를 완수하는 협동형 에이전트 구성 방식입니다.
- **의견 충돌 및 합의**: 특정 설계안에 대해 서로 다른 관점의 에이전트들이 논쟁(Debate)을 벌이고, 최종적으로 조율된 결과를 PM 에이전트가 도출하는 식의 협력 모델
- **협력적 의사결정**: 복잡한 문제에 대해 실시간으로 의견과 피드백을 교환하여 점진적으로 결과물의 품질 고도화
![Pasted image 20260625230135](../../assets/images/Pasted%20image%2020260625230135.png)
![Pasted image 20260625224919](../../assets/images/Pasted%20image%2020260625224919.png)
## 구성 기술: TMUX · crewAI · LangGraph
- ### TMUX
TMUX는 에이전트들의 독립적인 작업 공간을 제공하는 가상 터미널 관리 도구로, 백그라운드 내 장기 작업(Long-running task) 세션을 안정적으로 유지하고 AI 에이전트의 동작을 TUI로 실시간 모니터링 및 제어할 수 있도록 도와주는 소프트웨어입니다.
- **에이전트별 독립 작업 공간 제공**: 각 에이전트 세션을 독립적인 tmux 윈도우나 패널에 격리하여 병렬로 실행할 수 있는 물리적 격리막 형성
- **장기 실행 작업의 백그라운드 세션 유지**: SSH 연결이 끊어지거나 브라우저 세션이 끊겨도 tmux 세션 내부에서 구동되는 에이전트 작업은 유실 없이 백그라운드에서 계속 유지
- **TUI 실시간 모니터링 및 제어**: CLI 코딩 에이전트나 멀티 에이전트들의 실행 과정을 사람이 TUI를 통해 실시간으로 관측(observe)하고 필요시 입력을 제공할 수 있도록 실시간 관측 및 제어 지원
- *실제로 앞서 소개한 `multi-agent-mux` 스킬 데모가 이러한 TMUX 세션 관리 기능을 활용하여 설계된 멀티 에이전트 오케스트레이션 사례임*
- ### crewAI
역할 기반(Role-based) 협업을 설계하는 데 특화된 프레임워크입니다. 각 에이전트에게 명확한 역할(Role), 목표(Goal), 배경 설명(Backstory)을 부여하고, 이들을 업무 프로세스(Sequential 또는 Hierarchical)에 따라 배치해 '크루(Crew)' 단위로 조율합니다.
- ### LangGraph
컨텍스트 엔지니어링(Context Engineering)은 다중 에이전트 시스템에서 에이전트들 간의 대화 흐름, 전달되는 컨텍스트(State), 복잡한 제어 루프를 효율적으로 설계하고 유지하는 방법론적 학문입니다. 이를 구현하는 대표적인 상태 보존형 프레임워크가 LangGraph입니다.
- **상태 보존 및 순환 제어**: 단순 선형적 체인 구조를 탈피하여, 에이전트 간의 루프(반복 검증), 조건부 분기(Conditional branching), 실패 시 롤백 등을 순환형 그래프(Cyclic Graph) 구조로 제어
- **영속적 상태 관리**: 협업 과정에서 축적되는 다양한 상태 변화(State)를 중앙 저장소에서 추적 및 동기화하여 특정 노드가 실패하더라도 이전 상태부터 복구 및 재시작할 수 있는 환경 제공
- ### (참고) AutoGen, BeeAI
Microsoft AutoGen과 IBM의 BeeAI도 멀티 에이전트 오케스트레이션을 지원하는 주요 프레임워크입니다.
- **Microsoft AutoGen**: 대화형 에이전트 설계(Conversational Agentic Design)에 중점을 둔 프레임워크로, 에이전트 간 대화를 통해 코드를 실행하고 피드백을 주고받는 풍부한 동적 워크플로우 제공
- **BeeAI**: 에이전트를 탐색, 실행, 공유할 수 있는 중앙 집중형 오픈소스 플랫폼으로 리눅스 재단(LF) 하위에서 ACP 표준 프로토콜을 백본으로 구축
![Screenshot 2026-06-25 at 10.52.04 pm](../../assets/images/Screenshot%202026-06-25%20at%2010.52.04%20pm.png)
## [사례] 실제 구현하며 겪은 문제점들
![Pasted image 20260625230628](../../assets/images/Pasted%20image%2020260625230628.png)
1. **Agent들과 각 Agent들의 세션 관리**
- 다수의 에이전트와 그 아래에 동적으로 생성되는 subagent들의 생명주기(Lifecycle) 및 고유 식별자(UUID)를 동기화하고 상태를 지속적으로 보존하는 일관된 세션 관리 시스템 요구
2. **에이전트 상호 탐색(Service Discovery)과 역할 식별**
- 새로운 에이전트가 네트워크에 진입했을 때 어떤 에이전트가 어떤 과업을 처리할 수 있는지 동적으로 파악하는 기능 요구
- **마스터 - 슬레이브(Master-Slave) 방식**: 중앙 오케스트레이터가 전권을 쥐고 세션을 직접 관리 및 명령하므로 통제는 쉬우나, 오케스트레이터의 에러가 시스템 전체의 단일 실패점(SPOF)이 될 위험 존재
- **P2P 및 보고(P2P and Report) 방식**: 에이전트들이 동등한 위치에서 협상하며 자율적으로 탐색하고, 작업 결과를 기록 보관소에 보고하는 방식이나 네트워크 관리 비용 상승 우려
3. **실시간 메시징과 이벤트 예외 처리의 복잡성**
- 태스크 위임 완료 후, 작업 결과와 성공/실패 여부를 교환하는 통신 채널이 중단되거나 유실될 수 있는 위험성 대두
- **송신/수신 주체의 돌발 종료**: 위임 후 송신 주체가 다운되었다가 재가동(Restart)되는 경우, 비동기 알람이 공중분해되어 전체 협업 루프 중단
- **무한 대기 및 리소스 누수(Deadlock & Resource Leak)**: 작업을 위임받은 서브에이전트가 예외 이벤트 없이 비정상 종료(Silent death)할 경우 부모 에이전트가 무한 대기(Blocking) 상태에 빠지는 문제 발생
## [사례] Multi Agent Orchestration의 장점
1. **프롬프트의 간소화 및 루프 엔진의 진화**
- 기존의 길고 장황한 단일 "Super Prompt" 엔지니어링 시대에서 벗어나, 에이전트를 구동하고 제어하는 자율 루프(Loop Architecture) 설계 중심으로 패러다임 이동
- *PSPDFKit 창업자이자 오픈소스 AI 에이전트 프로젝트인 OpenClaw의 크리에이터인 페터 슈타인베르거(Peter Steinberger, 2026년 초 OpenAI 합류)는 **"코딩 에이전트에 프롬프트를 더 넣지 말고, 에이전트를 구동하는 루프를 설계하라"**(Stop prompting your coding agents; start designing loops that prompt your agents)고 강조한 바 있음*
- 멀티 에이전트 구조에서는 작업 지시 PM 에이전트, 작업 수행 Worker 에이전트, 유효성 검증 Reviewer 에이전트로 나뉨으로써 프롬프트가 단편적이고 명료해지는 이점 확보
2. **컨텍스트 설명 불필요 (Context-Free Sharing)**
- 공유 작업 환경(Shared Workspaces)과 Git 같은 버전 관리 시스템을 에이전트들이 공유하므로, 새로 합류한 에이전트에게 변경 이력이나 현재 맥락을 다시 텍스트로 설명하느라 불필요한 토큰과 대기 시간 낭비 방지
3. **이종 모델 피드백을 통한 고품질 산출물 교차 검증**
- 특정 한 모델 계열만으로 결과물을 짜고 동일한 계열에 검토를 시키는 것보다, 서로 다른 아키텍처와 특징을 지닌 이종 모델(Gemini 작성 ➡️ Claude 검토 등) 간 상호 보완할 때 결과물의 신뢰성 극대화 및 보이지 않는 맹점 상호 보완
4. **비용 효율적인 토큰 분배 (Cost Optimization)**
- 쉬운 코드 생성이나 정보 검색은 경량화된 저비용 모델(예: Gemini Flash 세대)을 탑재한 에이전트에 분산 위임하고, 고난도의 논리적 추론이 필요한 부분에만 최상위 고비용 모델을 탑재한 에이전트를 적절히 매칭함으로써 종합적인 API 비용 효율적 제어
## [요구사항] 성공적인 구현을 위해 필요한 것들 (What We Need?)
앞의 문제점과 장점을 종합하면, 성공적인 멀티 에이전트 오케스트레이션 구현을 위해서는 다음 5가지 구성요소가 필수적이며, 이 요구사항들이 4장(표준)과 5장(인프라)에서 소개할 솔루션의 선정 기준이 됩니다.
1. **Agent 간 작업 환경 공유 (A2A의 Agent Card 기반)**
- 특정 에이전트에게 태스크를 안전하게 위임하고 위임받기 위해선, 각 에이전트 카드를 통해 서로의 역할, 엔드포인트, 입력 명세 스키마를 신뢰성 있는 방식으로 동기화
2. **에이전트 작동 인프라스트럭처 (Agent Working Infrastructure)**
- 에이전트들이 통신에 사용할 서비스 주소와 포트를 동적으로 조회할 수 있는 서비스 디스커버리 기능 및 자동 라우팅 체계 내재
3. **일관성 있는 워크플로우 추적 및 공유 (Issue & Workflow Tracking)**
- 서로 다른 에이전트가 동일한 작업을 재수행할 때 동일한 프로세스와 출력을 일관되게 얻을 수 있도록 워크플로우 사양이 제어되어야 함. 또한 에러나 중간 정지가 일어났을 때 복구 및 추적이 용이하도록 규격화된 이슈 추적 인터페이스 마련
4. **고성능 양방향 메시징 시스템 (Advanced Messaging System)**
- 고용량의 코드 블록, 이미지 및 멀티모달 센서 데이터 등을 대량으로 빠르고 정확하게 공유하기 위해서는 기존의 MQTT나 단순 메시지 큐(MQ) 방식은 토픽 세분화와 페이로드 크기 한계로 인해 통신 병목을 겪을 수밖에 없음
- 단편적인 이벤트 알림만 전송하는 구조에서 탈피하여 상세 에러 트레이스, 상태 구조체, 이미지 바이너리 등을 한꺼번에 담을 수 있는 풍부한 페이로드 지원 메시징 규격이 필수적임. 나아가 대용량 멀티모달 푸시(Push)와 양방향 스트리밍을 지원하기 위해 HTTP/3의 멀티 스트리밍 등 고성능 통신 수반
5. **작업 및 태스크 관리 시스템 (Job & Task Lifecycle Controller)**
- 하나의 부모 작업을 하위 스크럼(Scrum) 단위로 쪼개어 서브에이전트들에게 뿌려주는 라이프사이클 관리 기능이 있어야 함. 각 서브에이전트의 생성부터 소멸까지의 메시징 토픽과 임시 토큰을 정리해야 하며, 이 과정에서 부하를 고르게 배분하고 실력 있는 에이전트를 매칭하기 위한 로드 밸런싱 기법 병행
![Pasted image 20260625230351](../../assets/images/Pasted%20image%2020260625230351.png)
### 🔗 요구사항과 기술 솔루션 매핑 (Bridge Mapping)
- **요구사항 1(작업 환경 공유)** 및 **요구사항 2(서비스 디스커버리)**는 상호 연동 장벽을 허물기 위해 **§4 에이전트 상호운용성 표준(ACP/A2A)**을 통해 규격화된 표준 명세로 제공
- **요구사항 4(고성능 양방향 메시징)** 및 **요구사항 5(태스크 라이프사이클/로드밸런싱)**는 고부하 대규모 실시간 분산 환경에서 물리적 네트워크 및 런타임 최적화를 실현하는 **§5 gRPC 백본 인프라**를 통해 해결
- **요구사항 3(워크플로우 추적)**은 표준 명세(Agent Card)의 추적 스키마와 물리 인프라(gRPC liveness probe 및 트레이싱 도구) 양대 측면에 모두 걸쳐 상호 보완적 제어
---
# 4. 에이전트 상호운용성 확보를 위한 표준: ACP, A2A
## 왜 이종 에이전트 연동 표준이 필요한가
3장에서 정의한 요구사항 중 **'Agent 간 작업 환경 공유'(요구사항 1)**와 **'서비스 디스커버리'(요구사항 2)**는 특정 벤더의 독점적 구현이 아닌 개방형 표준 규격을 통해 해결되어야 합니다. 그 핵심 해답이 되는 오픈 규격 표준이 바로 ACP와 A2A입니다.
서로 다른 벤더가 제작하고 각기 다른 아키텍처로 설계된 이종 에이전트들이 복잡한 맞춤형 결합 코드(Glue code) 없이도 서비스 검색, 역할 전파 및 태스크 위임을 유연하게 수행하려면 통일된 오픈 통신 규약이 필수적입니다. 표준 규격을 통하면 에이전트 생태계의 결합도가 낮아져 이종 에이전트 간의 동적 협업 네트워크 구축 속도가 비약적으로 향상됩니다.
## ACP (Agent Communication Protocol)
IBM Research가 자사의 BeeAI 프레임워크 연동을 지원하기 위해 **2025년 3월** 발표했던 오픈 표준 에이전트 통신 인터페이스입니다. 이종 에이전트 간의 서비스 발견(Service Discovery), 상호작용 방법 협상, 태스크 위임 프로세스를 최초로 규격화하였습니다. 이후 **2025년 8월 27일** 공식 깃허브 저장소가 아카이빙되며 Linux Foundation AI & Data 하위의 A2A(Agent-to-Agent) 프로토콜로 공식 통합 및 병합되어 단일 연합 생태계를 형성하였습니다.
## A2A와 Agent Card
- ### A2A (Agent-to-Agent) 프로토콜
Google과 50여 개 파트너사들이 **2025년 4월** 공동 발표하고 **2025년 6월** Linux Foundation에 기증한 이종 에이전트 간 표준 메시지 교환 및 상태 추적용 통합 통신 오픈 표준입니다. 서로 다른 벤더가 구현한 에이전트나 다양한 아키텍처 기반의 에이전트가 복잡한 결합 코드 없이도 협업 메시지를 교환하고 상태 추적 지원
- ### Agent Card (에이전트 카드)
A2A 생태계에서 에이전트의 기능 명세서 역할을 하는 JSON 포맷의 표준 규격서입니다. 이는 **요구사항 1(작업 환경 공유)**을 물리적 파일 수준에서 구체화하는 핵심 메커니즘으로 기능함. 에이전트 카드에는 해당 에이전트의 명칭, 제공 가능한 역량(Capabilities), 호출 엔드포인트 정보, 요청 시 통과해야 하는 보안 인증 사양(Authentication) 등이 명시되어 있어 서비스 검색 시스템(Service Discovery)이 에이전트의 역할을 실시간으로 탐색할 수 있도록 보장. 주로 `/.well-known/agent-card.json` 경로에 배포
---
# 5. 지능형 사물인터넷(AIoT) 및 gRPC 기술 동향
## AIoT 환경에서 멀티 에이전트가 유용한 이유
스마트 팩토리, 스마트 팜 등 다수의 물리 디바이스로 구성된 Physical 계층과 엣지 연산 계층이 복잡하게 혼재하는 AIoT 환경에서는 단일 클라우드 에이전트만으로 지연 시간 제어와 로컬 예외 상황 대처를 감당하기 어렵습니다. 따라서 센서 수집, 이상 탐지, 자율 제어 등의 고유 역할을 여러 에이전트에 자율 분산 배치하여 협업 기반의 로컬 제어를 실현해야 합니다. 이를 통해 네트워크 연결 차단 시에도 독립 제어가 가능하며, 컴퓨팅 자원이 극도로 제한된 엣지 인프라 하에서도 실시간 협업 자율 제어를 달성할 수 있습니다.
## Why we need gRPC?
3장 요구사항 중 **'고성능 양방향 메시징'(요구사항 4)**과 **'태스크 라이프사이클 관리'(요구사항 5)**를 물리적 인프라 수준에서 충족하는 강력한 통신 백본이 gRPC (Google Remote Procedure Call) 프로토콜입니다.
1. **A2A 프로토콜과의 높은 호환성 및 스마트 팩토리/팜 최적화**
- 스마트 팜, 스마트 팩토리와 같은 AIoT 서비스를 타겟으로 하는 개발 단계에서 대역폭이 극단적으로 제약되는 센서 디바이스는 MQTT/CoAP 등을 혼용하되, 상위 게이트웨이 및 연산 계층에서는 gRPC가 강력하고 최적의 제어 프로토콜로 작동
2. **고성능 멀티 모달 바이너리 스트리밍 및 Pub/Sub 네이티브 지원**
- HTTP/2 또는 HTTP/3 기반으로 작동하여 양방향 스트리밍, Request/Response, Pub/Sub 통신 방식을 단일 포트에서 완벽히 수행하며 대용량 멀티모달 바이너리를 고속으로 처리
- 마이크로서비스 아키텍처(MSA)에서 메인 통신 규격으로 활용되므로 타 시스템으로의 이식 및 연동 성능 탁월
3. **구조화된 직렬화 기반의 효율적 태스크 생명주기 및 부하 분산**
- Protobuf를 통한 강력한 스키마 기반 직렬화로 통신 메시지 처리 효율을 JSON 파싱 대비 수배 이상 향상하고 메모리 오버헤드 극소화
- 이미 검증된 Envoy, Kubernetes gRPC liveness probe 등의 기성 인프라를 활용하여 에이전트 라이프사이클 감시 체계를 최소한의 공수로 구축 가능
## 기술 동향 요약
최근 AIoT 에이전트 인프라 환경은 물리적 센서 단말에서 대역폭을 극단적으로 아끼기 위해 경량 프로토콜(MQTT/CoAP)을 사용하고, 상위 연산 및 오케스트레이터 게이트웨이 계층에서는 고성능 프로토콜(gRPC)을 사용하여 계층별 완충 혼용을 유도하는 설계가 주류 트렌드로 자리잡고 있습니다. 이러한 하이브리드 프로토콜 아키텍처는 마이크로서비스 아키텍처(MSA)에 뛰어난 이식 및 확장 성능을 보장합니다.
---
# 특강 최종 요약
## AI Multi-Agents 오케스트레이션 기술 동향 및 사례
- **AI 에이전트 구현을 위한 3대 핵심 엔지니어링 기법**: 프롬프트 엔지니어링, 컨텍스트 엔지니어링, 하네스 엔지니어링을 통하여 단일 에이전트 설계 및 도구 연동 제어
- **AI Agent 기능 확장**: MCP(Model Context Protocol) 및 SKILL 프레임워크를 기반으로 클라이언트-서버 구조로 동적인 도구(Tools) 및 데이터(Resources) 호출 인터페이스 확장
- **멀티 에이전트 협업 체계 및 오케스트레이션 인프라**: 싱글 에이전트의 한계(Lost in the middle, 환각)를 극복하기 위해 TMUX 세션 관리 TUI, crewAI 역할 협업, LangGraph 상태 보존 그래프를 결합한 분산 협업 구조 구축
- **에이전트 상호운용성 확보를 위한 표준**: 벤더 종속 없이 협업 위임을 실현하기 위해 ACP와 A2A 프로토콜 표준 규격 및 Agent Card 기반의 상호 탐색 환경 통일
- **지능형 사물인터넷 (AIoT) 및 gRPC 기술 동향**: 물리 및 엣지 단말 자원 한계를 보완하기 위한 경량 프로토콜(MQTT/CoAP)과 고성능 양방향 메시징 gRPC를 계층별 완충 혼용하여 MSA 기반의 실시간 자율 분산 제어망 완성