Criando um Agente com Ferramentas Personalizadas

Agentes de IA com Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Agentes de IA com Hugging Face smolagents

Vantagens das Ferramentas Personalizadas

  • Confiabilidade: Escreva e teste a lógica explicitamente em vez de depender do agente
  • Reutilização: Use ferramentas em projetos e agentes
  • Consistência: Comportamento previsível em execuções (ótimo para depuração)
  • Acesso controlado: Exponha apenas o que deseja (arquivos, APIs, bancos de dados, etc.)
Agentes de IA com Hugging Face smolagents

Cenário: Você Gerencia uma Loja

  • Dados de inventário são armazenados em um arquivo CSV (tamanho, cor, quantidade e preço)
  • Agentes de código podem escrever código para ler CSVs
  • Mas não têm acesso a arquivos por padrão
  • Você precisa envolver o acesso a arquivos em uma ferramenta personalizada

Agentes de IA com Hugging Face smolagents

Anatomia de uma Ferramenta Personalizada

from smolagents import tool
import pandas as pd

@tool
def check_inventory(product_name: str) -> int:
    """
    Verifica a quantidade disponível de um produto no CSV de inventário.

    Args:
        product_name (str): O nome do produto a ser verificado.

    Returns:
        int: A quantidade em estoque. Retorna 0 se o produto não for encontrado.
    """
    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
Agentes de IA com Hugging Face smolagents

Melhores Práticas para Ferramentas Personalizadas

Agentes de IA com Hugging Face smolagents

Temos camisetas em estoque?

Agentes de IA com Hugging Face smolagents

Registrando uma Ferramenta Personalizada com Seu Agente

from smolagents import CodeAgent

agent = CodeAgent(
    tools=[check_inventory], # Adiciona ferramenta personalizada
    model=InferenceClientModel(),
    additional_authorized_imports=["pandas"]  # Permite pacote externo
)

agent.run("Temos camisetas grandes em estoque?")
Sim, temos 8 camisetas grandes em estoque.
Agentes de IA com Hugging Face smolagents

Ferramentas Personalizadas em Projetos de Produção

Agentes de IA com Hugging Face smolagents

Vamos praticar!

Agentes de IA com Hugging Face smolagents

Preparing Video For Download...