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, mediante el desarrollo de su propio flujo de trabajo y el uso de herramientas externas según sea necesario.
Los agentes van mucho más allá del simple procesamiento y comprensión del lenguaje. Son capaces de tomar decisiones, resolver problemas, interactuar con el entorno y actuar en pos de objetivos.
Los agentes de IA ahora se están incorporando a una variedad de soluciones empresariales, desde automatización de TI e ingeniería de software, hasta interfaces conversacionales e implementación de generación de código. Impulsados por modelos de lenguaje extensos (LLM), pueden comprender instrucciones complejas, descomponerlas en pasos, interactuar con recursos de fuentes externas y tener la capacidad cognitiva de saber cuándo desplegar ciertas herramientas o servicios para ayudar a lograr tareas.
La evaluación de agentes es un procedimiento importante al crear y desplegar sistemas autónomos de IA porque mide qué tan bien 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 costo de los recursos utilizados. La precisión describe qué tan bien el agente da las respuestas correctas y relevantes, así como la capacidad del agente para completar sus funciones previstas. El tiempo de respuesta mide la velocidad que toma el agente para procesar la entrada y producir la salida. Minimizar la latencia es especialmente importante en programas interactivos y en tiempo real, y el costo mide los recursos computacionales 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 pautas para mejorar el rendimiento del sistema y limitar los costos 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 que incluyen el rendimiento, la latencia promedio y el retraso del tiempo de espera. Las métricas de costos incluyen el uso de token, 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 desempeño 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
Si bien puede elegir entre varias herramientas, este tutorial lo guiará a través de cómo configurar una cuenta de IBM para usar un Jupyter Notebook.
Inicie sesión en watsonx.ai mediante su cuenta de IBM Cloud.
Cree un proyecto watsonx.ai. Puede obtener la ID de su proyecto desde dentro de este. Haga clic en la pestaña Manage. Luego, copie la ID del proyecto en la sección Details de la página General. Necesitará esta 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 notebook 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 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 creó en watsonx.ai.
Necesitamos algunas 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 WATSONX_PROJECT_ID generó en el paso 1. También estableceremos la URL que sirve como endpoint de la API. Su endpoint de API puede diferir según su ubicación geográfica.
Para este tutorial, usaremos el modelo Granite 3 -8B Instruct. Para inicializar el LLM, necesitamos establecer los parámetros del modelo. Para aprender más 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 explorador de viajes que ayude a los usuarios a planear sus viajes y buscar información.
Crearemos una sencilla aplicación de asistente de viajes que pueda recuperar información de aerolíneas y hoteles en respuesta a las consultas de los usuarios mediante la conexión a una API de viajes externa. Para integrarnos con agentes de IA para la planificación dinámica de viajes, tendremos una función sencilla que realiza consultas API y la envuelve en una herramienta.
Por último, realizamos una evaluación e imprimimos la puntuación final de la evaluación. Con el fin de evaluar al planificador de viajes con tres criterios distintos (corrección, utilidad y coherencia), se desarrolla una instrucción de evaluación estructurada para un evaluador de LLM.
El resultado muestra una evaluación tanto cualitativa como cuantitativa del planificador de viajes generado mediante el uso de tres criterios: corrección, utilidad y coherencia.
Analicemos lo que significa cada puntuación y métrica en el contexto de la salida del agente:
Al evaluar la capacidad de un agente para satisfacer realmente las necesidades del usuario, los criterios como la coherencia, la utilidad y la precisión desempeñan una función central. 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 de evaluación, puntos de referencia, anotaciones y datos reales, para probar exhaustivamente los resultados finales. En casos de uso práctico, como chatbots o atención al cliente basada en RAG, los marcos de código abierto como LangGraph son invaluables. Admiten automatización escalable, enrutamiento confiable 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 costo 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 confiable y repetible aporta rigor a los sistemas de machine learning y fortalece su confiabilidad con el tiempo.
Cree, implemente y gestione poderosos 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 pueda confiar.
Los servicios de IA de IBM Consulting ayudan a reinventar la forma en que las empresas trabajan con IA para la transformación.