[PAPER] AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation
AutoGen — AI가 서로 대화하며 문제를 푼다: 대화 중심 멀티에이전트 프레임워크
Qingyun Wu, Gagan Bansal, Jieyu Zhang, Yiran Wu, Shaokun Zhang, Erkang Zhu, Beibin Li, Li Dong, Chi Wang, Ahmed Hassan Awadallah
Microsoft Research · arXiv:2308.08155 · ICLR 2024
| 제목 | AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation |
| 저자 | Qingyun Wu, Gagan Bansal et al. (Microsoft Research, 총 10인) |
| 학회 | ICLR 2024 (International Conference on Learning Representations) |
| arXiv | arXiv:2308.08155 · 2023년 8월 |
| 핵심 개념 | ConversableAgent — 대화로 협력하는 멀티에이전트 UserProxy Agent ↔ AssistantAgent 기본 패턴 GroupChat — N:N 에이전트 대화 관리자 |
| 차별점 | 대화(Conversation)를 에이전트 협력의 기본 단위로 정의 CrewAI: 역할 고정 / LangGraph: 그래프 구조 / AutoGen: 자유 대화 |
| Source | arXiv ↗ · GitHub ↗ · Docs ↗ |
CrewAI가 사전에 역할을 설계한 팀을 만든다면, AutoGen은 에이전트들이 자유롭게 대화하며 스스로 협력 방식을 만들어갑니다. Microsoft Research가 제시한 핵심 아이디어는 단순하지만 강력합니다 — "대화(conversation)가 바로 협력(collaboration)이다." 이 통찰이 LLM 시대의 팀워크를 재정의했습니다.
- 핵심 아이디어 — "대화 = 협력"
- ConversableAgent — 모든 에이전트의 기반
- 기본 패턴 — UserProxy ↔ AssistantAgent
- GroupChat — N:N 에이전트 토론
- Human-in-the-Loop 3가지 모드
- 벤치마크 성능
- 평가 — 강점과 한계
- 해양 산업 시사점
- Captain Paul의 결론 — 시리즈 마무리
📌 (1) 핵심 아이디어 — "대화 = 협력"
AutoGen 이전 프레임워크들은 에이전트 협력을 사전에 설계된 구조로 표현했습니다. CrewAI는 역할, LangGraph는 그래프. 하지만 AutoGen은 다른 길을 택했습니다.
사전 정의
역할 기반 팀
사전 설계
상태 그래프
자유 대화
동적 협력
"LLM 기반 에이전트들이 대화를 통해 서로 정보를 교환하고, 피드백을 주고받고, 코드를 실행하고 검증하는 자유로운 대화 루프가 복잡한 태스크를 해결하는 가장 자연스러운 방법이다."
⚙️ (2) ConversableAgent — 모든 에이전트의 기반
AutoGen의 모든 에이전트는 ConversableAgent를 상속합니다. 이 단일 기반 클래스가 "대화를 통한 협력"을 가능하게 합니다.
다른 에이전트와 대화 시작. 종료 조건까지 자동 반복.
수신한 메시지를 보고 다음 응답 생성. LLM 또는 함수로 구현.
특정 조건에서 실행할 커스텀 응답 함수 등록. 유연한 확장.
종료 메시지 감지. "TERMINATE" 키워드 또는 커스텀 함수.
🔄 (3) 기본 패턴 — UserProxy ↔ AssistantAgent
AutoGen의 가장 기본적이고 강력한 패턴입니다. 두 에이전트가 문제가 해결될 때까지 대화를 반복합니다.
def fib(n): ..."
사람(또는 자동화 스크립트)을 대표. 코드 실행 환경 보유. AssistantAgent가 제안한 코드를 샌드박스에서 실행하고 결과 반환. 인간 개입 모드 설정 가능.
LLM을 백엔드로 사용. 코드 작성, 계획 수립, 분석, 수정 등 지적 작업 담당. UserProxy의 코드 실행 결과를 보고 필요시 수정 버전 제공.
👥 (4) GroupChat — N:N 에이전트 토론
2인 대화를 넘어 N개의 에이전트가 함께 토론하는 GroupChat 패턴입니다. GroupChatManager가 대화 흐름을 조율합니다.
coder = AssistantAgent("Coder", system_message="코드 작성 전문가")
critic = AssistantAgent("Critic", system_message="버그·보안 취약점 탐지")
reviewer = AssistantAgent("Reviewer", system_message="코드 품질·가독성 평가")
tester = AssistantAgent("Tester", system_message="테스트 케이스 작성")
user = UserProxyAgent("User", code_execution_config={...})
groupchat = GroupChat(
agents=[user, coder, critic, reviewer, tester],
max_round=20
)
manager = GroupChatManager(groupchat=groupchat, llm_config=...)
🧑 (5) Human-in-the-Loop 3가지 모드
AutoGen의 독특한 강점 중 하나는 인간 참여 수준을 세밀하게 조절할 수 있다는 것입니다.
완전 자동화. 인간 개입 없이 에이전트끼리 끝까지 대화. 테스트·배치 환경에 적합.
에이전트가 완료 신호를 보낼 때만 사람 확인. 가장 많이 사용되는 균형 모드.
매 대화 턴마다 사람 승인 요청. 안전 임계 시스템, 민감한 작업에 적합.
📊 (6) 벤치마크 성능
✅ (7) 평가 — 강점과 한계
사전에 워크플로를 설계하지 않아도 됨. 에이전트들이 대화를 통해 스스로 접근 방식을 결정. 새로운 유형의 문제에 즉각 적응.
코드 생성 → 자동 실행 → 결과 반환 → 수정의 루프가 프레임워크 레벨에서 내장. 코딩·데이터 분석 태스크에서 특히 강력.
인간이 대화 도중 언제든 개입 가능. AI와 인간이 동일한 인터페이스로 협력. 점진적 자동화 전환에 이상적.
대화 흐름이 동적이므로 재현성이 낮음. 같은 입력에도 다른 대화 경로. 결정론적 결과가 필요한 시스템에는 부적합.
한 태스크에 수십~수백 번의 LLM 호출이 발생할 수 있음. max_round 제한 없이는 토큰 비용이 예측 불가. 종료 조건 설계 중요.
긴 대화에서 어느 에이전트가 어떤 결정을 내렸는지 추적이 복잡. LangGraph처럼 명시적 상태 로그가 없어 디버깅이 어려울 수 있음.
⚓ (8) 해양 산업 시사점
AutoGen의 "대화 중심 협력"은 해양 분야의 다부처·다전문가 협업 문제에 특히 적합합니다.
기관 고장 신호가 들어오면 — 진단 에이전트(증상 분석) ↔ 기술 매뉴얼 에이전트(관련 항목 검색) ↔ 안전 에이전트(위험도 평가) ↔ 정비 에이전트(조치 절차 제안)가 자유롭게 토론. 인간 기관장은 TERMINATE 모드로 최종 승인만 담당.
항만 국가 통제(PSC) 결함 발견 시 — 법률 해석 에이전트 ↔ 기술 조치 에이전트 ↔ 문서 작성 에이전트가 대화로 조치 계획 수립. 코드 실행 에이전트가 관련 데이터 자동 수집·집계. 수 시간의 수작업을 30분으로 단축 가능.
공격자 에이전트(취약점 탐색) ↔ 방어자 에이전트(대응책 제시) ↔ 감사자 에이전트(IACS E26 기준 검증)가 GroupChat으로 해양 시스템 침투 테스트 시뮬레이션. 인간 보안 전문가가 ALWAYS 모드로 매 라운드 검토.
🎯 (9) Captain Paul의 결론 — 시리즈 마무리
ReAct에서 출발한 이 여정은 Toolformer(도구 사용), MCP(표준 연결), AutoGPT(자율성), CrewAI(팀워크), LangGraph(정밀 제어), Generative Agents(사회성), AutoGen(대화 협력)으로 이어졌습니다.
결론: "AI는 도구에서 팀원으로, 팀원에서 사회 구성원으로 진화하고 있습니다."
해양 산업도 이 변화를 피할 수 없습니다. 아니, 오히려 IACS·IMO의 규제 프레임워크가 있기 때문에 신뢰할 수 있는 AI 도입에 가장 준비된 산업이 될 수 있습니다.
8편의 Agent AI 핵심 논문 리뷰를 완독해 주셔서 감사합니다. 다음 시리즈에서는 이 기술들을 해양 사이버보안 실무에 적용하는 구체적 사례를 다룹니다.
— Captain Paul —
Comments
Post a Comment