AutoGen 소개

AutoGen 소개

AutoGen은 마이크로소프트가 만든, AI 에이전트와 멀티에이전트 애플리케이션을 만들기 위한 오픈소스 프레임워크예요. 그중에서도 AgentChat은 멀티에이전트 애플리케이션을 비교적 쉽게 만들 수 있게 해 주는 고수준(high-level) API인데요, autogen-core 패키지 위에 쌓여 있어요. 처음 시작하는 분에게는 AgentChat이 가장 추천되는 출발점이고, 더 정밀하게 제어하고 싶은 분에게는 autogen-core의 이벤트 기반 프로그래밍 모델이 더 많은 유연성을 줘요.

AgentChat은 직관적인 기본값을 제공해요 — 미리 짜여진 동작을 가진 Agents(에이전트) 와 미리 정의된 멀티에이전트 설계 패턴을 가진 Teams(팀) 이 그것이에요. 한편 AutoGen Core는 분산형 멀티에이전트 시스템을 만들기 위한 이벤트 기반 프로그래밍 프레임워크로, 비즈니스 프로세스의 결정적·동적 에이전트 워크플로, 멀티에이전트 협업 연구, 다국어 애플리케이션의 분산 에이전트 같은 시나리오에 쓰여요.

출처: 공식 문서 - AgentChat User Guide

AutoGen의 레이어

AutoGen은 크게 네 가지 레이어로 구성돼 있어요.

  • AgentChat — 대화형 단일·멀티에이전트 애플리케이션을 만들기 위한 프로그래밍 프레임워크예요. Core 위에 구축되며 Python 3.10+이 필요해요. 처음 프로토타이핑을 시작하는 분에게 추천돼요.
# pip install -U "autogen-agentchat" "autogen-ext[openai]"
import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient

async def main() -> None:
    agent = AssistantAgent("assistant", OpenAIChatCompletionClient(model="gpt-4o"))
    print(await agent.run(task="Say 'Hello World!'"))

asyncio.run(main())
  • Core — 확장 가능한 멀티에이전트 AI 시스템을 만들기 위한 이벤트 기반 프로그래밍 프레임워크예요. 분산형 에이전트나 고도로 유연한 워크플로가 필요할 때 사용해요.
  • Extensions — Core와 AgentChat 컴포넌트가 외부 서비스나 다른 라이브러리와 연동되도록 하는 구현 모음이에요. MCP 서버를 쓰는 McpWorkbench, OpenAI Assistant API를 쓰는 OpenAIAssistantAgent, Docker 안에서 모델 생성 코드를 실행하는 DockerCommandLineCodeExecutor, 분산 에이전트를 위한 GrpcWorkerAgentRuntime 등이 내장 확장이에요.
  • Studio — 코드 없이 에이전트를 프로토타이핑할 수 있는 웹 UI 도구예요. pip install -U autogenstudioautogenstudio ui --port 8080 --appdir ./myapp으로 실행해요.

AgentChat 둘러보기

  • Quickstart — 첫 에이전트를 만들어 보는 시작 가이드예요.
  • Tutorial — 에이전트, 팀, 메시지, 모델, 휴먼 인 더 루프, 종료 조건, 상태 등 AgentChat 사용법을 단계별로 배워요.
  • Custom Agents — 사용자 지정 동작을 가진 나만의 에이전트를 만들어요.
  • Selector Group Chat / Swarm / GraphFlow — 공유 컨텍스트와 셀렉터 기반 조정, 로컬 도구 기반 조정, 방향 그래프 기반 멀티에이전트 워크플로 같은 고급 패턴이에요.
  • Migration Guide — AutoGen 0.2.x에서 0.4.x로 마이그레이션하는 방법이에요.

더 알아보기 (Learn more)