Crearea unui agent cu instrumente personalizate

Agenți AI cu Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Agenți AI cu Hugging Face smolagents

Avantajele instrumentelor personalizate

  • Fiabilitate: Scrieți și testați logica explicit, fără a lăsa agentul să ghicească
  • Reutilizare: Folosiți instrumente în mai multe proiecte și agenți
  • Consistență: Obțineți comportament predictibil la fiecare rulare (util pentru depanare)
  • Acces controlat: Expuneți doar ce doriți (fișiere, API-uri, baze de date etc.)
Agenți AI cu Hugging Face smolagents

Scenariu: Gestionați un magazin de retail

  • Datele de inventar sunt stocate într-un fișier CSV (mărime, culoare, cantitate și preț)
  • Agenții de cod pot scrie cod pentru a citi fișiere CSV
  • Dar nu au acces implicit la fișiere
  • Trebuie să încapsulați accesul la fișiere într-un instrument personalizat

Agenți AI cu Hugging Face smolagents

Anatomia unui instrument personalizat

from smolagents import tool
import pandas as pd

@tool
def check_inventory(product_name: str) -> int:
    """
    Check the available quantity of a product in the inventory CSV.

    Args:
        product_name (str): The name of the product to look up.

    Returns:
        int: The quantity in stock. Returns 0 if the product is not found.
    """
    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
Agenți AI cu Hugging Face smolagents

Bune practici pentru instrumente personalizate

Agenți AI cu Hugging Face smolagents

Avem tricouri în stoc?

Agenți AI cu Hugging Face smolagents

Înregistrarea unui instrument personalizat în agent

from smolagents import CodeAgent

agent = CodeAgent(
    tools=[check_inventory], # Add custom tool
    model=InferenceClientModel(),
    additional_authorized_imports=["pandas"]  # Allow external package
)

agent.run("Do we have any large t-shirts in stock?")
Yes, we have 8 large t-shirts in stock.
Agenți AI cu Hugging Face smolagents

Instrumente personalizate în proiecte de producție

Agenți AI cu Hugging Face smolagents

Să exersăm!

Agenți AI cu Hugging Face smolagents

Preparing Video For Download...