IniziaInizia gratis

Traccia i passaggi dell'agente, monitora l'azione

Stai creando un assistente smolagents per un allenatore di basket che ha bisogno di analizzare report in PDF con statistiche dei giocatori, osservazioni di scouting e strategie di gioco.

L’allenatore si affida all’agente per rispondere a domande come: "Quali strategie difensive dovremmo adottare contro la loro seconda unità?"

Ma l’allenatore non vuole solo risposte: vuole anche capire cosa fa l’agente dietro le quinte.

In questo esercizio, scriverai una callback di azione che viene eseguita ogni volta che l’agente compie un passo, ad esempio quando chiama uno strumento o usa il modello. Questa callback dovrà:

  • Mostrare il numero di passaggi,
  • E, se l’agente ha terminato, indicare quanti token sono stati usati.

Questo aiuterà l’allenatore (e te!) a monitorare come procede l’agente e quanto lavoro sta facendo per arrivare a una conclusione.

Questo esercizio fa parte del corso

Agenti AI con Hugging Face smolagents

Visualizza il corso

Istruzioni dell'esercizio

  • Completa la firma della funzione aggiungendo il parametro agent_step.
  • Verifica se il passaggio corrente ha prodotto una risposta finale usando l’attributo .is_final_answer di agent_step.
  • Se è la risposta finale, recupera il numero totale di token da total_tokens e stampalo.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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: {____}")
Modifica ed esegui il codice