Agentes autônomos de inteligência artificial destacam-se pela habilidade de desdobrar objetivos complexos em subtarefas recursivas e executá-las em sequência. No entanto, a execução recursiva sem restrições representa um dos caminhos mais rápidos para esgotar saldos de tokens em APIs de modelos de linguagem. Quando um agente entra em raciocínio circular, tenta repetidamente acessar páginas indisponíveis ou gera ramificações infinitas de subtarefas, os custos de consumo podem explodir em poucos minutos. No AgentGPT (criado pela Reworkd), desenvolvedores e usuários avançados controlam esse risco por meio de duas medidas essenciais: a configuração estrita de limites de loops de execução e a exportação de resultados em múltiplos formatos.
Definir tetos claros de iterações e limites de tokens antes do início do agente, além de extrair relatórios estruturados ao término ou pausa da sessão, garante que fluxos autônomos funcionem com segurança operacional e previsibilidade financeira.
1. O Ciclo Recursivo do AgentGPT e o Consumo de Tokens
Para entender por que o controle de loops é indispensável, vale analisar o fluxo interno de execução do AgentGPT:
- Recepção do Objetivo (Goal Ingestion): O agente recebe o objetivo primário definido pelo usuário e aciona o modelo de linguagem (como GPT-3.5-Turbo ou GPT-4) para criar uma lista inicial de subtarefas.
- Execução e Análise (Task Execution): O agente recupera a primeira tarefa da fila, invoca o LLM ou ferramentas externas e armazena os resultados parciais.
- Criação e Refinamento de Tarefas (Task Creation): Com base no resultado obtido, o agente avalia se novas tarefas precisam ser inseridas ou se a ordem deve ser modificada.
- Ciclo Recursivo (Recursive Loop): As etapas 2 e 3 repetem-se continuamente até que todas as tarefas sejam concluídas ou um limite seja atingido.
Cada repetição completa desse fluxo representa um loop. Em cada loop ocorrem múltiplas chamadas à API, e o histórico de contexto enviado cresce a cada interação. Sem travas rígidas, objetivos muito amplos ou imprecisos podem rapidamente demandar milhares de tokens desnecessários.
2. Configurando Limites de Loop na Interface do Usuário
Tanto na versão web quanto em instâncias locais do AgentGPT, o painel de configurações permite restringir a execução de forma prática.
Acessando as Configurações Avançadas
- Abra o AgentGPT e clique no botão Settings (⚙️ Configurações) na barra lateral esquerda ou navegue diretamente para
/settings. - Certifique-se de estar autenticado (via GitHub, Google ou Discord) ou executando uma instância auto-hospedada. Na versão pública hospedada pela Reworkd, a seção Advanced Settings (Configurações Avançadas) fica desativada para usuários anônimos a fim de resguardar os servidores de demonstração.
Ajustando o Controle Deslizante de Loops (customMaxLoops)
Na seção de Advanced Settings, localize o campo Loop:
- Intervalo do Slider: Varia de 1 a 25 loops (incremento unitário).
- Valores Padrão: A versão de teste gratuita inicia configurada com 25 loops; ao fornecer uma API Key própria, o sistema adota 10 loops como ponto de partida sugerido.
- Efeito no Sistema: Determina a quantidade máxima de ciclos de execução em uma única sessão. Ao atingir esse limite, a execução é interrompida imediatamente, exibindo o alerta de proteção:
(Em versões iniciais, a mensagem exibida era:The maximum number of loops have been reached, this agent is shutting down."To save your wallet, and our infrastructure costs, this agent is shutting down.")
Estimativa de Loops Recomendada por Tipo de Tarefa
- Consultas Diretas, Resumos e Definições Simples: 3 a 7 loops.
- Redação em Múltiplas Etapas e Análises Comparativas: 8 a 12 loops.
- Pesquisas Abrangentes em Múltiplas Fontes Web: 15 a 25 loops.
Controles Financeiros Complementares
Para maximizar a economia de tokens, ajuste também os parâmetros correlatos:
- Limite de Tokens (Tokens /
maxTokens): Defina o teto por chamada (de 200 até o limite do modelo, ex: 4.000 tokens) para evitar que uma única resposta consuma cotas desproporcionais. - Seleção do Modelo (Model): Use
gpt-3.5-turbopara testes de prototipagem rápida e reservegpt-4para casos que exijam raciocínio lógico rigoroso. - Temperatura (Temperature): Ajuste o valor entre
0.0e0.2para tornar as saídas mais determinísticas, reduzindo alucinações que costumam gerar loops desnecessários. - Chave de API Própria (API Key): Insira sua chave privada da OpenAI e valide-a com o botão Test, monitorando os gastos diretamente no painel de faturamento da sua conta.
3. Gestão em Tempo Real do Ciclo de Vida do Agente
Além das configurações prévias, a janela de execução do AgentGPT conta com botões interativos de ciclo de vida (AgentControls):
- Pausa (Pause /
FaPause): Interrompe temporariamente a execução assim que a subtarefa atual termina. Permite verificar se o desdobramento das tarefas permanece alinhado com o esperado. - Continuar (Play /
FaPlay): Retoma o processamento a partir da próxima tarefa pendente. - Parada Forçada (Stop /
FaStop): Ao notar que o agente entrou em repetição ou desviou do propósito, o botão vermelho de parada encerra imediatamente a sessão (stopped), cortando a conexão de streaming e travando qualquer consumo subsequente de tokens.
4. Configuração em Ambientes Auto-Hospedados (Backend e Variáveis de Ambiente)
Para equipes de engenharia que rodam o AgentGPT via Docker ou código-fonte em infraestrutura interna, é possível travar os limites diretamente no servidor.
Variável de Ambiente no Backend
O serviço backend em Python (reworkd_platform) utiliza Pydantic para estruturar suas configurações. É possível estabelecer um limite global de loops por meio de variável de ambiente:
# No arquivo .env
REWORKD_PLATFORM_MAX_LOOPS=20
Esse parâmetro altera settings.max_loops em platform/reworkd_platform/settings.py, assegurando que nenhuma chamada da API ultrapasse esse patamar, mesmo se a interface do cliente for modificada.
Customização dos Limites no Frontend
Caso deseje expandir ou encurtar a escala do controle deslizante, basta alterar o código Next.js:
- No arquivo
next/src/pages/settings.tsx:<Input label={`${t("LOOP")}`} value={settings.customMaxLoops} name="loop" type="range" onChange={(e) => updateSettings("customMaxLoops", parseFloat(e.target.value))} attributes={{ min: 1, max: 50, // Limite customizado step: 1, }} helpText={t("CONTROL_THE_MAXIMUM_NUM_OF_LOOPS")} icon={<FaSyncAlt />} disabled={disableAdvancedSettings} /> - No arquivo
next/src/utils/constants.ts, atualizando os valores padrão:export const DEFAULT_MAX_LOOPS_FREE = 25 as const; export const DEFAULT_MAX_LOOPS_CUSTOM_API_KEY = 10 as const;
5. Exportando Resultados e Histórico de Tarefas
Quando o agente alcança o objetivo ou é finalizado pelo limite de loops, exportar os dados gerados evita a necessidade de reprocessar tarefas e gastar tokens repetidamente.
Menu Nativo de Exportação no Console
No canto superior direito da janela de chat (MacWindowHeader), o menu Export (CgExport) oferece três formatos de extração rápida:
- Copiar Texto (Copy):
- Captura todo o conteúdo textual da lista de mensagens (
innerText), incluindo objetivo original, subtarefas e saídas geradas. - Transfere o texto formatado para a área de transferência do sistema operacional.
- Captura todo o conteúdo textual da lista de mensagens (
- Salvar Imagem (Image / PNG):
- Emprega a biblioteca
html-to-imagepara renderizar toda a extensão visível e rolável da janela (element.scrollHeight). - Faz o download do arquivo
agent-gpt-output.png, servindo como registro visual fidedigno da execução.
- Emprega a biblioteca
- Relatório em PDF (PDF):
- Utiliza
@react-pdf/rendererpor meio do componentePDFButton. - Agrupa as mensagens em seções estruturadas:
Agent Goal: Objetivo inicial registrado.Adding Task: Tarefas criadas dinamicamente.Executing: Resultados das tarefas executadas.
- Compila e baixa o arquivo
my-document.pdf, pronto para arquivamento ou envio a partes interessadas.
- Utiliza
Exportação em Massa e Integração com Banco de Dados
- Exportações em Lote (Bulk Exports): Na plataforma de nuvem da Reworkd, a página
app.reworkd.ai/exportspermite baixar relatórios consolidados em formatos CSV ou JSON de grupos de scraping ou tarefas em lote. - Extração via Banco de Dados: Em instalações locais, as sessões ficam gravadas nas tabelas MySQL/SQLite
agent_runeagent_task. Desenvolvedores podem extrair os registros via SQL ou consultar os endpoints REST do FastAPI (/api/agent/execute) para alimentar pipelines de automação.
6. Boas Práticas Operacionais
- Checagem Prévia do Slider: Nunca dispare um agente sem antes conferir a aba Settings; configure entre 5 e 10 loops em etapas de teste.
- Defesa em Duas Camadas: Combine um teto moderado de
Loopcom uma cota restrita demaxTokens(ex: 1250 a 2000) para blindar o orçamento de chamadas excessivas e respostas prolixas. - Acompanhamento Inicial Ativo: Acompanhe as 2 ou 3 primeiras subtarefas para assegurar que o agente não está derivando para tarefas redundantes.
- Exportação Logo Após a Parada: Assim que a execução parar, faça o download do PDF ou copie o texto para evitar perda de dados com o recarregamento da página.
(Nota: O repositório reworkd/AgentGPT foi arquivado em janeiro de 2026. Equipes com forks próprios devem manter esses parâmetros de controle para garantir a estabilidade e previsibilidade de seus sistemas.)