Condividi tramite


Microsoft Agent Framework

Agent Framework offre due categorie principali di funzionalità:

Descrzione
Agenti Singoli agenti che usano LLM per elaborare input, chiamare strumenti e server MCP e generare risposte. Supporta Azure OpenAI, OpenAI, Anthropic, Ollama e altro ancora.
Workflow Flussi di lavoro basati su grafo che connettono agenti e funzioni per attività in più passaggi con routing sicuro per tipo, checkpoint e supporto con intervento umano.

Il framework fornisce anche blocchi predefiniti fondamentali, inclusi i client del modello (completamenti e risposte della chat), una sessione agente per la gestione dello stato, i provider di contesto per la memoria dell'agente, il middleware per l'intercettazione delle azioni dell'agente e i client MCP per l'integrazione degli strumenti. Insieme, questi componenti offrono flessibilità e potenza per creare applicazioni interattive, affidabili e sicure per l'intelligenza artificiale.

Inizia subito

dotnet add package Azure.AI.OpenAI --prerelease
dotnet add package Azure.Identity
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
using System;
using Azure.AI.OpenAI;
using Azure.Identity;
using Microsoft.Agents.AI;

AIAgent agent = new AzureOpenAIClient(
        new Uri(Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT")!),
        new AzureCliCredential())
    .GetChatClient("gpt-4o-mini")
    .AsAIAgent(instructions: "You are a friendly assistant. Keep your answers brief.");

Console.WriteLine(await agent.RunAsync("What is the largest city in France?"));
pip install agent-framework --pre
    credential = AzureCliCredential()
    client = AzureOpenAIResponsesClient(
        project_endpoint=os.environ["AZURE_AI_PROJECT_ENDPOINT"],
        deployment_name=os.environ["AZURE_OPENAI_RESPONSES_DEPLOYMENT_NAME"],
        credential=credential,
    )

    agent = client.as_agent(
        name="HelloAgent",
        instructions="You are a friendly assistant. Keep your answers brief.",
    )
    # Non-streaming: get the complete response at once
    result = await agent.run("What is the largest city in France?")
    print(f"Agent: {result}")

Si tratta di un agente che chiama un LLM e restituisce una risposta. Da qui è possibile aggiungere strumenti, conversazioni a più turni, middleware e flussi di lavoro per creare applicazioni di produzione.

Quando usare agenti e flussi di lavoro

Usa un agente quando... Usare un flusso di lavoro quando...
L'attività è aperta e senza limiti o conversazionale. Il processo prevede passaggi ben definiti
È necessario usare e pianificare strumenti autonomi È necessario un controllo esplicito sull'ordine di esecuzione
È sufficiente una singola chiamata LLM (possibilmente con strumenti) Più agenti o funzioni devono coordinare

Se è possibile scrivere una funzione per gestire l'attività, eseguire questa operazione anziché usare un agente di intelligenza artificiale.

Perché Agent Framework?

Agent Framework combina le astrazioni degli agenti semplici di AutoGen con le funzionalità aziendali del kernel semantico, ovvero la gestione dello stato basata su sessione, la sicurezza dei tipi, il middleware, i dati di telemetria e aggiunge flussi di lavoro basati su grafo per l'orchestrazione esplicita multi-agente.

Kernel semantico e AutoGen hanno introdotto i concetti degli agenti di intelligenza artificiale e dell'orchestrazione multi-agente. Agent Framework è il successore diretto, creato dagli stessi team. Combina le astrazioni semplici di AutoGen per modelli a agente singolo e multi-agente con le funzionalità di livello aziendale del kernel semantico, ad esempio la gestione dello stato basata su sessione, la sicurezza dei tipi, i filtri, i dati di telemetria e il supporto completo di modelli e incorporamenti. Oltre all'unione dei due, Agent Framework introduce flussi di lavoro che offrono agli sviluppatori il controllo esplicito sui percorsi di esecuzione multi-agente, oltre a un solido sistema di gestione dello stato per scenari a esecuzione prolungata e human-in-the-loop. In breve, Agent Framework è la prossima generazione di Kernel Semantico e AutoGen.

Per altre informazioni sulla migrazione da Semantic Kernel o AutoGen, vedere guida alla migrazione dal kernel semantico e guida alla migrazione da AutoGen.

Sia il kernel semantico che l'autogen hanno beneficiato in modo significativo della community open source e lo stesso è previsto per Agent Framework. Microsoft Agent Framework accoglie i contributi e continuerà a migliorare con nuove funzionalità e funzionalità.

Annotazioni

Microsoft Agent Framework è attualmente disponibile in anteprima pubblica. Inviare commenti e suggerimenti o problemi nel repository GitHub.

Importante

Se si usa Microsoft Agent Framework per creare applicazioni che operano con server o agenti di terze parti, è possibile farlo a proprio rischio. È consigliabile esaminare tutti i dati condivisi con server o agenti di terze parti e riconoscere le procedure di terze parti per la conservazione e la posizione dei dati. È responsabilità dell'utente gestire se i dati verranno trasmessi al di fuori dei limiti geografici e di conformità di Azure dell'organizzazione e di eventuali implicazioni correlate.

Passaggi successivi

Approfondimento: