Skip to content

AutoGen: Multi-Agent Conversation Framework

Overview

AutoGen by Microsoft enables multi-agent systems through conversational patterns.

Agents communicate by sending messages to each other.


Creating Conversable Agents

from autogen import AssistantAgent, UserProxyAgent

class AutoGenTeam:
    """Build team using AutoGen"""

    def __init__(self):
        # Create agent powered by Claude
        self.researcher = AssistantAgent(
            name="Researcher",
            llm_config={
                "model": "claude-3-5-sonnet-20241022",
                "api_key": "YOUR_API_KEY"
            },
            system_message="You are a research expert"
        )

        # Create user proxy (represents human)
        self.user = UserProxyAgent(
            name="User",
            human_input_mode="TERMINATE",
            code_execution_config={"work_dir": "tmp"}
        )

    def run(self, task):
        """Run multi-agent conversation"""

        # Initiate conversation
        self.user.initiate_chat(
            self.researcher,
            message=task
        )

Tool Use & Code Execution

class AdvancedAutoGen:
    """Use tools and execute code"""

    def __init__(self):
        self.agent = AssistantAgent(
            name="CodeAgent",
            llm_config={"model": "claude-3-5-sonnet"},
            functions=[
                {
                    "name": "python",
                    "description": "Execute Python code"
                }
            ]
        )

Proxy Agents

Agent that Calls Another Agent

class AgentProxy:
    """Agent that manages other agents"""

    def __init__(self):
        self.agent_a = AssistantAgent(name="Agent A")
        self.agent_b = AssistantAgent(name="Agent B")

3 Warnings ⚠️

Warning 1: Conversation Explosion

# ❌ WRONG
# Agents keep messaging each other
# Conversation never ends
# Uses tons of tokens

# ✅ RIGHT
# Set max iterations
max_consecutive_auto_reply=3

Warning 2: Deadlocks

# ❌ WRONG
# Agent A waiting for Agent B
# Agent B waiting for Agent A
# Deadlock!

# ✅ RIGHT
# Clear termination conditions

Warning 3: Cost Spiraling

# ❌ WRONG
# Long conversations = high cost

# ✅ RIGHT
# Monitor token usage
# Set budgets

Last Updated: August 9, 2026