Toolkit: Ferramentas de IA Reutilizáveis para o Laravel AI SDK
O Toolkit, desenvolvido por Pushpak Chhajed sob a marca Ship Fast Labs, é um catálogo comunitário de ferramentas reutilizáveis projetado especificamente para o Laravel AI SDK. Essas ferramentas são mantidas em um monorepo, mas distribuídas como pacotes Composer individuais, permitindo que os desenvolvedores instalem apenas as ferramentas específicas que seus agentes de IA necessitam.
Um Pacote por Ferramenta
Cada ferramenta no Toolkit é uma classe que implementa a interface Laravel AI Contracts Tool, exigindo uma descrição, um método de manipulação (handle) e um esquema (schema). Essa arquitetura garante que não haja um núcleo compartilhado ou provedores de serviço pesados para registrar. Para usar uma ferramenta, basta instalar o pacote desejado via Composer e instanciá-lo na configuração do seu agente.
Por exemplo, você pode instalar as ferramentas de calculadora e banco de dados usando: composer require shipfastlabs/toolkit-calculator e composer require shipfastlabs/toolkit-database.
Cálculos Seguros e Consultas ao Banco de Dados
A ferramenta de Calculadora avalia expressões matemáticas usando um analisador de descida recursiva em vez da arriscada função eval do PHP. Ela suporta operadores padrão, parênteses e decimais, retornando erros como strings simples para que o modelo de IA possa se recuperar adequadamente.
A ferramenta de Banco de Dados foi projetada para segurança, permitindo apenas instruções SELECT únicas. Ela rejeita explicitamente palavras-chave como INSERT, UPDATE ou DELETE e anexa automaticamente um LIMIT às consultas que não o possuem. A configuração é feita diretamente no arquivo de configuração existente do Laravel AI SDK.
Busca na Web e APIs Externas
O Toolkit também fornece wrappers para APIs de busca e pesquisa populares:
- Exa: Suporta busca baseada em embeddings e extração de conteúdo.
- Perplexity: Oferece fontes classificadas e respostas citadas usando modelos Sonar.
- Tavily: Otimizado para rastreamento e mapeamento da web específicos para IA.
- JigsawStack: Uma biblioteca abrangente que cobre categorias de tradução, visão, áudio e validação.
Este artigo foi publicado originalmente por Paul Redmond no Laravel News.