Validación Final de Respuestas del Agente

Agentes de IA con Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Por Qué la Validación Importa

  • La respuesta del agente no fue útil
  • Se perdió la experiencia del cliente

Para evitar esto, smolagents te permite validar respuestas finales!

Agentes de IA con Hugging Face smolagents

Validando Respuestas del Agente

def check_answer_length(final_answer, agent_memory):
    # Verifica si la respuesta es lo suficientemente sustancial
    if len(final_answer) < 200:
        raise Exception("La recomendación de coche es demasiado breve")
    return True
  • Si final_answer falla la regla, lanza una excepción. De lo contrario, devuelve True.
Agentes de IA con Hugging Face smolagents

Usando Validación de Salida en Tu Agente

car_advisor = CodeAgent(
    tools=[WebSearchTool()],
    model=InferenceClientModel(),
    final_answer_checks=[check_answer_length],
    verbosity_level=0
)
  • Ejecuta la validación check_answer_length antes de responder.
  • Reintenta automáticamente según el mensaje de excepción definido en la función.
Agentes de IA con Hugging Face smolagents

Meta-Evaluación: Usando IA para Validar IA

validation_prompt = """
Reasoning process: {}

Agent's final answer: {}

Does the final answer logically follow
from the reasoning and solve the user's 
question? 

Respond only TRUE or FALSE. 
No other text.
"""
Agentes de IA con Hugging Face smolagents

Validación de Razonamiento con un Meta-Evaluador

def check_reasoning_accuracy(final_answer, agent_memory):
    evaluator_model = InferenceClientModel()
    reasoning_steps = agent_memory.get_succinct_steps()
    final_prompt = validation_prompt.format(reasoning_steps, final_answer)

    message = ChatMessage(role='user', content=final_prompt)
    evaluation = evaluator_model([message])

    if evaluation.content == "FALSE":
        raise Exception("El proceso de razonamiento del agente contiene errores lógicos")
    else:
        return True
Agentes de IA con Hugging Face smolagents

Combinando Múltiples Validaciones

car_advisor = CodeAgent(
    tools=[WebSearchTool()],
    model=InferenceClientModel(),
    final_answer_checks=[check_answer_length, check_reasoning_accuracy],
    verbosity_level=0
)

¡Más probable detectar y corregir errores antes de que el usuario los vea!

Agentes de IA con Hugging Face smolagents

Diseñando Sistemas Inteligentes

Agentes de IA con Hugging Face smolagents

¡Vamos a practicar!

Agentes de IA con Hugging Face smolagents

Preparing Video For Download...