Créer un agent avec des outils personnalisés

Agents IA avec Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Agents IA avec Hugging Face smolagents

Avantages des outils personnalisés

  • Fiabilité : Écrire et tester la logique explicitement plutôt que laisser l'agent deviner
  • Réutilisabilité : Utiliser les outils dans plusieurs projets et agents
  • Cohérence : Obtenir un comportement prévisible (idéal pour le débogage)
  • Accès contrôlé : Exposer seulement ce que vous voulez (fichiers, API, bases de données, etc.)
Agents IA avec Hugging Face smolagents

Scénario : vous gérez un magasin de détail

  • Les données d'inventaire sont dans un fichier CSV (taille, couleur, quantité, prix)
  • Les agents de code peuvent écrire du code pour lire des CSV
  • Mais ils n'ont pas accès aux fichiers par défaut
  • Il faut envelopper l'accès aux fichiers dans un outil personnalisé

Agents IA avec Hugging Face smolagents

Anatomie d'un outil personnalisé

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
Agents IA avec Hugging Face smolagents

Pratiques exemplaires pour les outils personnalisés

Agents IA avec Hugging Face smolagents

Avons-nous des t-shirts en stock ?

Agents IA avec Hugging Face smolagents

Enregistrer un outil personnalisé avec votre 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?")
Oui, nous avons 8 t-shirts larges en stock.
Agents IA avec Hugging Face smolagents

Outils personnalisés dans les projets de production

Agents IA avec Hugging Face smolagents

Passons à la pratique !

Agents IA avec Hugging Face smolagents

Preparing Video For Download...