AI-agents met Hugging Face smolagents
Adel Nehme
VP of AI Curriculum, DataCamp
from smolagents import CodeAgent, InferenceClientModel agent = CodeAgent( tools=[], model=InferenceClientModel() )agent.run("Bereken het gemiddelde van de lijst [23, 45, 67, 89]")
Uitvoeren van de code:
numbers = [23, 45, 67, 89]
average = sum(numbers) / len(numbers)
final_answer(average)
Eindantwoord: 56.0
[Stap 1: Duur 4.14 seconden| Invoertokens: 1,900 | Uitvoertokens: 109]
56.0
De agent die we hebben gedefinieerd kan al veel taken uitvoeren met:
Maar hij kan ook externe informatie nodig hebben:

Daar komen tools van pas!
from smolagents import CodeAgent, InferenceClientModel, WebSearchTool
agent = CodeAgent(
model=InferenceClientModel(),
tools=[WebSearchTool()]
)
agent.run("Wat is het hoogste gebouw ter wereld op dit moment?")
Uitvoeren van de code:
tallest_building_info = web_search("hoogste gebouw ter wereld 2023")
print(tallest_building_info)
# Zoekresultaten weggelaten voor beknoptheid...
Uitvoeren van de code:
final_answer("Burj Khalifa, Dubai, 828 meter")
Eindantwoord: Burj Khalifa, Dubai, 828 meter
[Stap 2: Duur 2.97 seconden| Invoertokens: 5,078 | Uitvoertokens: 153]
Burj Khalifa, Dubai, 828 meter
| Categorie | Tools |
|---|---|
| Informatieopvraging | ApiWebSearchTool, DuckDuckGoSearchTool, GoogleSearchTool, WebSearchTool, WikipediaSearchTool |
| Webinteractie | VisitWebpageTool |
| Code-uitvoering | PythonInterpreterTool |
| Gebruikersinteractie | UserInputTool |
| Spraakverwerking | SpeechToTextTool |
| Workflowbeheer | FinalAnswerTool |

from smolagents import load_tool # Laad een externe tool van Hugging Face model_downloads_tool = load_tool( repo_id="example-repo/hf-model-downloads", trust_remote_code=True ) # Maak een agent met externe + ingebouwde tools agent = CodeAgent( tools=[model_downloads_tool, WebSearchTool()], model=InferenceClientModel() )agent.run("Vind het meest gedownloade beeldclassificatiemodel op Hugging Face")
google/vit-base-patch16-224-in21k
AI-agents met Hugging Face smolagents