AutoGen Studio 2.0
-
Techradar
Assess
-
Recommendation
Continue with assessment
Overview
AutoGen Studio 2.0 by Microsoft is an advanced AI development tool designed to streamline the creation and management of AI agents and workflows. It offers a user-friendly interface with sections for building AI agents, testing their behavior, and storing development sessions. The platform integrates with language models like OpenAI, Azure and Claude through API keys and provides a Python API for detailed workflow control. Suitable for both novice and expert developers, AutoGen Studio 2.0 is a versatile solution in the realm of AI innovation.
Prerequisites
-
Python 3.11
: AutoGen Studio UI 2.0 is designed to run onPython 3.11
. Installing this specific version is essential to ensure compatibility and optimal performance. If you have more than one version of Python installed, you can easily switch between them usingpyenv
. -
LLM Providers and API Keys: To access the capabilities of LLMs, you’ll need an API key. either an
OPENAI_API_KEY
or anAZURE_OPENAI_API_KEY
. These keys serve as your access pass to the language models provided by OpenAI or Azure.
Setup
Create a .env
file with API keys:
Installation
Install AutoGen Studio Package:
If using poetry
, you may need to update dependencies in pyproject.toml
:
Launch
-
Start user interface by typing in your terminal:
-
Access AutoGen Studio
Using your preferred browser, navigate to
http://localhost:8081/
. This is the URL where AutoGen Studio is running.You should see something like this:
AutoGen Studio Features
Build Section
The build section allows you to create skills, agents and workflows, as well as define models. Each section should come populated with some examples to give an idea how to create your own.
Skills
Skills are custom python functions that can be leveraged by agents.
Models
Models represent configurations of large language models (LLM). Like skills, models can be linked to an agent specification. AutoGen Studio supports various model types, including OpenAI models, Azure OpenAI models, and Gemini models, as well as any other model provider that adheres to the OpenAI endpoint specification.
Agents
Agents specify properties for an AutoGen agent, like System Message
, Temperature
, Max Tokens
, Agent Default Auto Reply
, as well as which models and skills the agent can use. Currently UserProxyAgent
and AssistantAgent
and GroupChat
agent abstractions are supported:
After Choosing an agent type, you can specify its properties:
Workflows
An agent workflow defines how a team of agents collaborates to complete a task. AutoGen Studio supports two primary workflow patterns:
-
Autonomous Chat
This workflow involves initiating a conversation between agents to accomplish a task. In AutoGen Studio, you define an initiator agent and a receiver agent, with the receiver selected from a list of previously created agents. If the receiver is a GroupChat agent (containing multiple agents), the communication pattern among those agents is controlled by the
speaker_selection_method
parameter in the GroupChat agent configuration. -
Sequential Chat
In this workflow, users specify a list of
AssistantAgent
agents that execute sequentially to complete a task. During runtime, eachAssistantAgent
is paired with aUserProxyAgent
and engages in a chat to process the input task. The result of each exchange is summarized and passed to the nextAssistantAgent
in the sequence, along with itsUserProxyAgent
. This process continues until the finalAssistantAgent
in the sequence completes the task.
Playground
Using playground, users can interactively test workflows on tasks and review resulting artifacts (such as images, code, and documents)
Example
-
Configure a model (in this case Azure OpenAI) to be used by our agents:
-
After configuring a model with our API key, we can now define agents:
and assign models to them:
Now we'll tell the agent what other agents it can communicate with:
-
It's time to link everything up in a workflow:
-
We now go to the playground tab and create a session with the new workflow:
-
Now we are ready to test our workflow: