Judge Agent
Judge Agent usa un modelo de IA como juez: recibe una respuesta, la compara con el criterio que elijas y devuelve si la aprueba o no, junto con un comentario que explica por qué. Puedes usar criterios ya preparados, como si la respuesta es correcta, si es concisa o si inventa información, o escribir el tuyo.
Es útil para controlar la calidad de las respuestas de otros agentes, ya sea revisándolas una a una, evaluando lotes de pruebas o dentro de un Reflection Agent, que pide al agente principal que mejore su respuesta hasta que el juez la aprueba.
Cuándo usarlo
- Antes de publicar un asistente para clientes, quieres evaluar sus respuestas a una lista de preguntas de prueba.
- Quieres detectar respuestas que incluyen información que no aparece en los documentos de tu base de conocimiento.
- Necesitas comprobar que las respuestas de un agente son breves y van al grano.
- Quieres revisar automáticamente si el código que genera un agente resuelve lo que se pidió.
Configuración
| Campo | Qué hace |
|---|---|
| Agent Name | El nombre del juez. Se usa cuando lo conectas como agente de otro componente. Por defecto, ReactAgent. |
| Agent Description | Qué evalúa el juez, en una frase. |
| Evaluation Prompt Template | El criterio de evaluación. Al elegir uno, su texto se copia en Custom Judge Prompt, donde puedes adaptarlo, y el selector vuelve a Custom. Ver Criterios. Por defecto, Correctness. |
| Custom Judge Prompt | Las instrucciones del juez: qué debe comprobar y cómo decidir. Cada variable entre llaves, por ejemplo {outputs}, aparece como un campo nuevo donde escribes o conectas ese dato. |
| Conexión | Qué conectar |
|---|---|
| Model | El modelo de IA que actúa como juez, por ejemplo OpenAI. |
Criterios
| Criterio | Qué comprueba | Datos que pide |
|---|---|---|
Correctness | Si la respuesta es correcta y completa. | inputs, outputs, reference_outputs |
Conciseness | Si la respuesta es breve y sin rodeos. | inputs, outputs |
Hallucination | Si la respuesta incluye información inventada o que no se apoya en el contexto. | inputs, outputs, context, reference_outputs |
RAG Groundedness | Si la respuesta se apoya en los documentos recuperados. | context, outputs |
RAG Helpfulness | Si la respuesta resuelve de verdad la pregunta. | inputs, outputs |
RAG Retrieval Relevance | Si los documentos recuperados tienen que ver con la pregunta. | inputs, context |
Code Correctness | Si el código de la respuesta resuelve lo que se pidió. | inputs, outputs |
Custom | Lo que escribas en Custom Judge Prompt. | Las variables que uses en el texto |
En los datos, inputs es la pregunta o petición, outputs la respuesta que se evalúa, reference_outputs una respuesta de referencia si la tienes y context los documentos o datos de apoyo.
Procesamiento por lotes
Con el interruptor Batch Mode activado, el componente se ejecuta una vez por cada elemento de la lista que conectes en Batch Input y devuelve todos los resultados juntos en una lista. Parallel Executions indica cuántos elementos se procesan a la vez (de 1 a 5). Skip if Empty Batch Input salta el componente si la lista llega vacía, y Skip Branch if Empty Output detiene los componentes siguientes si el resultado está vacío. Más información en Conceptos clave.
Uso como herramienta de un agente
Puedes conectar este componente a la entrada Tools de un agente. En la pestaña Tool, Tool Name y Tool Description son el nombre y la explicación con los que el agente reconoce la herramienta y decide cuándo usarla: escribe una descripción clara de lo que hace.
Resultado
- Eval: el veredicto del juez como texto, con la puntuación (
score, aprobada o no) y el comentario que la justifica (comment). Puedes mostrarlo en un Chat Output o guardarlo con los resultados de tus pruebas. - Agent: el juez como agente, para conectarlo a la entrada Judge Agent de un Reflection Agent. En ese caso evalúa la última respuesta del agente principal frente a la última pregunta del usuario.
- Tool: el juez como herramienta, para que otro agente lo use para revisar sus propias respuestas.
Ejemplo
Una aseguradora quiere comprobar que su asistente de pólizas no inventa coberturas.
- Elige
Hallucinationen Evaluation Prompt Template. - Conecta la pregunta del cliente al campo
inputs, la respuesta del asistente aoutputsy el texto de la póliza acontext. Dejareference_outputsvacío si no tienes una respuesta de referencia. - Conecta un modelo de IA en Model.
- Activa Batch Mode y conecta en Batch Input la lista de preguntas de prueba con sus respuestas.
La salida Eval indica, para cada respuesta, si se ajusta a la póliza y por qué.
Buenas prácticas
- Usa como juez un modelo al menos tan capaz como el del agente que evalúas.
- Si escribes un criterio propio, explica con claridad cuándo se aprueba y cuándo no.
- Revisa a mano una muestra de los veredictos antes de confiar en el juez para decisiones importantes.
Componentes relacionados
- Reflection Agent: combina un agente y este juez para mejorar las respuestas.
- Agent: el agente general de NappAI.