## Building Swarm-based agents with AG2

Warning

As of version 0.9, we have merged the experimental Swarm functionality into the core framework, creating a new way to run group (multi-agent) chats. The new group chat contains all of the functionality available in Swarm (and more).

Updating to the new group chat from your Swarm code is straightforward, see [this guide](https://docs.ag2.ai/0.9.8/docs/user-guide/advanced-concepts/orchestration/swarm/deprecation) on how to do it.

The Swarm code has now been deprecated but will still function with some minor changes. See [this guide](https://docs.ag2.ai/0.9.8/docs/user-guide/advanced-concepts/orchestration/swarm/deprecation) to update your current Swarm code to work with v0.9 and up. We would advise updating your code to work with the new group chat with the Swarm code being deprecated.

AG2 now provides an implementation of the swarm orchestration from OpenAI's [Swarm](https://github.com/openai/swarm) framework, with some additional features!

## Introducing CaptainAgent for Adaptive Team Building

**TL;DR** - We introduce CaptainAgent, an agent equipped with the capability to adaptively assemble a team of agents through retrieval-selection-generation process to handle complex tasks via the [`nested chat`](https://docs.ag2.ai/0.9/docs/user-guide/advanced-concepts/orchestration/orchestrations) conversation pattern in AG2. - CaptainAgent supports all types of `ConversableAgents` implemented in AG2.

## AgentOps, the Best Tool for AutoGen Agent Observability

### TL;DR

- AutoGen® offers detailed multi-agent observability with AgentOps.
- AgentOps offers the best experience for developers building with AutoGen in just two lines of code.
- Enterprises can now trust AutoGen in production with detailed monitoring and logging from AgentOps.

AgentOps provides developers observability for debugging and detecting failures. It provides the tools to monitor all the key metrics your agents use in one easy-to-read dashboard.

## Enhanced Support for Non-OpenAI Models

### TL;DR

- **AutoGen has expanded integrations with a variety of cloud-based model providers beyond OpenAI.**
- **Leverage models and platforms from Gemini, Anthropic, Mistral AI, Together.AI, and Groq for your AutoGen agents.**
- **Utilise models specifically for chat, language, image, and coding.**

In addition to the recently released AutoGen [Google Gemini](https://ai.google.dev/) client, new client classes for [Mistral AI](https://mistral.ai/), [Anthropic](https://www.anthropic.com/), [Together.AI](https://www.together.ai/), and [Groq](https://groq.com/) enable you to utilize over 75 different large language models in your AutoGen agent workflow.

## AgentEval: A Developer Tool to Assess Utility of LLM-powered Applications

_TL;DR:_ As a developer, how can you assess the utility and effectiveness of an LLM-powered application in helping end users with their tasks? To shed light on the question, we previously introduced [`AgentEval`](https://docs.ag2.ai/latest/docs/blog/2023/11/20/AgentEval/index) — a framework to assess the multi-dimensional utility of any LLM-powered application crafted to assist users in specific tasks.

## Agents in AutoGen

**TL;DR** - **AutoGen agents unify different agent definitions.**

This blog collects my thoughts on the definitions of agents and the pros and cons of multi vs. single agents.

## AutoDefense - Defend against jailbreak attacks with AutoGen

### TL;DR

- We propose **AutoDefense**, a multi-agent defense framework using AutoGen to protect LLMs from jailbreak attacks.

## What's New in AutoGen?

**TL;DR** - **AutoGen has received tremendous interest and recognition.**

Five months have passed since the initial spinoff of AutoGen from [FLAML](https://github.com/microsoft/FLAML). What have we learned since then? What are the milestones achieved? What's next?

## StateFlow - Build State-Driven Workflows with Customized Speaker Selection in GroupChat

**TL;DR:** Introduce Stateflow, a task-solving paradigm that conceptualizes complex task-solving processes backed by LLMs as state machines. Introduce how to use GroupChat to realize such an idea with a customized speaker selection function.

### Introduction

In this paper, we propose **StateFlow**, a novel LLM-based task-solving paradigm that conceptualizes complex task-solving processes as state machines. In **StateFlow**, we distinguish between "process grounding" (via state and state transitions) and "sub-task solving" (through actions within a state), enhancing control and interpretability of the task-solving procedure.

## FSM Group Chat -- User-specified agent transitions

### TL;DR

Recently, FSM Group Chat is released that allows the user to input a transition graph to constrain agent transitions.
