Evaluar el uso de herramientas y las llamadas a funciones
Cómo anotar y evaluar las llamadas a herramientas y a funciones de un agente en distintos formatos de traza (OpenAI, Anthropic, ReAct, LangChain) con las valoraciones por turno de Potato.
Cuando un agente llama a una herramienta (una búsqueda, una calculadora, una API, una base de datos), cada llamada es una decisión que puedes evaluar: ¿era esta la herramienta correcta? ¿eran correctos los argumentos? ¿se usó bien el resultado? La evaluación del uso de herramientas convierte esas decisiones en etiquetas paso a paso sobre la traza de un agente.
Es el complemento de juicio humano a los benchmarks automatizados de llamadas a funciones: una llamada puede ser sintácticamente válida y aun así estar mal para la tarea.
Qué juzgar en cada llamada a herramienta
- Selección de la herramienta: ¿era la herramienta adecuada, o debería haber usado otra (o ninguna)?
- Argumentos: ¿eran los parámetros correctos y completos?
- Necesidad: ¿hacía falta la llamada, o era redundante?
- Manejo del resultado: ¿interpretó y usó el agente la salida correctamente?
Leer trazas de cualquier framework
Potato convierte 13 formatos de traza en una vista de pasos común, de modo que puedes evaluar el uso de herramientas sin importar cómo se construyera el agente: llamadas a herramientas/funciones de OpenAI y Anthropic, trazas pensamiento-acción-observación de ReAct, LangChain, LangFuse y más. Consulta Anotación de agentes.
Configuración de la valoración paso a paso
Asocia una valoración a cada paso (cada llamada a herramienta) con una pregunta de seguimiento condicional para los fallos:
annotation_schemes:
- annotation_type: per_turn_rating
name: tool_call_correctness
description: "For each tool call, judge whether it was the right call."
target: agentic_steps
rating_type: radio
labels: ["Correct", "Wrong tool", "Wrong arguments", "Unnecessary"]
- annotation_type: text
name: notes
description: "If not correct, what should it have done?"
label_requirement:
required: falseConsideraciones de calidad
- Muestra la salida de la herramienta, no solo la llamada; de lo contrario, los anotadores no pueden juzgar el manejo del resultado.
- Formatea con sangría el JSON de argumentos y respuestas para que se lea bien (Potato lo hace en la visualización de la traza del agente).
- Distingue "herramienta equivocada" de "herramienta correcta, argumentos equivocados": apuntan a correcciones distintas del modelo.