Skip to content

A framework for building, orchestrating and deploying AI agents and multi-agent workflows with support for Python and .NET.

License

Notifications You must be signed in to change notification settings

luisquintanilla/agent-framework

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Microsoft Agent Framework

Welcome to Microsoft Agent Framework!

Microsoft Azure AI Foundry Discord MS Learn Documentation PyPI NuGet

Welcome to Microsoft's comprehensive multi-language framework for building, orchestrating, and deploying AI agents with support for both .NET and Python implementations. This framework provides everything from simple chat agents to complex multi-agent workflows with graph-based orchestration.

Watch the full Agent Framework introduction (30 min)

Watch the full Agent Framework introduction (30 min)

πŸ“‹ Getting Started

πŸ“¦ Installation

Python

# This will install all sub-packages, see `python/packages` for individual packages
pip install agent-framework

.NET

dotnet add package Microsoft.Agents.AI

πŸ“š Documentation

✨ Highlights

  • Graph-based Workflows: Connect agents and deterministic functions using data flows with streaming, checkpointing, human-in-the-loop, and time-travel capabilities
  • AF Labs: Experimental packages for cutting-edge features including benchmarking, reinforcement learning, and research initiatives
  • DevUI: Interactive developer UI for agent development, testing, and debugging workflows

See the DevUI in action

See the DevUI in action (1 min)

πŸ’¬ We want your feedback!

Quickstart

Basic Agent - Python

Create a simple Azure Responses Agent that writes a haiku about the Microsoft Agent Framework

# pip install agent-framework
# Use `az login` to authenticate with Azure CLI
import asyncio
from agent_framework.azure import AzureOpenAIResponsesClient
from azure.identity import AzureCliCredential

async def main():
  # Initialize a chat agent with basic instructions
  agent = AzureOpenAIResponsesClient(credential=AzureCliCredential()).create_agent(
    name="HaikuBot",
    instructions="You are an upbeat assistant that writes beautifully.",
  )

  print(await agent.run("Write a haiku about Microsoft Agent Framework."))

asyncio.run(main())

Basic Agent - .NET

// dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
// dotnet add package Azure.AI.OpenAI
// dotnet add package Azure.Identity
// Use `az login` to authenticate with Azure CLI
using System;
using Azure.AI.OpenAI;
using Azure.Identity;
using Microsoft.Agents.AI;
using OpenAI;

var endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT")!;
var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME")!;

var agent = new AzureOpenAIClient(new Uri(endpoint), new AzureCliCredential())
    .GetOpenAIResponseClient(deploymentName)
    .CreateAIAgent(name: "HaikuBot", instructions: "You are an upbeat assistant that writes beautifully.");

Console.WriteLine(await agent.RunAsync("Write a haiku about Microsoft Agent Framework."));

More Examples & Samples

Python

.NET

Contributor Resources

About

A framework for building, orchestrating and deploying AI agents and multi-agent workflows with support for Python and .NET.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 50.5%
  • C# 43.9%
  • TypeScript 4.8%
  • HTML 0.6%
  • PowerShell 0.1%
  • CSS 0.1%