Un agente de IA se refiere a un sistema de software capaz de llevar a cabo tareas de forma autónoma en nombre de un usuario u otro sistema, desarrollando su propio flujo de trabajo y utilizando herramientas externas según sea necesario.
Los agentes van mucho más allá del simple procesamiento y comprensión del lenguaje. Son capaces de toma de decisiones, resolver problemas, interactuar con el entorno y actuar en pos de objetivos.
Los agentes de IA se están incorporando ahora a una variedad de soluciones empresariales, desde la automatización de TI y la ingeniería de software, hasta las interfaces conversacionales y la implementación de generación de código. Impulsados por modelos de lenguaje de gran tamaño (LLM), pueden comprender direcciones complejas, descomponerlas en pasos, interactuar con recursos de fuentes externas y tener la capacidad cognitiva de saber cuándo implementar ciertas herramientas o servicios para ayudar a realizar tareas.
La evaluación de agentes es un procedimiento importante a la hora de crear e implementar sistemas de IA autónomos, ya que mide lo bien que un agente realiza las tareas asignadas, toma decisiones e interactúa con usuarios o entornos. De esta manera, podemos garantizar que los agentes operen de manera confiable, eficiente y ética en sus casos de uso previstos.
Las razones clave para la evaluación de agentes incluyen:
La evaluación del rendimiento de un agente de IA utiliza métricas organizadas en varias clases formales de rendimiento: precisión, tiempo de respuesta (velocidad) y coste de los recursos utilizados. La precisión describe la capacidad del agente para dar respuestas correctas y relevantes, así como su capacidad para completar las funciones previstas. El tiempo de respuesta mide la velocidad que tarda el agente en procesar la entrada y generar la salida. Minimizar la latencia es especialmente importante en los programas interactivos y en tiempo real, y el coste mide los recursos que consume el agente, como el uso de token, la llamada a una interfaz de programación de aplicaciones (API) o el tiempo del sistema. Estas métricas proporcionan directrices para mejorar el rendimiento del sistema y limitar los costes operativos.
Mientras que las métricas clave como la corrección, la utilidad y la coherencia se incluyen en la precisión, el tiempo de respuesta (latencia) mide métricas como el rendimiento, la latencia media y el retraso del tiempo de espera. Las métricas de costes incluyen el uso de tokens , el tiempo de cálculo, el recuento de llamadas a la API y el consumo de memoria.
En este tutorial exploraremos las métricas clave de corrección, utilidad y coherencia que se incluyen en la precisión.
Desarrollará un agente de viajes y evaluará su rendimiento utilizando un "LLM como juez".
Necesita una cuenta de IBM Cloud para crear un proyecto watsonx.ai.
También necesita la versión 3.12.7 de Python
Aunque puede elegir entre varias herramientas, este tutorial le muestra cómo configurar una cuenta de IBM para utilizar un Jupyter Notebook.
Inicie sesión en watsonx.ai utilizando su cuenta de IBM Cloud.
Cree un proyecto watsonx.ai. Puede obtener el ID de su proyecto desde su proyecto.Haga clic en la pestaña Administrar. A continuación, copie el ID del proyecto de la sección Detalles de la página General. Necesita este ID para este tutorial.
Cree un Jupyter Notebook. Este paso abre un entorno de Jupyter Notebook donde puede copiar el código de este tutorial. También puede descargar este cuaderno en su sistema local y cargarlo en su proyecto watsonx.ai como activo. Para ver más tutoriales de IBM Granite, consulte la comunidad de IBM Granite.
Cree una instancia de servicio de watsonx.ai Runtime (seleccione la región adecuada y elija el plan Lite, que es una instancia gratuita).
Genere una clave de interfaz de programación de aplicaciones (API).
Asocie la instancia del servicio watsonx.ai Runtime al proyecto que ha creado en watsonx.ai.
Necesitamos unas pocas bibliotecas y módulos para este tutorial. Asegúrese de importar los siguientes y, si no están instalados, una instalación rápida de pip resuelve el problema.
Tenga en cuenta que este tutorial se creó con Python 3.12.7.
Para establecer nuestras credenciales, necesitamos el WATSONX_APIKEY y el WATSONX_PROJECT_ID que generó en el paso 1. También estableceremos la URL que sirve como endpoint de la API. El endpoint de su API puede variar en función de su ubicación geográfica.
Utilizaremos el modelo Granite 3 -8B Instruct para este tutorial. Para inicializar el LLM, necesitamos establecer los parámetros del modelo. Para obtener más información sobre estos parámetros del modelo, como los límites mínimo y máximo de tokens, consulte la documentación.
Creemos un compañero de exploración de viajes que ayude a los usuarios a planificar sus viajes y a buscar información sobre ellos.
Crearemos una sencilla aplicación de asistencia para viajes que pueda recuperar información sobre aerolíneas y hoteles en respuesta a las consultas de los usuarios conectándose a una API de viajes externa. Para integrarnos con agentes de IA para la planificación dinámica de viajes, dispondremos de una función sencilla que realiza consultas API y la incorporaremos a una herramienta.
Por último, realizamos una evaluación e imprimimos la puntuación final de la evaluación. Con el fin de evaluar el planificador de viajes utilizando tres criterios distintos (corrección, utilidad y coherencia), se ha desarrollado una guía de evaluación estructurada para un evaluador LLM.
El resultado muestra una evaluación cualitativa y cuantitativa del planificador de viajes generado mediante tres criterios: corrección, utilidad y coherencia.
Analicemos lo que significa cada puntuación y métricas en el contexto del resultado del agente:
A la hora de evaluar la capacidad de un agente para satisfacer realmente las necesidades de los usuarios, criterios como la coherencia, la utilidad y la precisión desempeñan un papel fundamental. Independientemente de si trabaja con OpenAI, IBM Granite u otros modelos de LLM como servicio, es crucial confiar en métodos de evaluación estructurados, como conjuntos de datos, referencias, anotaciones y datos sobre el terreno, para probar exhaustivamente los resultados finales. En casos de uso como chatbot o atención al cliente basada en RAG, los marcos de código abierto como LangGraph son invaluables. Admiten una automatización escalable, un enrutamiento fiable y permiten ciclos de iteración rápidos. Estas tecnologías también facilitan la potencia de los sistemas de IA generativa, la depuración de comportamientos y la optimización y configuración de flujos de trabajo complejos. Al definir cuidadosamente los casos de prueba y vigilar las métricas de observabilidad, como el coste de cálculo, el precio y la latencia, los equipos pueden mejorar constantemente el rendimiento del sistema. En última instancia, la aplicación de un enfoque de evaluación fiable y repetible aporta rigor a los sistemas de machine learning y refuerza su fiabilidad con el tiempo.
Cree, implemente y gestione potentes asistentes y agentes de IA que automaticen flujos de trabajo y procesos con IA generativa.
Construya el futuro de su empresa con soluciones de IA en las que puede confiar.
Los servicios de IA de IBM Consulting ayudan a reinventar la forma de trabajar de las empresas usando IA para la transformación.