Migración de Semantic Kernel y AutoGen a Microsoft Agent Framework Release Candidate

Migración de proyectos Semantic Kernel y AutoGen a Microsoft Agent Framework

Microsoft Agent Framework: un nuevo estándar para agentes inteligentes

Microsoft Agent Framework ha alcanzado el estado de Release Candidate (RC) tanto para .NET como para Python, marcando un hito significativo en el desarrollo de agentes inteligentes y aplicaciones basadas en IA. Este framework reemplaza y amplía las capacidades de los proyectos basados en Semantic Kernel y AutoGen, ofreciendo una API estable y todas las funcionalidades previstas para la versión 1.0.

La migración a Microsoft Agent Framework es esencial para garantizar compatibilidad futura y aprovechar las mejoras en la gestión de agentes, integración con modelos de IA y soporte para pipelines conversacionales avanzados.

Note: El estado RC indica que la API está estabilizada y lista para producción, aunque aún pueden surgir ajustes menores antes del lanzamiento general (GA).

Principales cambios en la arquitectura

De Semantic Kernel a Microsoft Agent Framework

Semantic Kernel se centraba en la orquestación de modelos de lenguaje y la integración con servicios externos. Microsoft Agent Framework amplía este enfoque al introducir una arquitectura más modular y escalable para agentes inteligentes, con soporte nativo para:

  • Gestión de estado de agentes: Los agentes ahora pueden mantener estados persistentes entre interacciones.
  • Integración ampliada: Soporte para más servicios Azure, como Azure Cognitive Services y Azure OpenAI.
  • Pipeline de ejecución: Una estructura más robusta para manejar tareas asincrónicas y dependencias.

Compatibilidad con AutoGen

AutoGen, diseñado para la generación automática de prompts y orquestación de modelos, se integra directamente en Microsoft Agent Framework como parte de su núcleo funcional. Esto simplifica la transición para proyectos existentes.

Warning: Aunque la mayoría de las funcionalidades de AutoGen están soportadas, algunos métodos específicos podrían requerir ajustes. Revise la documentación oficial antes de migrar.

Preparación para la migración

Antes de comenzar la migración, asegúrate de:

  1. Actualizar tus dependencias: Instala las últimas versiones de los paquetes Microsoft.AgentFramework para .NET o agentframework para Python.
  2. Revisar tus modelos y servicios externos: Valida que los modelos de IA y servicios Azure utilizados sean compatibles con el nuevo framework.
  3. Auditar tu código existente: Identifica las dependencias de Semantic Kernel y AutoGen que necesiten ajustes.

Instalación de Microsoft Agent Framework

.NET

Usa NuGet para instalar el paquete:

dotnet add package Microsoft.AgentFramework --version 1.0.0-rc

Python

Instala el paquete mediante pip:

pip install agentframework==1.0.0rc

Note: Asegúrate de usar Python 3.8 o superior para evitar problemas de compatibilidad.

Migración paso a paso

Migrar un agente básico

Código original en Semantic Kernel

Este ejemplo muestra un agente básico que utiliza Semantic Kernel para responder preguntas simples:

using Microsoft.SemanticKernel;

var kernel = Kernel.Builder.Build();
var prompt = "¿Cuál es la capital de Francia?";
var result = await kernel.RunAsync(prompt);
Console.WriteLine(result);

Código migrado a Microsoft Agent Framework

En Microsoft Agent Framework, la estructura del agente se simplifica y se hace más modular:

using Microsoft.AgentFramework;

var agent = new AgentBuilder()
    .UseOpenAIModel("text-davinci-003", "your-api-key")
    .Build();

var prompt = "¿Cuál es la capital de Francia?";
var response = await agent.ProcessAsync(prompt);
Console.WriteLine(response.Result);

Migrar un pipeline conversacional

Si tu proyecto utiliza AutoGen para crear un pipeline conversacional, la migración implica adaptar las configuraciones y métodos.

Código original en AutoGen

from autogen import AutoGen

agent = AutoGen(model="gpt-3.5-turbo", api_key="your-api-key")
response = agent.chat("Hola, ¿cómo estás?")
print(response)

Código migrado a Microsoft Agent Framework

from agentframework import Agent

agent = Agent(model="gpt-3.5-turbo", api_key="your-api-key")
response = agent.process("Hola, ¿cómo estás?")
print(response.result)

Note: La clase Agent en Microsoft Agent Framework reemplaza directamente a AutoGen, pero los métodos como chat() ahora se llaman process().

Mejoras clave tras la migración

  1. Rendimiento optimizado: Microsoft Agent Framework utiliza un pipeline más eficiente para manejar múltiples tareas simultáneamente.
  2. Escalabilidad: La nueva arquitectura facilita la implementación en entornos distribuidos, como Azure Kubernetes Service (AKS).
  3. Integración profunda con Azure: Soporte nativo para servicios como Azure Cognitive Search y Azure OpenAI.

Recursos adicionales

Para entender mejor cómo integrar Microsoft Agent Framework en pipelines empresariales, revisa nuestro artículo relacionado: Conversation Knowledge Mining: Foundry IQ en un pipeline empresarial de datos conversacionales.

Conclusión

Migrar tus proyectos de Semantic Kernel y AutoGen al Microsoft Agent Framework Release Candidate no solo asegura compatibilidad futura, sino que también te permite aprovechar las últimas innovaciones en agentes inteligentes. Con una arquitectura modular y herramientas optimizadas, este framework es ideal para desarrollar aplicaciones basadas en IA escalables y robustas.

Warning: La migración puede requerir ajustes significativos en proyectos complejos. Planifica y prueba cuidadosamente antes de implementar en producción. ```