Validarea răspunsului final al agentului

Agenți AI cu Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

De ce contează validarea

  • Răspunsul agentului nu a fost util
  • Experiența clientului a fost compromisă

smolagents permite validarea răspunsurilor finale!

Agenți AI cu Hugging Face smolagents

Validarea răspunsurilor agentului

def check_answer_length(final_answer, agent_memory):
    # Check if the answer is substantial enough
    if len(final_answer) < 200:
        raise Exception("Car recommendation is too brief")
    return True
  • Dacă final_answer nu respectă regula, se generează o excepție. Altfel, returnează True.
Agenți AI cu Hugging Face smolagents

Utilizarea validării rezultatelor în agent

car_advisor = CodeAgent(
    tools=[WebSearchTool()],
    model=InferenceClientModel(),
    final_answer_checks=[check_answer_length],
    verbosity_level=0
)
  • Rulează validarea check_answer_length înainte de a răspunde.
  • Reîncearcă automat pe baza mesajului de excepție definit în funcție.
Agenți AI cu Hugging Face smolagents

Meta-evaluare: AI pentru validarea AI

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.
"""
Agenți AI cu Hugging Face smolagents

Validarea raționamentului cu un meta-evaluator

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("The agent's reasoning process contains logical errors")
    else:
        return True
Agenți AI cu Hugging Face smolagents

Combinarea mai multor validări

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

Erorile sunt identificate și corectate înainte ca utilizatorul să le vadă!

Agenți AI cu Hugging Face smolagents

Proiectarea sistemelor inteligente

Agenți AI cu Hugging Face smolagents

Să exersăm!

Agenți AI cu Hugging Face smolagents

Preparing Video For Download...