====== AutoGen Studio ======
**AutoGen Studio** is Microsoft's low-code visual interface for building, testing, and deploying multi-agent AI workflows. Built on top of the [[https://github.com/microsoft/autogen|AutoGen framework]] (AgentChat), it provides a drag-and-drop environment where developers and non-developers alike can compose agent teams, assign tools and skills, and orchestrate complex multi-step conversations — all without writing extensive code. It serves as both a rapid prototyping tool and a gateway to production deployment via Docker and Azure.
===== What Is AutoGen Studio? =====
AutoGen Studio is a web-based application that sits on top of Microsoft's AutoGen framework. While AutoGen itself is a Python library for programmatic multi-agent orchestration, AutoGen Studio provides:
* A **visual workflow builder** for composing agent teams
* A **gallery of pre-built agents** with configurable roles and capabilities
* **Real-time testing** with visibility into agent "inner monologues"
* **Profiling data** showing tool usage, token costs, and code execution outcomes
* **Export capabilities** for deploying workflows as JSON, Python apps, or Docker containers
It is built on AutoGen AgentChat, the high-level API for multi-agent applications, and leverages AutoGen's asynchronous, event-driven architecture (v0.4+).
===== Visual Workflow Builder =====
The Studio's **Build** section provides a WYSIWYG interface for composing agent teams:
* **Drag-and-Drop** — Select agents from the gallery and arrange them into teams
* **Agent Configuration** — Assign foundation models (GPT-4o, Azure OpenAI, local models), system prompts, and tools
* **Workflow Types** — Choose between sequential execution (predefined order) or autonomous chat (LLM-driven agent selection)
* **Skills Assignment** — Attach Python functions as tools (weather APIs, database queries, web search, etc.)
* **Team Composition** — Build hierarchical or flat agent topologies for different task types
===== Team Types =====
AutoGen Studio supports the group chat patterns from AutoGen AgentChat:
* **RoundRobinGroupChat** — Agents take turns in a fixed sequential order. Each agent processes the conversation and contributes its perspective before passing to the next.
* **SelectorGroupChat** — An LLM or custom logic dynamically selects which agent should respond next based on the current conversation state and task requirements.
* **Custom Workflows** — Define arbitrary agent interaction patterns with conditional routing and branching logic.
===== Gallery of Pre-Built Agents =====
The Studio includes a library of pre-configured agents for common tasks:
* **Coder** — Writes and debugs code based on specifications
* **Planner** — Decomposes complex tasks into subtasks
* **Critic** — Reviews and provides feedback on outputs
* **Researcher** — Gathers information from tools and APIs
* **Custom Agents** — Create new agents with specific roles, prompts, and tool access
Users can share and reuse agents, skills, and complete workflow configurations across projects.
===== Skills and Tools Management =====
Skills in AutoGen Studio are Python functions registered as tools:
* Define functions with docstrings for LLM understanding
* Register skills through the visual interface
* Agents invoke skills conditionally based on task needs
* Results feed back into prompts and agent memory
* Secure execution via Docker containers prevents untrusted code from affecting the host
===== Deployment Options =====
AutoGen Studio workflows can be deployed through multiple channels:
* **JSON Export** — Save workflows as JSON for loading into Python apps
* **Command-Line API** — Run workflows from scripts and CI/CD pipelines
* **Docker Containers** — Package for Azure Container Apps, Web Apps, or Kubernetes
* **Azure Integration** — Native connectors for Azure OpenAI, Dynamics 365, and Azure DevOps
* **GitHub Actions** — Integrate into CI/CD workflows for automated agent tasks
===== Installation and Usage =====
# Install AutoGen Studio
# pip install autogenstudio
# Launch the web interface
# autogenstudio ui --port 8081
# Alternatively, use AutoGen programmatically with the same team patterns
from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.teams import RoundRobinGroupChat
from autogen_agentchat.conditions import TextMentionTermination
from autogen_ext.models.openai import OpenAIChatCompletionClient
# Define agents
planner = AssistantAgent(
name="Planner",
model_client=OpenAIChatCompletionClient(model="gpt-4o"),
system_message="You break down complex tasks into steps.",
)
coder = AssistantAgent(
name="Coder",
model_client=OpenAIChatCompletionClient(model="gpt-4o"),
system_message="You write Python code to implement the plan.",
)
reviewer = AssistantAgent(
name="Reviewer",
model_client=OpenAIChatCompletionClient(model="gpt-4o"),
system_message="You review code for bugs and suggest improvements. Say APPROVE when done.",
)
# Create a team with round-robin orchestration
termination = TextMentionTermination("APPROVE")
team = RoundRobinGroupChat(
participants=[planner, coder, reviewer],
termination_condition=termination,
)
# Run the team on a task
import asyncio
async def main():
result = await team.run(
task="Create a Python function that calculates compound interest."
)
print(result)
asyncio.run(main())
===== Architecture Diagram =====
graph TD
A["AutoGen Studio (Web UI)"] --> B["Build Section"]
A --> C["Test Runner"]
A --> D["Deploy / Export"]
B --> E["AutoGen AgentChat Framework"]
C --> E
D --> E
E --> F["Agents Library"]
E --> G["Teams (Groups)"]
E --> H["Tools Registry"]
F --> I["LLM Providers (Azure OpenAI / OpenAI / Local)"]
G --> I
H --> I
===== Current Status =====
AutoGen Studio is under active development as part of the broader AutoGen ecosystem. Key points:
* Built on AutoGen v0.4+ with async, event-driven architecture
* Positioned as a **prototyping-to-deployment** tool, not just a research prototype
* Part of Microsoft's Agent Framework unification strategy
* Integrates with Azure AI services for enterprise deployment
* Open-source under MIT license
===== References =====
* [[https://github.com/microsoft/autogen|AutoGen GitHub Repository]]
* [[https://microsoft.github.io/autogen/|AutoGen Documentation]]
* [[https://www.microsoft.com/en-us/research/blog/introducing-autogen-studio-a-low-code-interface-for-building-multi-agent-workflows/|Microsoft Research: Introducing AutoGen Studio]]
* [[https://autogen-studio.com/|AutoGen Studio Website]]
===== See Also =====
* [[swarm_openai|OpenAI Swarm]] — Lightweight multi-agent orchestration framework
* [[composio|Composio]] — Tool integration platform for agents
* [[e2b|E2B]] — Sandboxed code execution for agent workflows
* [[modal_compute|Modal]] — Serverless compute for agent deployment