Compartir a través de


Microsoft Agent Framework

Agent Framework ofrece dos categorías principales de funcionalidades:

Description
Agentes Agentes individuales que usan LLMs para procesar entradas, llamar a herramientas y servidores MCP y generar respuestas. Admite Azure OpenAI, OpenAI, Anthropic, Ollama y más.
Flujos de trabajo Flujos de trabajo basados en grafos que conectan agentes y funciones para tareas de varios pasos con enrutamiento seguro de tipos, puntos de control y compatibilidad humana en bucle.

El marco también proporciona bloques de construcción fundamentales, incluidos los clientes de modelo (completaciones de chat y respuestas), una sesión del agente para la administración de estado, proveedores de contexto para la memoria del agente, middleware para interceptar acciones del agente y clientes MCP para la integración de herramientas. Juntos, estos componentes proporcionan la flexibilidad y la eficacia para crear aplicaciones de inteligencia artificial interactivas, sólidas y seguras.

Comienza

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}")

Eso es todo — un agente que llama a un LLM y devuelve una respuesta. Desde aquí puede agregar herramientas, conversaciones multiturno, middleware y flujos de trabajo para desarrollar aplicaciones de producción.

Cuándo usar agentes frente a flujos de trabajo

Use un agente cuando... Use un flujo de trabajo cuando...
La tarea es abierta y fomenta el diálogo. El proceso tiene pasos bien definidos
Necesita usar herramientas autónomas y planificarlas. Necesita un control explícito sobre el orden de ejecución.
Basta una sola llamada LLM (posiblemente con herramientas) Varios agentes o funciones deben coordinarse

Si puede escribir una función para controlar la tarea, hála en lugar de usar un agente de IA.

¿Por qué Agent Framework?

Agent Framework combina las abstracciones de agente simples de AutoGen con las características empresariales del kernel semántico ( administración de estado basada en sesión, seguridad de tipos, middleware, telemetría) y agrega flujos de trabajo basados en grafos para la orquestación explícita de varios agentes.

El kernel semántico y AutoGen han sido pioneros en los conceptos de agentes de inteligencia artificial y orquestación multiagente. Agent Framework es el sucesor directo, creado por los mismos equipos. Combina las simples abstracciones de AutoGen para patrones de un solo agente y multiagente con las características de nivel empresarial del Semantic Kernel, como la gestión de estado basada en sesiones, la seguridad de tipos, los filtrados, la telemetría y la compatibilidad con modelos extensos y soporte para incrustaciones. Además de combinar los dos, Agent Framework presenta flujos de trabajo que proporcionan a los desarrolladores un control explícito sobre las rutas de ejecución de varios agentes, además de un sistema de administración de estado sólido para escenarios de ejecución prolongada y humanos en bucle. En resumen, Agent Framework es la próxima generación de Kernel semántico y AutoGen.

Para obtener más información sobre la migración desde kernel semántico o AutoGen, consulte la Guía de migración del kernel semántico y la Guía de migración de AutoGen.

Tanto el kernel semántico como AutoGen se han beneficiado significativamente de la comunidad de código abierto y se espera lo mismo para Agent Framework. Microsoft Agent Framework da la bienvenida a las contribuciones y seguirá mejorando con nuevas características y funcionalidades.

Nota:

Microsoft Agent Framework se encuentra actualmente en versión preliminar pública. Envíe sus comentarios o problemas en el repositorio de GitHub.

Importante

Si usa Microsoft Agent Framework para compilar aplicaciones que operan con servidores o agentes de terceros, lo hace en su propio riesgo. Se recomienda revisar todos los datos que se comparten con servidores o agentes de terceros y ser conscientes de las prácticas de terceros para la retención y la ubicación de los datos. Es su responsabilidad controlar si sus datos circularán fuera de las normativas de Azure y los límites geográficos de su organización, así como cualquier implicación relacionada.

Pasos siguientes

Vaya más profundamente: