Agentes autônomos de inteligência artificial destacam-se pela capacidade de decompor metas complexas em subtarefas operacionais e executá-las recursivamente. Contudo, em cenários práticos, esses sistemas frequentemente sucumbem ao desvio de tarefas (task drift): um fenômeno no qual o agente se afasta de sua meta primária, perdendo-se em ramificações irrelevantes, loops infinitos de planejamento ou na criação desnecessária de scripts auxiliares. No ecossistema do AgentGPT (planejamento, análise, execução e geração recursiva de novas tarefas), o desvio não é uma falha pontual, mas o resultado natural de diretrizes vagas combinadas com a ausência de restrições rígidas de execução.
Para conter essa dispersão e garantir resultados consistentes, desenvolvedores e arquitetos de fluxo de trabalho devem aplicar um modelo de controle em duas camadas: prompts estruturados de objetivos (Structured Goal Prompts), que definem limites semânticos e critérios de conclusão rigorosos na entrada, integrados a restrições determinísticas de execução (Execution Constraints) no runtime, abrangendo limites de loops, redução de temperatura, escolha criteriosa do modelo e isolamento de ferramentas.
Por que os Agentes se Desviam no AgentGPT: A Mecânica do Loop Recursivo
O AgentGPT opera com uma divisão clara entre o backend em FastAPI e a interface em Next.js. Ao analisar seu pipeline interno, fica evidente onde e por que o desvio se manifesta:
- Decomposição Inicial (
/start): Ao receber oGoalinserido pelo usuário, o sistema invoca ostart_goal_prompt(utilizando a abordagem Plan-and-Solve) para gerar de 1 a 5 tarefas ou consultas preliminares de busca. - Análise e Execução (
/analyzee/execute): O agente analisa a tarefa da vez com oanalyze_task_promptpara definir a ferramenta cabível (como busca na web ou execução de código) e processa a ação com oexecute_task_prompt. Nesse modelo, o AgentGPT inclui a diretriz: “When confronted with choices, make a decision yourself with reasoning” (Quando confrontado com escolhas, decida por conta própria com raciocínio). Sem restrições explícitas, o modelo adota caminhos especulativos e tangenciais. - Criação Recursiva de Tarefas (
/create): Este é o principal ponto de vulnerabilidade. A cada passo finalizado, a plataforma envia o objetivo original{goal}, as tarefas pendentes{tasks}, a última tarefa executada{lastTask}e o retorno intermediário{result}para ocreate_tasks_prompt, solicitando a formulação de uma nova tarefa para aproximar o agente da meta. - Desvio Contextual Markoviano (Markovian Drift): Caso o
{result}contenha jargões inesperados, erros de página ou tópicos secundários, o modelo de linguagem passa a dar prioridade a esse contexto imediato em detrimento do{goal}inicial. Após 4 a 6 iterações, cada nova subtarefa baseia-se exclusivamente no resultado do passo anterior. O agente acaba se dedicando a depurar instaladores de pacotes, criar scripts de web scraping ou pesquisar informações institucionais sem ligação com o objetivo. - Ausência de Gatilhos de Parada Determinísticos: Embora o prompt do sistema instrua o modelo a retornar vazio caso não restem tarefas, modelos autorregressivos possuem uma tendência intrínseca de continuar gerando texto. Sem um critério inequívoco de conclusão (Definition of Done) embutido no objetivo, o agente continuará criando tarefas até atingir o limite máximo de loops da plataforma.
1. Estruturação de Prompts de Objetivos
Como a interface do AgentGPT disponibiliza apenas um campo principal de entrada (Goal), todas as fronteiras operacionais e requisitos de entrega devem ser inseridos diretamente nesse prompt. Metas genéricas como "Pesquise os preços da concorrência e monte um relatório" inevitavelmente resultarão em desvio.
Um prompt robusto e à prova de desvio deve seguir uma estrutura padronizada em 5 blocos:
[PAPEL E PERSONA / ROLE]
Atue como um analista de inteligência de mercado focado exclusivamente na consolidação objetiva de fatos.
[OBJETIVO PRINCIPAL / OBJECTIVE]
Levantar com precisão as tabelas públicas de preços vigentes, requisitos mínimos de contratação e políticas de descontos corporativos para o Produto A, Produto B e Produto C.
[FRONTEIRAS DE ESCOPO E ANTI-OBJETIVOS / SCOPE & ANTI-GOALS]
- DENTRO DO ESCOPO (IN-SCOPE): Planos de preços exibidos nos sites oficiais, comparativo de recursos e ciclos de faturamento mensal e anual.
- FORA DO ESCOPO (OUT-OF-SCOPE / PROIBIÇÕES EXPRESSAS):
* NÃO crie tarefas voltadas à programação de scripts de web scraping, automações de API ou código Python.
* NÃO investigue histórico de fundadores, captação de investimentos ou posts institucionais de marketing.
* NÃO estenda a análise a qualquer outra solução além dos Produtos A, B e C.
* Se uma página web estiver inacessível, anote "Preço indisponível" e avance imediatamente para o próximo produto, sem depurar conectividade.
[DIRETIVAS LINEARES POR FASE / PHASED EXECUTION]
Execute o fluxo rigorosamente em três etapas sequenciais, sem bifurcações:
- Fase 1: Coletar e registrar os valores oficiais do Produto A.
- Fase 2: Coletar e registrar os valores oficiais dos Produtos B e C.
- Fase 3: Consolidar todas as informações na entrega final.
Fica proibido criar tarefas adicionais de exploração fora dessas três fases.
[CRITÉRIO DE CONCLUSÃO / DEFINITION OF DONE]
O objetivo estará plenamente alcançado assim que a matriz comparativa dos três produtos for preenchida. Após gerar o relatório final em Markdown, NÃO crie tarefas suplementares e encerre o processo imediatamente.
[FORMATO DE SAÍDA / DELIVERABLE FORMAT]
Apresente os dados em uma tabela Markdown com os campos: [Produto | Plano | Valor Mensal | Valor Anual Proporcional | Principais Restrições], acompanhada de uma síntese executiva de até 150 palavras.
Boas Práticas de Prompting contra Desvios
- Inclusão de Anti-Objetivos (Anti-Goals): Determinar categoricamente o que o agente não pode fazer é mais eficiente do que somente orientar o que ele deve fazer. Vetar programação e investigações paralelas impede que o agente entre em loops técnicos desnecessários.
- Sequenciamento Linear Obrigatório: Confinar o planejamento a fases lineares substitui árvores ramificadas por uma esteira direta de execução.
- Condição de Parada Concreta: Vincular a finalização à entrega de uma tabela específica neutraliza o viés de criação contínua presente no
create_tasks_prompt.
2. Configuração de Restrições Determinísticas de Execução
Prompts constituem restrições suaves (soft constraints); em conversas com histórico extenso, modelos probabilísticos podem negligenciar instruções. Por esse motivo, é indispensável aplicar restrições duras (hard constraints) nas configurações de runtime do AgentGPT.
1. Limitação Severa de Loops (max_loops)
No arquivo de configuração .env.example do AgentGPT, o parâmetro padrão costuma ser NEXT_PUBLIC_MAX_LOOPS="100". Conceder até 100 iterações a um agente autônomo é um convite ao desperdício financeiro de tokens e a desvios profundos.
- Recomendação para Produção: Estabeleça um teto estrito de 4 a 8 loops nas configurações avançadas da interface ou no payload da API.
- Uma tarefa bem delimitada deve ser concluída em 5 a 7 iterações. Caso demande mais de 8 loops, o escopo está excessivamente amplo e deve ser fragmentado em agentes independentes.
2. Redução Drástica de Temperatura (Temperature)
O AgentGPT disponibiliza o controle de temperatura nas configurações avançadas quando utilizado com chave de API própria.
- Configuração Padrão: Geralmente entre 0.7 e 0.9, voltada à criatividade textual.
- Recomendação para Produção: Configure a temperatura entre 0.0 e 0.2.
- Temperaturas próximas a zero minimizam a dispersão probabilística, garantindo que a geração de tarefas respeite estritamente os anti-objetivos e os padrões de formato estipulados.
3. Seleção do Modelo de Linguagem
O AgentGPT suporta diferentes modelos da OpenAI (como famílias GPT-3.5 e GPT-4):
- Modelos GPT-3.5: Apresentam rápida perda de contexto instrucional após 2 ou 3 iterações, ignorando facilmente restrições negativas ao serem estimulados por trechos isolados do
{result}. - Modelos GPT-4: Oferecem alta fidelidade na manutenção de restrições em múltiplas etapas, interpretando adequadamente os anti-objetivos e reconhecendo com precisão o momento de encerramento.
4. Controle e Isolamento de Ferramentas
No AgentGPT, as ferramentas externas encontram-se centralizadas em reworkd_platform/web/api/agent/tools/tools.py (Search, Code, SID, etc.).
- Disponibilizar ferramentas de código para um agente encarregado de pesquisa muitas vezes faz com que, diante de uma falha de conexão, ele decida criar um web crawler próprio e fique preso em erros de compilação.
- Ao remover chaves de API desnecessárias ou limitar a lista de
tool_namesenviada na requisição, o espaço de ação do agente fica restrito apenas a consultas de texto e consolidação.
3. Arquitetura de Fluxo: De Agentes Monolíticos a Pipelines de Microagentes
Tentar conduzir um processo corporativo completo em uma única sessão do AgentGPT é o principal catalisador de desvios. Conforme a janela de contexto se satura com logs de pesquisa e retornos parciais, o comando original perde seu peso relativo.
A abordagem mais segura consiste em estruturar os processos em pipelines de microagentes:
[Demanda de Negócio]
│
▼
┌──────────────────────────────────────────────┐
│ Agente 1: Coleta de Dados (Apenas Busca Web) │
│ - Limites: Máx. 4 loops, Temperatura = 0.1 │
│ - Meta: Obter dados brutos de preços (A, B, C)│
└──────────────────────────────────────────────┘
│ Dados em Markdown Bruto
▼
┌──────────────────────────────────────────────┐
│ Agente 2: Tratamento e Filtragem (Sem Tools) │
│ - Limites: Máx. 2 loops, Análise de Texto │
│ - Meta: Eliminar ruídos e gerar JSON padrão │
└──────────────────────────────────────────────┘
│ JSON Estruturado
▼
┌──────────────────────────────────────────────┐
│ Agente 3: Redação Executiva │
│ - Limites: Execução única (/summarize) │
│ - Meta: Renderizar matriz e sumário executivo│
└──────────────────────────────────────────────┘
Ao isolar as responsabilidades e estreitar o escopo de atuação de cada componente, elimina-se o espaço para comportamentos imprevistos.
4. Customização de Código em Instâncias Auto-Hospedadas
Para equipes que executam o AgentGPT em infraestrutura interna via Docker, é possível implementar bloqueios diretamente no backend em platform/reworkd_platform/web/api/agent/:
- Reforço no
create_tasks_prompt(prompts.py): Inserir regras de parada explícitas no próprio prompt do sistema:create_tasks_prompt = PromptTemplate( template="""You are an AI task creation agent. Objective: `{goal}`. Incomplete tasks: `{tasks}`. Last task: `{lastTask}`. Result: `{result}`. Strict Rules: 1. If the deliverable described in `{goal}` is already obtained, return NOTHING. 2. Do NOT create tasks involving new software tools, scripting, or off-topic domains. 3. Every new task must have a direct causal link to the completion of `{goal}`. If satisfied, respond with an empty string.""", input_variables=["goal", "language", "tasks", "lastTask", "result"], ) - Validação de Similaridade Semântica na API (
views.py): No endpoint/create, calcular a similaridade de cosseno vetorial entre a nova tarefa gerada e o{goal}primário. Caso o índice fique abaixo de um limiar pré-definido (como 0.65), a tarefa é descartada automaticamente, interrompendo o desvio no nível da API.
Tabela de Diretrizes de Controle
| Camada de Controle | Vetor do Desvio | Prática Recomendada |
|---|---|---|
| Prompt do Objetivo | Definição vaga e captura por detalhes irrelevantes | Aplicar framework de 5 partes: Papel, Meta, Anti-Metas, Fases e Parada. |
| Limite de Loops | Falta de restrição gerando tarefas sem fim | Travar max_loops entre 4 e 8 iterações; abolir o padrão de 100 loops. |
| Temperatura | Aleatoriedade excessiva criando subtarefas anômalas | Definir entre 0.0 e 0.2 para obter saídas altamente previsíveis. |
| Modelo Subjacente | Amnésia instrucional em cadeias longas | Priorizar modelos como GPT-4, dotados de alto seguimento de regras. |
| Escopo de Ferramentas | Uso indevido de ferramentas técnicas em tarefas simples | Desabilitar módulos de código e ferramentas irrelevantes para a meta. |
| Arquitetura | Contexto sobrecarregado em sessão única | Modularizar o fluxo em pipelines sequenciais de microagentes. |
Ao formular objetivos como contratos formais e restringir com firmeza as variáveis do ambiente de execução, o AgentGPT deixa de ser um experimento estocástico para se tornar uma solução confiável e escalável de automação.