Volg agentstappen, houd de actie in de gaten
Je bouwt een smolagents-assistent voor een basketbalcoach die hulp nodig heeft bij het analyseren van PDF-rapporten met spelerstats, scoutinginzichten en spelstrategieën.
De coach vertrouwt op de agent om vragen te beantwoorden zoals: "Welke defensieve strategieën moeten we spelen tegen hun tweede unit?"
Maar de coach wil niet alleen antwoorden — die wil ook inzicht in wat de agent achter de schermen doet.
In deze oefening schrijf je een action callback die elke keer draait wanneer de agent een stap zet, zoals het aanroepen van een tool of het gebruiken van het model. Deze callback zal:
- Het aantal stappen laten zien,
- En als de agent klaar is, tonen hoeveel tokens er zijn gebruikt.
Dit helpt de coach (en jou!) om te volgen hoe de agent vordert en hoeveel werk er nodig is om tot een conclusie te komen.
Deze oefening maakt deel uit van de cursus
AI-agents met Hugging Face smolagents
Oefeninstructies
- Maak de functiedefinitie af door de parameter
agent_steptoe te voegen. - Controleer of de huidige stap een definitief antwoord heeft opgeleverd met het attribuut
.is_final_answervanagent_step. - Als het het definitieve antwoord is, haal dan het totale aantal tokens op uit
total_tokensen print dit.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Define an action callback that accepts the agent step and the agent
def action_callback(____, agent):
step_num = agent_step.step_number
print(f"Step {step_num}: Analyzing basketball data!")
# Check if the agent step includes token usage
if agent_step.____:
total_tokens = agent_step.token_usage.total_tokens
# Print how many tokens were used
print(f"Analysis complete! Total tokens used: {____}")