Створення агента з власними інструментами

AI-агенти з Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

AI-агенти з Hugging Face smolagents

Переваги власних інструментів

  • Надійність: Пишіть і тестуйте логіку явно, а не покладайтеся на здогадки агента
  • Повторне використання: Використовуйте інструменти в різних проєктах і агентах
  • Послідовність: Передбачувана поведінка між запусками (зручно для налагодження)
  • Керований доступ: Відкривайте лише потрібне (файли, API, бази даних тощо)
AI-агенти з Hugging Face smolagents

Сценарій: ви керуєте роздрібним магазином

  • Дані про запаси збережені у файлі CSV (розмір, колір, кількість і ціна)
  • Код-агенти можуть писати код для читання CSV
  • Але за замовчуванням вони не мають доступу до файлів
  • Потрібно обгорнути доступ до файлів у власний інструмент

AI-агенти з Hugging Face smolagents

Будова власного інструмента

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
AI-агенти з Hugging Face smolagents

Найкращі практики для власних інструментів

AI-агенти з Hugging Face smolagents

Чи є в нас футболки на складі?

AI-агенти з Hugging Face smolagents

Реєстрація власного інструмента в агенті

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.
AI-агенти з Hugging Face smolagents

Власні інструменти в продакшн-проєктах

AI-агенти з Hugging Face smolagents

Давайте потренуємось!

AI-агенти з Hugging Face smolagents

Preparing Video For Download...