Creare un Agente con Strumenti Personalizzati

Agenti AI con Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Agenti AI con Hugging Face smolagents

Vantaggi degli Strumenti Personalizzati

  • Affidabilità: Scrivi e testa la logica esplicitamente invece di far indovinare l'agente
  • Riutilizzabilità: Usa strumenti in progetti e agenti diversi
  • Coerenza: Ottieni comportamenti prevedibili (ottimo per il debug)
  • Accesso controllato: Esponi solo ciò che vuoi (file, API, database, ecc.)
Agenti AI con Hugging Face smolagents

Scenario: Gestisci un Negozio al Dettaglio

  • I dati dell'inventario sono in un file CSV (taglia, colore, quantità, prezzo)
  • Gli agenti di codice possono scrivere codice per leggere i CSV
  • Ma non hanno accesso ai file di default
  • Devi incapsulare l'accesso ai file in uno strumento personalizzato

Agenti AI con Hugging Face smolagents

Anatomia di uno Strumento Personalizzato

from smolagents import tool
import pandas as pd

@tool
def check_inventory(product_name: str) -> int:
    """
    Controlla la quantità disponibile di un prodotto nel CSV dell'inventario.

    Args:
        product_name (str): Nome del prodotto da cercare.

    Returns:
        int: Quantità in magazzino. Ritorna 0 se il prodotto non è trovato.
    """
    df = pd.read_csv("store_inventory.csv")
    match = df[df["product_name"] == product_name]
    stock_quantity = int(match.iloc[0]["quantity"]) if not match.empty else 0
    return stock_quantity
Agenti AI con Hugging Face smolagents

Best Practice per Strumenti Personalizzati

Agenti AI con Hugging Face smolagents

Abbiamo magliette in magazzino?

Agenti AI con Hugging Face smolagents

Registrare uno Strumento Personalizzato con il Tuo Agente

from smolagents import CodeAgent

agent = CodeAgent(
    tools=[check_inventory], # Aggiungi strumento personalizzato
    model=InferenceClientModel(),
    additional_authorized_imports=["pandas"]  # Consenti pacchetto esterno
)

agent.run("Abbiamo magliette grandi in magazzino?")
Sì, abbiamo 8 magliette grandi in magazzino.
Agenti AI con Hugging Face smolagents

Strumenti Personalizzati nei Progetti di Produzione

Agenti AI con Hugging Face smolagents

Ayo berlatih!

Agenti AI con Hugging Face smolagents

Preparing Video For Download...