Nem toda tarefa de um Agente IA termina na conversa: como executar processos longos, informar status e retomar o atendimento
Veja como separar conversa e execução para que análises, propostas, cadastros e pesquisas continuem sem deixar o cliente esperando.
Nem toda tarefa de um Agente IA termina na conversa: como executar processos longos, informar status e retomar o atendimento
Quando uma pessoa conversa com um Agente IA, existe uma expectativa de resposta rápida. Ela envia uma pergunta, aguarda alguns segundos e recebe uma mensagem. Esse formato funciona bem para esclarecer dúvidas, consultar informações simples ou executar ações com poucas etapas.
O problema aparece quando a solicitação exige um processo mais longo.
Um cliente pode enviar vários documentos e pedir uma análise. Uma proposta personalizada pode depender de preços, disponibilidade, regras comerciais e dados armazenados em sistemas diferentes. Um cadastro pode exigir validação fiscal, conferência de documentos e aprovação humana. Uma pesquisa pode precisar consultar diversas fontes antes de produzir uma resposta confiável.
Essas tarefas podem levar minutos ou até horas. Mantê-las dentro do mesmo ciclo de resposta cria uma conversa aparentemente travada, aumenta o risco de timeout e faz o cliente pensar que algo deu errado.
A solução não é aumentar indefinidamente o tempo máximo de espera. É tratar a solicitação como um processo que continua depois da mensagem inicial.
A conversa pode iniciar o trabalho sem permanecer aberta
Um Agente IA não precisa concluir tudo antes de responder ao usuário. Ele pode compreender a solicitação, validar os dados recebidos, iniciar o processo e informar que o trabalho continuará sendo executado.
A conversa deixa de ser o lugar onde toda a execução acontece. Ela passa a funcionar como uma interface para iniciar, acompanhar e receber o resultado.
Esse é o princípio da execução assíncrona.
Em uma execução síncrona, a aplicação envia uma solicitação e mantém a conexão aberta até receber o resultado. Em uma execução assíncrona, a aplicação inicia o trabalho, recebe um identificador e consulta seu andamento posteriormente ou espera uma notificação de conclusão.
A documentação de execução em segundo plano da OpenAI, por exemplo, permite iniciar respostas demoradas de forma assíncrona. A aplicação pode consultar o objeto enquanto o estado permanece como `queued` ou `in_progress`. Quando a resposta deixa esses estados, alcançou uma condição final.
Essa capacidade resolve uma parte do problema técnico. A empresa ainda precisa decidir como registrar a tarefa, preservar seu contexto, informar o cliente, entregar o resultado e agir quando alguma etapa falhar. É por isso que um bom Agente IA depende de contexto, ferramentas e processo, não apenas de um prompt capaz de compreender a solicitação.
Execução assíncrona não significa abandonar o cliente
Um erro comum é responder “estamos processando” e deixar o trabalho rodando silenciosamente.
Do ponto de vista do cliente, um processo sem informação continua parecendo travado. A espera deixou de acontecer diante de um indicador de digitação, mas a incerteza permanece.
Toda tarefa longa precisa de quatro elementos:
1. Confirmação: o sistema informa que entendeu a solicitação e iniciou o trabalho.
2. Status: o usuário consegue saber se a tarefa está aguardando, sendo processada, concluída ou interrompida.
3. Retomada: quando o resultado fica pronto, o atendimento continua a partir do ponto correto.
4. Tratamento de falhas: se algo der errado, o sistema explica o problema e define o próximo passo.
O trabalho pode acontecer fora da conversa, mas a experiência continua sendo acompanhada por ela.
Em vez de deixar o cliente esperando, o Agente pode responder:
“Recebi os três documentos e iniciei a análise. Esse processo pode levar alguns minutos. Você não precisa permanecer nesta conversa. Avisarei assim que o relatório estiver pronto.”
Essa mensagem encerra a espera imediata sem encerrar o atendimento.
Quando usar resposta imediata, streaming ou tarefa assíncrona
Nem toda operação demorada precisa seguir o mesmo formato.
Uma resposta imediata funciona quando o resultado pode ser produzido em poucos segundos. O usuário faz uma pergunta, o sistema consulta uma fonte e devolve a resposta no mesmo ciclo.
O streaming é útil quando o resultado pode ser apresentado progressivamente. O usuário começa a receber o conteúdo enquanto o modelo continua gerando a resposta. Isso reduz a percepção de espera, mas a conexão ainda precisa permanecer ativa.
A tarefa assíncrona faz mais sentido quando o trabalho:
* depende de várias etapas;
* consulta serviços externos que podem demorar;
* processa muitos arquivos ou grandes volumes de dados;
* exige aprovação humana;
* precisa sobreviver ao fechamento do canal;
* pode ser retomado depois de uma interrupção;
* produz um arquivo, relatório ou ação operacional ao final.
A escolha não deve ser feita apenas com base no tempo estimado. Também importa saber o que acontece se a conexão cair, se um sistema externo ficar indisponível ou se o cliente sair da conversa.
Como estruturar um processo longo executado por um Agente IA
Uma arquitetura desse tipo separa a interação com o usuário da execução operacional. A conversa inicia a demanda. Um processo persistente assume o trabalho.
1. O Agente identifica que a tarefa não deve bloquear a conversa
Uma consulta simples ao estoque pode ser respondida em poucos segundos. A análise de dezenas de páginas, uma pesquisa em várias fontes ou uma operação que depende de muitos sistemas deve seguir outro caminho.
O Agente pode considerar fatores como:
* quantidade de dados;
* número de etapas;
* sistemas envolvidos;
* tempo provável de execução;
* dependência de serviços externos;
* necessidade de aprovação humana;
* impacto de uma interrupção;
* risco de executar a mesma ação duas vezes.
A partir desses critérios, ele escolhe entre responder imediatamente, transmitir o resultado progressivamente ou criar uma tarefa assíncrona.
Essa decisão também depende das ferramentas disponíveis. Um Agente precisa de ferramentas para consultar sistemas e executar ações reais, mas cada ferramenta pode ter seu próprio tempo de resposta, limite e possibilidade de falha.
2. A aplicação cria um registro persistente da tarefa
Antes de iniciar a execução, o sistema deve registrar o processo em um banco de dados.
Esse registro pode incluir:
* identificador da tarefa;
* cliente e organização responsáveis;
* conversa e canal de origem;
* Agente que iniciou o processo;
* objetivo solicitado;
* arquivos e dados recebidos;
* sistemas que serão consultados;
* estado atual;
* número de tentativas;
* horário de criação e última atualização;
* resultado produzido;
* erro encontrado, quando houver;
* próximo passo esperado.
O ponto central é simples: a tarefa não pode depender da sessão de conversa continuar aberta. Mesmo que o usuário feche o WhatsApp, o navegador ou o aplicativo, o trabalho precisa permanecer registrado.
Os estados internos podem seguir uma estrutura como:
* `pending`: tarefa criada, mas ainda não enviada para execução;
* `queued`: aguardando capacidade de processamento;
* `in_progress`: execução iniciada;
* `waiting_input`: aguardando informação ou aprovação;
* `completed`: concluída com sucesso;
* `failed`: interrompida por um erro;
* `cancelled`: cancelada pelo usuário ou pelo sistema;
* `incomplete`: encerrada sem produzir o resultado esperado.
A referência de eventos de webhook da OpenAI diferencia respostas concluídas, canceladas, com falha e incompletas. Essa separação permite que a aplicação escolha um fluxo adequado para cada resultado, em vez de tratar qualquer encerramento como sucesso.
3. Uma fila desacopla a conversa da execução
Depois que a tarefa é registrada, ela pode ser enviada para uma fila. Um worker, serviço responsável por processar trabalhos em segundo plano, retira a tarefa da fila e executa as etapas necessárias.
No caso de uma análise documental, o processo poderia:
1. validar os arquivos recebidos;
2. verificar se estão legíveis e no formato aceito;
3. extrair o conteúdo;
4. classificar os documentos;
5. analisar cada seção;
6. comparar as informações encontradas;
7. produzir um relatório;
8. armazenar o resultado;
9. solicitar revisão humana, quando necessário;
10. avisar o canal de atendimento.
A conversa não precisa permanecer bloqueada durante nenhuma dessas etapas.
A fila também ajuda a controlar capacidade. Se cem clientes enviarem documentos ao mesmo tempo, o sistema não precisa iniciar cem análises sem limite. Ele pode ordenar as tarefas, distribuir o trabalho entre diferentes workers e aplicar prioridades quando houver prazos ou níveis de serviço distintos.
4. O sistema acompanha o andamento
Existem duas formas comuns de descobrir se uma tarefa terminou.
Na primeira, chamada de polling, a aplicação consulta periodicamente o status do processo. Enquanto ele estiver aguardando ou em andamento, uma nova consulta é realizada depois de determinado intervalo.
Na segunda, o serviço responsável pela execução envia um webhook quando algum evento acontece. Em vez de perguntar repetidamente se o processo terminou, a aplicação recebe uma notificação quando há uma mudança relevante.
O polling pode ser simples de implementar, mas aumenta o número de consultas e exige uma política de intervalo. Consultar rápido demais desperdiça recursos. Consultar devagar demais atrasa a entrega do resultado.
O webhook reduz consultas desnecessárias, mas cria outras responsabilidades. O endpoint precisa estar disponível, verificar a origem da requisição, responder rapidamente e processar cada evento de forma segura.
O guia de webhooks da OpenAI recomenda que o endpoint responda com sucesso em poucos segundos e envie trabalhos mais pesados para um worker. Caso contrário, a entrega pode ser repetida. Em uma aplicação de negócio, o webhook pode atualizar a tarefa, armazenar o resultado e disparar uma nova mensagem para o cliente.
Retomar a conversa exige preservar o contexto
Concluir a tarefa é apenas parte do trabalho. O sistema ainda precisa saber para quem entregar o resultado e como continuar o atendimento.
A tarefa deve permanecer relacionada à conversa que a originou. Quando o processo termina, o sistema recupera informações como:
* quem fez a solicitação;
* em qual canal ela aconteceu;
* qual Agente estava atendendo;
* o que foi prometido ao cliente;
* quais dados foram enviados;
* qual resultado foi produzido;
* qual deve ser o próximo passo.
Assim, o Agente não retorna com uma mensagem genérica como “processo concluído”. Ele retoma o contexto:
“Terminei a análise dos documentos que você enviou. Encontrei duas divergências entre o contrato e a proposta comercial. Preparei um resumo com os pontos identificados e as ações recomendadas.”
A retomada pode acontecer horas depois ou em outro canal. O usuário pode iniciar a solicitação pelo site e receber o resultado por e-mail ou WhatsApp, desde que exista consentimento e uma associação segura entre a tarefa e o contato.
Esse vínculo também mostra por que registrar a conversa no CRM é tão importante quanto responder ao cliente. Sem histórico, identidade e relação entre conversa e processo, o sistema pode entregar o resultado à pessoa errada, repetir perguntas ou perder o próximo passo comercial.
O status precisa ser compreensível para o cliente
Os estados técnicos são úteis para o sistema, mas não devem ser apresentados sem tradução.
Um cliente não precisa saber que o job está no estado `queued`. Ele precisa entender o que está acontecendo.
A interface pode apresentar os estados desta forma:
* Solicitação recebida: os dados foram registrados.
* Preparando análise: a tarefa está aguardando processamento.
* Análise em andamento: os documentos ou sistemas estão sendo consultados.
* Aguardando informação: é necessário enviar um dado ou aprovar uma etapa.
* Concluído: o resultado está disponível.
* Não foi possível concluir: ocorreu um problema e uma nova ação é necessária.
* Cancelado: o processo foi interrompido.
Dependendo da duração, também pode ser útil informar etapas intermediárias. Uma proposta pode passar por “consultando disponibilidade”, “calculando condições” e “gerando documento”. Uma análise pode passar por “validando arquivos”, “comparando informações” e “preparando relatório”.
O sistema não deve inventar porcentagens apenas para parecer preciso. Quando não houver uma estimativa confiável, é melhor informar a etapa atual e explicar o que falta para a conclusão.
Falhas fazem parte do fluxo
Processos longos interagem com mais componentes e possuem mais pontos de falha.
Um sistema externo pode ficar indisponível. Um documento pode estar corrompido. Uma credencial pode expirar. O modelo pode produzir uma saída fora do formato esperado. O usuário pode cancelar a solicitação enquanto ela ainda está em andamento.
O tratamento de falhas precisa ser planejado antes da automação entrar em produção.
Algumas falhas podem ser tentadas novamente de forma automática. Outras exigem intervenção humana. Há situações em que o cliente precisa fornecer uma nova informação.
A mensagem deve refletir essa diferença:
“Não consegui acessar o sistema de cadastro neste momento. Farei uma nova tentativa automaticamente.”
Ou:
“O documento enviado está protegido por senha. Envie uma versão desbloqueada para que a análise continue.”
A empresa também precisa definir quando o processo deve ser encaminhado para uma pessoa. A supervisão humana funciona melhor quando existem critérios claros para autonomia e aprovação, especialmente em tarefas com impacto financeiro, jurídico ou operacional.
Repetir uma tentativa não pode repetir o efeito
Uma nova tentativa não pode cadastrar o mesmo cliente duas vezes, gerar duas propostas, enviar duas mensagens ou realizar duas cobranças.
Esse cuidado é chamado de idempotência. O sistema usa um identificador único para reconhecer que determinada operação ou evento já foi processado.
O mesmo princípio vale para webhooks. A documentação da OpenAI informa que entregas podem ser repetidas quando o endpoint não responde corretamente e que eventos duplicados podem ocorrer em casos raros. Por isso, a aplicação deve verificar a assinatura da requisição e usar o identificador do webhook para processar cada notificação apenas uma vez.
Exemplos de tarefas que podem continuar após a conversa
A execução assíncrona amplia o campo de atuação dos Agentes IA porque permite transformar uma conversa em trabalho operacional.
Análise de documentos
O cliente envia contratos, laudos, currículos ou relatórios. O Agente registra a solicitação, processa os arquivos e entrega uma análise quando o trabalho termina.
Preparação de propostas
O Agente coleta as necessidades do cliente durante a conversa. Depois, consulta preços, regras comerciais, disponibilidade e dados do CRM para montar uma proposta personalizada.
Processamento de cadastros
A conversa reúne os dados iniciais, mas a conclusão depende de validações fiscais, consultas externas, análise de documentos e registro em sistemas internos.
Pesquisas com várias fontes
O Agente recebe uma pergunta, consulta diferentes fontes, compara informações e produz um relatório. A documentação de deep research da OpenAI explica que pesquisas com múltiplas etapas podem levar dezenas de minutos e recomenda execução em segundo plano com webhooks para avisar quando o resultado estiver pronto.
Rotinas administrativas
Conferência de informações, atualização de planilhas, organização de arquivos, geração de relatórios e sincronização de sistemas também podem ser iniciadas por uma conversa e finalizadas posteriormente.
O Agente deixa de ser apenas um atendente
Quando toda ação precisa terminar antes da próxima mensagem, o Agente permanece limitado ao ritmo de um chatbot.
A execução assíncrona muda essa lógica. O Agente pode receber uma demanda, transformá-la em trabalho, coordenar ferramentas, acompanhar o processo e retornar com o resultado. Ele não apenas conversa sobre a operação. Ele participa dela.
Essa mudança exige uma arquitetura que trate conversas e processos como elementos relacionados, mas diferentes.
A conversa possui mensagens, contexto e participantes. O processo possui estados, etapas, prazos, tentativas, resultados e falhas. Um pode continuar mesmo quando o outro está temporariamente inativo.
É esse desenho que permite analisar documentos, preparar propostas, processar cadastros ou pesquisar várias fontes sem deixar o cliente preso diante de uma conversa aparentemente travada.
Um processo longo precisa de status, retomada e tratamento de falhas. Não basta aumentar o tempo de espera da conversa.
Obrigado por ler até aqui.
Espero que você saia com pelo menos uma ideia cutucando a cabeça e pedindo para virar prática.
Escrito por: Amplify Agentes Inteligentes
Nos dê sua opinião!
Esse conteúdo foi útil?