Introdução
Objetivo
O que é smolagents?
smolagents é uma biblioteca open-source e leve de agentes de IA que permite aos desenvolvedores criar agentes poderosos com um código mínimo. Com um núcleo de aproximadamente 1.000 linhas no arquivo agents.py
, smolagents elimina abstrações desnecessárias, tornando o desenvolvimento mais simples e acessível. Ao focar em simplicidade e eficiência, smolagents permite que LLMs interajam facilmente com tarefas e dados do mundo real.
Como usar smolagents?
SmolAgents é uma estrutura modular que permite criar agentes de inteligência artificial de forma simples, combinando funções reutilizáveis, chamadas de tools, com tarefas organizadas (tasks). O desenvolvedor define as funções e as regras de uso; depois, o agente executa tudo automaticamente, interpretando as instruções e resolvendo as tarefas sem necessidade de arquiteturas complexas.
As tools são funções independentes com nome e descrição, criadas com o decorator @tool, que facilita sua identificação e uso pelo agente. O tools calling é o mecanismo que permite ao agente escolher e executar automaticamente as ferramentas certas conforme as instruções da tarefa. O CodeAgent é uma aplicação específica dessa estrutura, voltada para automação de tarefas computacionais e geração de código.
Na prática, se o usuário perguntar “Qual o último preço da ação da Petrobras?”, o agente analisará a solicitação, acionará automaticamente a tool que consulta uma API financeira e apresentará o preço atualizado. Todo esse fluxo ocorre sem intervenção manual, apenas com base na definição prévia das tools e das regras de execução, tornando o processo eficiente e automatizado.
CodeAgents e ToolCallingAgents
No universo da Inteligência Artificial aplicada à análise econômica, os agentes inteligentes ganham cada vez mais espaço. Eles são sistemas capazes de pensar, agir e observar — automatizando tarefas complexas como consultar APIs, extrair dados de sites, fazer cálculos e gerar relatórios. Neste post, você aprenderá os dois principais tipos de agentes oferecidos pelo pacote smolagents
: o CodeAgent e o ToolCallingAgent.
1. Dois Caminhos para Agir: Código vs. Estrutura
A grande diferença entre os dois tipos está na forma como executam ações:
CodeAgent
Esse tipo de agente gera trechos de código Python para resolver tarefas. Ele pode combinar ferramentas, fazer cálculos, laços de repetição, condicional, etc.
Exemplo:
result = search_docs("Qual é a capital da França?")
print(result)
Vantagens:
- Alta expressividade e capacidade de raciocíni.
- Flexível: pode combinar funções, criar novas soluções em tempo real.
- Ideal para resolver problemas complexos e dinâmicos.
Limitações:
- Risco de erros (sintaxe, exceções).
- Necessita de ambiente de execução seguro.
- Pode gerar saídas imprevisíveis.
Uso recomendado: quando o agente precisa raciocinar, encadear ações ou programar dinamicamente com múltiplas ferramentas (ex.: análise de dados + scraping + regressão).
ToolCallingAgent
Já esse agente escreve ações como chamadas estruturadas em JSON, compatível com frameworks como o da OpenAI.
Exemplo:
{
"tool_call": {
"name": "search_docs",
"arguments": {
"query": "Qual é a capital da França?"
}
}
}
Vantagens:
- Alta confiabilidade: saídas estruturadas e validadas.
- Segurança: não executa código diretamente.
- Fácil integração com APIs externas.
Limitações:
- Baixa expressividade: não combina ferramentas ou raciocina.
- Inflexível: precisa de ações previamente definidas.
- Não pode sintetizar código.
Uso recomendado: quando o agente precisa apenas chamar APIs específicas, buscar documentos ou atuar como controlador de tarefas simples.
2. Segurança e Execução
No caso do CodeAgent
, o código pode ser executado:
- Localmente (com proteção contra imports inseguros).
- Via Docker ou usando o E2B executor (mais seguro para produção).
Você pode restringir os módulos que o agente pode importar usando o parâmetro additional_authorized_imports
.
agent = CodeAgent(tools=[], model=model, additional_authorized_imports=['requests','bs4'])
Já o ToolCallingAgent
não executa código, apenas estrutura as chamadas de ferramentas, sendo mais indicado para ambientes sensíveis ou com alto controle de segurança.
Exemplo CodeAgent para Análise de Dados Econômicos com Smolgents
O CodeAgent
do SmolAgents é criado a partir de 3 ferramentas:
- coleta de dados do BCB
- previsão com SARIMA
- DuckDuckGoSearch para busca de notícias.
Pedimos a seguinte task para o modelo de linguagem:
O resultado foi o seguinte:
Análise do IPCA com Modelo SARIMA e Contexto da Inflação no Brasil
Resultados do Modelo SARIMA
O modelo SARIMA foi ajustado à série histórica do IPCA (Índice Nacional de Preços ao Consumidor Amplo) com os seguintes parâmetros:
- Ordem (p, d, q): (1, 0, 1)
- Ordem Sazonal (P, D, Q, s): (1, 0, 1, 12)
O modelo foi treinado com dados até 01/12/2022 e testado com os 24 meses subsequentes (de 01/01/2023 até 01/12/2024). As métricas de avaliação no conjunto de teste foram:
- MAE (Erro Absoluto Médio): 0,159
- RMSE (Raiz do Erro Quadrático Médio): 0,200
Esses valores indicam que o modelo apresenta uma precisão razoável na previsão do IPCA, embora existam desvios entre os valores previstos e os reais.
Previsão e Intervalo de Confiança
O modelo gerou uma previsão para os próximos 24 meses (de 01/01/2025 até 01/12/2026), juntamente com um intervalo de confiança de 80%. O gráfico anexado (ipca_forecast.png) visualiza a série histórica do IPCA, as previsões do modelo e o intervalo de confiança.
Contexto da Inflação no Brasil (Baseado na Pesquisa Web)
A pesquisa na web revelou as seguintes tendências recentes sobre a inflação no Brasil:
- Trading Economics: A taxa de inflação no Brasil diminuiu para 5,32% em maio de 2025, comparado com 5,53% em abril de 2025.
- FocusEconomics: A inflação oficial do Brasil, medida pelo IPCA, finalizou 2024 em 4,83%, acima da meta do Banco Central.
Os dados sugerem uma tendência de queda na inflação nos últimos anos, embora ainda existam flutuações mensais.
Análise Integrada
O modelo SARIMA capturou parte da dinâmica da inflação, mas as métricas de erro indicam que há espaço para melhorias. A pesquisa web confirma que a inflação no Brasil tem mostrado uma tendência de queda, mas permanece acima da meta estabelecida pelo Banco Central. As previsões do modelo devem ser interpretadas com cautela, considerando a volatilidade inerente à inflação e a influência de fatores externos, como políticas governamentais e o cenário econômico global.
Previsão do IPCA Mensal
Quer aprender mais?
Conheça nossa Formação do Zero à Análise de Dados Econômicos e Financeiros usando Python e Inteligência Artificial. Aprenda do ZERO a coletar, tratar, construir modelos e apresentar dados econômicos e financeiros com o uso de Python e IA.