Agenti AI con Hugging Face smolagents
Adel Nehme
VP of AI Curriculum, DataCamp
from smolagents import CodeAgent, InferenceClientModel agent = CodeAgent( tools=[], model=InferenceClientModel() )agent.run("Calcola la media della lista [23, 45, 67, 89]")
Esecuzione del codice:
numbers = [23, 45, 67, 89]
average = sum(numbers) / len(numbers)
final_answer(average)
Risultato finale: 56.0
[Step 1: Durata 4.14 secondi| Token input: 1,900 | Token output: 109]
56.0
L'agente che abbiamo definito può già risolvere molti compiti usando:
Ma potrebbe anche aver bisogno di accedere a informazioni esterne:

Ecco dove entrano in gioco gli strumenti!
from smolagents import CodeAgent, InferenceClientModel, WebSearchTool
agent = CodeAgent(
model=InferenceClientModel(),
tools=[WebSearchTool()]
)
agent.run("Qual è l'edificio più alto del mondo in questo momento?")
Esecuzione del codice:
tallest_building_info = web_search("tallest building in the world 2023")
print(tallest_building_info)
# Risultati della ricerca omessi per brevità...
Esecuzione del codice:
final_answer("Burj Khalifa, Dubai, 828 metri")
Risultato finale: Burj Khalifa, Dubai, 828 metri
[Step 2: Durata 2.97 secondi| Token input: 5,078 | Token output: 153]
Burj Khalifa, Dubai, 828 metri
| Categoria | Strumenti |
|---|---|
| Recupero Informazioni | ApiWebSearchTool, DuckDuckGoSearchTool, GoogleSearchTool, WebSearchTool, WikipediaSearchTool |
| Interazione Web | VisitWebpageTool |
| Esecuzione Codice | PythonInterpreterTool |
| Interazione Utente | UserInputTool |
| Elaborazione Voce | SpeechToTextTool |
| Controllo Flusso | FinalAnswerTool |

from smolagents import load_tool # Carica strumento remoto da Hugging Face model_downloads_tool = load_tool( repo_id="example-repo/hf-model-downloads", trust_remote_code=True ) # Crea agente con strumenti remoti + integrati agent = CodeAgent( tools=[model_downloads_tool, WebSearchTool()], model=InferenceClientModel() )agent.run("Trova il modello di classificazione immagini più scaricato su Hugging Face")
google/vit-base-patch16-224-in21k
Agenti AI con Hugging Face smolagents