Desarrollo de agentes con el servicio Microsoft Foundry Agent

Completado

Las soluciones anteriores para lograr una experiencia similar al agente tomaron cientos de líneas de código para hacer cosas como hacer referencia a datos de base o conectarse a una función personalizada. El servicio agente ahora simplifica todo eso, admitiendo llamadas a funciones del lado cliente con solo unas pocas líneas de código y conexiones a Azure Functions o una herramienta definida por OpenAPI.

Nota:

Foundry Agent Service ofrece varias ventajas para crear agentes, pero no siempre es la solución adecuada para su caso de uso. Por ejemplo, si intenta crear una integración con Microsoft 365, puede elegir la experiencia de Copilot Studio lite y, si está intentando orquestar varios agentes, puede elegir el marco de agentes de kernel semántico.

En esta unidad Aspectos básicos de los agentes de IA se exploran más opciones para crear agentes.

Desarrollo de aplicaciones que usan agentes

Foundry Agent Service proporciona varios SDK y una API REST para integrar agentes en la aplicación mediante el lenguaje de programación preferido. El ejercicio más adelante en este módulo se centra en Python, pero el patrón general es el mismo para REST u otros SDK de lenguaje.

Diagrama de un patrón de código para la integración del agente.

En el diagrama se muestran los siguientes pasos generales que debe implementar en el código:

  1. Conéctese al proyecto de AI Foundry de su agente utilizando el punto de conexión del proyecto y la autenticación de Entra ID.
  2. Obtenga una referencia a un agente existente que creó en el portal de Microsoft Foundry o cree uno que especifique lo siguiente:
    • Implementación del modelo en el proyecto que el agente debe usar para interpretar y responder a las solicitudes.
    • Instrucciones que determinan la funcionalidad y el comportamiento del agente.
    • Herramientas y recursos que el agente puede usar para realizar tareas.
  3. Cree un subproceso para una sesión de chat con el agente. Todas las conversaciones con un agente se realizan en un subproceso con estado que conserva el historial de mensajes y los artefactos de datos generados durante el chat.
  4. Agrega mensajes al subproceso e invócalo con el agente.
  5. Compruebe el estado del subproceso y, cuando esté listo, recupere los mensajes y los artefactos de datos.
  6. Repita los dos pasos anteriores como un bucle de chat hasta que se pueda concluir la conversación.
  7. Cuando termine, elimine el agente y el subproceso para limpiar los recursos y eliminar los datos que ya no son necesarios.

Nota:

Obtendrá la oportunidad de poner este patrón en acción en el ejercicio más adelante en este módulo.

Herramientas disponibles para el agente

Gran parte de la funcionalidad mejorada de un agente procede de la capacidad del agente para determinar cuándo y cómo usar herramientas. Las herramientas hacen que la funcionalidad adicional esté disponible para el agente y, si la conversación o tarea garantiza el uso de una o varias de las herramientas, el agente llama a esa herramienta y controla la respuesta.

Puede asignar herramientas al crear un agente en el portal de Microsoft Foundry o al definir un agente en el código mediante el SDK.

Captura de pantalla de la adición de herramientas en el portal de Foundry para agentes.

Por ejemplo, una de las herramientas disponibles es el intérprete de código. Esta herramienta permite al agente ejecutar código personalizado que escribe para lograr algo, como el código de MATLAB para crear un grafo o resolver un problema de análisis de datos.

Las herramientas disponibles se dividen en dos categorías:

Herramientas de conocimiento

Las herramientas de conocimiento mejoran el contexto o el conocimiento del agente. Entre las herramientas disponibles se incluyen:

  • Bing Search: usa los resultados de búsqueda de Bing para fundamentar las indicaciones con datos en tiempo real de la web.
  • Búsqueda de archivos: fundamenta las indicaciones con datos de archivos de un almacén de vectores.
  • Búsqueda de Azure AI: fundamenta las indicaciones con datos de los resultados de las consultas de Azure AI Search.
  • Microsoft Fabric: usa el agente de datos de Fabric para fundamentar las indicaciones con datos de los almacenes de datos de Fabric.

Sugerencia

También puede integrar datos con licencia de terceros mediante la herramienta de acción de Especificación de OpenAPI (que se describe a continuación).

Herramientas de acción

Las herramientas de acción realizan una acción o ejecutan una función. Entre las herramientas disponibles se incluyen:

  • Intérprete de código: espacio aislado para código Python generado por modelos que puede acceder a los archivos cargados y procesarlos.
  • Función personalizada: llame al código de función personalizado: debe proporcionar definiciones de función e implementaciones.
  • Función de Azure: llame al código en Azure Functions sin servidor.
  • Especificación de OpenAPI: llame a api externas basadas en la especificación de OpenAPI 3.0.

Al conectar herramientas integradas y personalizadas, puede permitir que el agente realice innumerables tareas en su nombre.