Partilhar via


Microsoft Agent Framework

O Agent Framework oferece duas categorias principais de recursos:

Description
Agentes Agentes individuais que utilizam LLMs para processar entradas, invocar ferramentas e servidores MCP, e gerar respostas. Suporta Microsoft Foundry, Anthropic, Azure OpenAI, OpenAI, Ollama e mais.
Fluxos de trabalho Fluxos de trabalho baseados em grafos que ligam agentes e funções para tarefas em múltiplos passos com encaminhamento seguro por tipos, checkpointing e suporte de humano no ciclo.

O framework também fornece blocos de construção fundamentais, incluindo clientes modelo (completões e respostas de chat), uma sessão de agente para gestão de estados, fornecedores de contexto para memória de agentes, middleware para interceção de ações de agentes e clientes MCP para integração de ferramentas. Juntos, esses componentes oferecem a flexibilidade e o poder para criar aplicativos de IA interativos, robustos e seguros.

Introdução

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

AIAgent agent = new AIProjectClient(
        new Uri("https://your-foundry-service.services.ai.azure.com/api/projects/your-foundry-project"),
        new AzureCliCredential())
    .AsAIAgent(
        model: "gpt-5.4-mini",
        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
    from agent_framework.foundry import FoundryChatClient
    from azure.identity import AzureCliCredential

    credential = AzureCliCredential()
    client = FoundryChatClient(
        project_endpoint="https://your-foundry-service.services.ai.azure.com/api/projects/your-foundry-project",
        model="gpt-5.4-mini",
        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}")

É só isso — um agente que liga para um LLM e devolve uma resposta. A partir daqui, pode adicionar ferramentas, conversações multi-turno, middleware e fluxos de trabalho para construir aplicações de produção.

Observação

O Agent Framework não carrega .env automaticamente ficheiros. Para usar um .env ficheiro, chame load_dotenv() no início da sua aplicação ou defina variáveis de ambiente diretamente no seu shell ou IDE.

Quando usar agentes vs fluxos de trabalho

Usa um agente quando... Usa um fluxo de trabalho quando...
A tarefa é aberta ou conversacional O processo tem etapas bem definidas
Precisa de utilização autónoma de ferramentas e planeamento É necessário controlo explícito sobre a ordem de execução
Uma única invocação de LLM (possivelmente com ferramentas) basta Múltiplos agentes ou funções devem coordenar-se

Se conseguires escrever uma função para tratar da tarefa, faz isso em vez de usares um agente de IA.

Porquê o Agent Framework?

O Agent Framework combina as abstrações simples de agentes da AutoGen com as funcionalidades empresariais do Kernel Semântico — gestão de estado baseada em sessões, segurança de tipos, middleware, telemetria — e adiciona fluxos de trabalho baseados em grafos para orquestração explícita de múltiplos agentes.

Kernel Semântico e AutoGen foram pioneiros nos conceitos de agentes de IA e orquestração multi-agente. O Agent Framework é o sucessor direto, criado pelas mesmas equipes. Combina as abstrações simples da AutoGen para padrões de agente único e multiagente com as funcionalidades empresariais da Kernel Semântico, como gestão de estado baseada em sessões, segurança de tipos, filtros, telemetria e amplo suporte de modelos e embedding. Além de mesclar os dois, o Agent Framework introduz fluxos de trabalho que dão aos desenvolvedores controle explícito sobre caminhos de execução de vários agentes, além de um sistema de gerenciamento de estado robusto para cenários de longa execução e human-in-the-loop. Em suma, o Agent Framework é a próxima geração tanto do Kernel Semântico como do AutoGen.

Para saber mais sobre migração a partir da Kernel Semântico ou da AutoGen, consulte o Guia de Migração da Kernel Semântico e o Guia de Migração da AutoGen.

Tanto o Kernel Semântico como a AutoGen beneficiaram significativamente da comunidade open-source, e o mesmo se espera do Agent Framework. O Microsoft Agent Framework acolhe contribuições e continuará a melhorar com novas funcionalidades e capacidades.

Importante

Se usar o Microsoft Agent Framework para construir aplicações que operam com quaisquer servidores, agentes, códigos ou modelos não-Azure Direct ("Sistemas de Terceiros"), faz isso por sua conta e risco. Os Sistemas de Terceiros são Produtos Não Microsoft ao abrigo dos Termos do Produto Microsoft e são regidos pelos seus próprios termos de licença de terceiros. Você é responsável por qualquer uso e custos associados.

Recomendamos rever todos os dados partilhados e recebidos de Sistemas de Terceiros e estar atento às práticas de terceiros para o manuseamento, partilha, retenção e localização dos dados. É sua responsabilidade gerir se os seus dados irão fluir para além da conformidade com o Azure e dos limites geográficos da sua organização e quaisquer implicações relacionadas, bem como garantir que as permissões, limites e aprovações apropriadas sejam providenciadas.

É responsável por rever e testar cuidadosamente as aplicações que constrói usando o Microsoft Agent Framework no contexto dos seus casos de uso específicos, bem como por tomar todas as decisões e personalizações apropriadas. Isto inclui implementar as suas próprias mitigações responsáveis de IA, como metaprompt, filtros de conteúdo ou outros sistemas de segurança, e garantir que as suas aplicações cumprem os padrões adequados de qualidade, fiabilidade, segurança e confiança. Ver também: FAQ sobre Transparência

Próximos passos

Vai mais fundo: