Śledzenie kroków agenta i monitorowanie akcji
Tworzysz asystenta opartego na smolagents dla trenera koszykówki, który potrzebuje pomocy przy analizowaniu raportów PDF zawierających statystyki zawodników, spostrzeżenia skautingowe i strategie meczowe.
Trener korzysta z agenta, by odpowiadał na pytania takie jak: „Jakie strategie obronne powinniśmy zastosować przeciwko ich drugiej piątce?"
Trener nie chce jednak tylko odpowiedzi – zależy mu też na wglądzie w to, co agent robi w tle.
W tym ćwiczeniu napiszesz callback akcji, który uruchamia się za każdym razem, gdy agent wykonuje krok – na przykład wywołuje narzędzie lub korzysta z modelu. Ten callback będzie:
- pokazywać liczbę kroków,
- a gdy agent skończy działać – wyświetlać liczbę zużytych tokenów.
Dzięki temu trener (i ty!) będziecie mogli śledzić postępy agenta i ocenić, ile pracy wykonał, zanim doszedł do wniosku.
To ćwiczenie jest częścią kursu
Agenty AI z Hugging Face smolagents
Instrukcje do ćwiczenia
- Uzupełnij sygnaturę funkcji, dodając parametr
agent_step. - Sprawdź, czy bieżący krok zwrócił ostateczną odpowiedź – użyj atrybutu
.is_final_answerobiektuagent_step. - Jeśli to ostateczna odpowiedź, pobierz łączną liczbę tokenów ze zmiennej
total_tokensi wypisz ją.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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: {____}")