fal.ai: como acompanhar uma fila de geração

Acompanhe um pedido na fila da fal.ai, confira estados, recupere o resultado e trate falhas sem repetir a geração. Veja como planejar as tentativas.

17 min de leitura

fal.ai — exemplo visual de resultado da galeria de vídeo — fal.ai

Uma pessoa pede um vídeo, fecha a página e volta depois. O sistema ainda precisa saber se o pedido entrou na fila, se está em processamento e se existe um arquivo que possa ser entregue. Na fal.ai, o identificador retornado ao enviar a solicitação permite acompanhar esse trabalho. O primeiro resultado da chamada é um registro de acompanhamento. A mídia vem em outra etapa.

Este guia acompanha um pedido da preparação até a conferência da saída, incluindo o que fazer quando a consulta falha ou o pedido termina com erro. O exemplo é uma vitrine fictícia de produto, usada para ilustrar decisões sem apresentar um resultado real. O fluxo e os estados foram conferidos na documentação oficial da fal.ai em 6 de novembro de 2026.

Quando usar a fila da fal.ai

Uma geração pode levar mais tempo do que a pessoa quer permanecer na tela. A fila permite enviar o pedido, guardar sua identificação e voltar para acompanhar o processamento. A documentação da fal.ai distingue a chamada direta, a chamada que aguarda o resultado pela fila e o envio assíncrono. A escolha depende de como a aplicação pretende apresentar o trabalho. Métodos de inferência da fal.ai.

Para um processo que precisa continuar depois que a página é fechada, o envio assíncrono separa a aceitação do pedido de sua conclusão. O cliente pode receber uma confirmação com o estado inicial, e o servidor pode consultar o resultado depois. Essa divisão exige que a aplicação mantenha o registro do pedido. Ela também ajuda a informar uma falha de consulta sem iniciar outro trabalho por engano.

O método submit coloca a solicitação na fila e devolve o controle à aplicação. O método subscribe também usa a fila, mas aguarda e acompanha a execução até retornar. A documentação recomenda a fila para fluxos que precisam acompanhar solicitações e lidar com o ciclo de execução. Para este guia, o foco é enviar, consultar e recuperar em etapas separadas.

O vídeo oficial associado a este artigo mostra um exemplo de resultado publicado na galeria da fal.ai. O cartão da galeria atribui o clipe ao endpoint blackforestlabs/flux-3/keyframes-to-video. É uma demonstração visual da mídia gerada. O acompanhamento de fila descrito abaixo está na documentação e não aparece no vídeo. Galeria oficial de vídeo da fal.ai.

Escolha o modelo e confira a entrada

Comece pela tarefa. No exemplo fictício, a equipe quer transformar uma referência de produto em um clipe curto para revisão. Identifique se o modelo recebe texto, uma imagem ou outros tipos de referência e quais parâmetros ele aceita. Modelos com objetivos parecidos podem usar campos e unidades de cobrança diferentes. O nome da categoria na galeria ajuda a procurar, enquanto a página do endpoint orienta a integração.

O Playground permite avaliar as entradas de um modelo e consultar o código correspondente, conforme a documentação. Use a página para entender os campos e montar um primeiro caso. Se precisar comparar modelos, preserve o mesmo objetivo e registre as diferenças de entrada e de saída. Um exemplo bem apresentado na galeria não informa sozinho como o modelo vai tratar a sua referência. Guia do Playground.

Escreva o que precisa aparecer no resultado e quais desvios impedem o aceite. Para a vitrine fictícia, o objeto deve manter sua forma durante a cena e ficar visível no enquadramento destinado à edição. Detalhes secundários, como o cenário, podem ser flexíveis. Registre também se haverá texto ou áudio, pois esses elementos precisam ser conferidos antes do uso.

Use uma referência apropriada ao teste e cuja utilização esteja autorizada. Prepare a entrada sem anexar dados que não façam parte da tarefa. Para o primeiro caso, uma imagem de demonstração e um pedido curto são suficientes para avaliar o fluxo. A estrutura de objetivo, entradas e critérios pode ser reaproveitada de um briefing de agente. Guia de briefing e critérios de entrega.

Prepare o pedido antes de enviar

A documentação inicial mostra como autenticar a chamada a partir do ambiente de execução. Mantenha a chave no servidor ou em outro ambiente autorizado, fora do código enviado ao navegador. Para uma aplicação web, a documentação de inferência orienta usar uma camada no servidor para intermediar as chamadas. A tela do usuário pode receber o estado necessário sem ter acesso à credencial do fornecedor. Guia inicial da fal.ai.

Crie um registro local com o objetivo, o endpoint, os parâmetros escolhidos e a pessoa que pediu o trabalho. Use uma identificação própria para correlacionar esse registro com a resposta do provedor. Um pedido “vitrine versão 1” pode então ser encontrado mesmo se o navegador for fechado. Esse registro também permite conferir quais entradas deram origem a um arquivo entregue mais tarde.

Se houver custo, a confirmação do pedido precisa ocorrer antes de enviar a geração. Mostre a opção escolhida, a quantidade prevista e o que será feito com a saída. Para uma nova tentativa, avalie novamente a necessidade e o consumo correspondente. Acompanhar uma solicitação existente é uma operação diferente de criar outra, e a interface precisa deixar essa diferença clara para a pessoa que a usa.

Defina como representar uma resposta de envio inconclusiva. Se a conexão cair durante a solicitação, a aplicação pode não ter recebido o identificador, mesmo que o pedido já tenha chegado ao provedor. Registre a incerteza e investigue as informações disponíveis antes de repetir o envio. Isso evita tratar uma falha de comunicação como prova de que nada foi criado.

Envie uma vez e guarde o identificador

Ao enviar pelo mecanismo de fila, a API retorna request_id e endereços de acompanhamento. Guarde esses dados junto ao registro local. A documentação explica que as rotas de status e resultado podem usar o proprietário e a aplicação, sem toda a variante presente no identificador do modelo. Usar os endereços retornados evita montar uma rota diferente daquela prevista para o pedido. Referência oficial da Queue API.

Se a pessoa clicar novamente no botão da interface, mostre o pedido que já existe e seu estado. Um clique repetido pode ocorrer porque a confirmação levou mais tempo do que o esperado. Vincule o botão ao registro local e registre a intenção de envio antes de acionar o provedor. A estratégia de deduplicação precisa estar na sua aplicação, com critérios que distingam repetição involuntária de uma nova variante autorizada.

Evite expor campos de autenticação junto aos detalhes do trabalho. O responsável pela revisão precisa do estado, do modelo, da versão e do arquivo correspondente. Informações internas de acesso devem permanecer no ambiente que executa a integração. Uma tela de diagnóstico pode ser útil sem reproduzir integralmente a configuração usada no servidor.

Para o caso fictício, imagine que “vitrine versão 1” recebeu um identificador da fila. Uma segunda pessoa da equipe pode acompanhar esse registro com as permissões apropriadas. Quando a solicitação terminar, o arquivo deve ser associado àquela versão. Isso preserva o vínculo entre o pedido e a saída mesmo quando houver outras gerações para o mesmo produto.

Como ler os estados da fila

A documentação descreve IN_QUEUE, IN_PROGRESS e COMPLETED. Use o significado de cada estado para orientar a tela da aplicação. A posição na fila, quando retornada, informa quantos pedidos estão à frente. A documentação não a apresenta como porcentagem de geração ou horário garantido de entrega.

Estado da fal.aiO que indicaO que fazer na aplicação
IN_QUEUEO pedido está aguardando processamento.Guarde a identificação e mostre a espera.
IN_PROGRESSO pedido está em processamento.Acompanhe o mesmo identificador.
COMPLETEDO processamento chegou ao estado final da fila.Confira erro e resposta. Recupere o resultado quando aplicável.

A documentação da fila descreve campos de erro que podem aparecer em COMPLETED. Por isso, chegar a esse estado abre a etapa de conferir o desfecho. Se houver falha, registre o que o provedor informou. Se houver resultado, recupere a saída e confira o campo previsto no esquema do modelo. A aplicação só deve mostrar o arquivo como disponível quando essa etapa tiver sido cumprida.

A interface pode ter estados próprios como “aguardando conferência”, “resultado aceito” e “precisa de ajuste”. Eles representam o seu processo, não valores recebidos da API. Mantenha essa distinção no registro. Uma saída pode estar pronta para abrir e ainda depender de alguém que confira fidelidade, formato e conteúdo antes da entrega.

Em caso de atualização fora de ordem, compare o identificador e o estado já registrado. Uma consulta antiga que ainda informa espera não deve substituir uma conclusão confirmada mais tarde. Guarde o horário de cada observação e defina quais transições podem ser aplicadas ao registro. Isso ajuda a evitar que a tela volte a mostrar processamento depois de o arquivo ter sido recuperado.

Consulte o mesmo pedido sem repetir a geração

Na consulta periódica, a aplicação usa o identificador para pedir o estado e decide quando consultar outra vez. Escolha um intervalo compatível com o uso e com as condições da integração. Se a pessoa não precisa de atualizações a cada instante, consultas muito próximas acrescentam trabalho sem necessariamente melhorar a informação. Controle também por quanto tempo uma tela ficará aguardando em primeiro plano.

Se o navegador fechar, o registro local pode continuar disponível para retomar a consulta. O servidor deve saber qual pedido consultar e quais resultados já foram tratados. Um limite de espera na interface não altera por si só a solicitação que está no provedor. Informe que a consulta poderá continuar e ofereça uma forma de voltar ao trabalho já criado.

Uma falha temporária ao consultar o estado pode ser registrada separadamente da falha da geração. Em vez de mostrar “vídeo rejeitado” quando a consulta não respondeu, mostre que o estado ainda precisa ser confirmado. Preserve o último estado conhecido e o identificador. Uma tentativa posterior de leitura pode esclarecer o que aconteceu sem gerar outra mídia.

A documentação também apresenta acompanhamento por fluxo de eventos e conclusão por webhook. Use a modalidade que o sistema consegue operar e testar. Em um primeiro fluxo, a consulta periódica pode ser suficiente. Se vários pedidos precisam continuar fora da tela, uma notificação ao servidor pode simplificar a atualização do registro. Mantenha a mesma lógica de conferência do resultado em qualquer modalidade.

Leia também Como webhooks transportam eventos entre sistemas. A integração da fal.ai tem seu próprio formato, que deve ser conferido na documentação oficial.

Recupere o resultado e verifique o arquivo

Use o endereço de resultado retornado ou o método correspondente do cliente oficial. O conteúdo varia com o endpoint. A documentação apresenta, por exemplo, uma lista de imagens para determinados modelos e um objeto de vídeo para modelos desse tipo. Confira a estrutura específica antes de usar campos na aplicação. Um pedido concluído sem o campo esperado deve entrar como pendência de recuperação ou validação.

Guarde a referência da saída com o identificador e os parâmetros do pedido. Para a vitrine fictícia, o revisor deve conseguir ver qual versão foi enviada e qual mídia voltou. O resultado pode incluir informações sobre dimensão ou tipo de conteúdo conforme o modelo. Confira as propriedades necessárias para o seu destino antes de apresentar a mídia como pronta para edição.

Considere também a disponibilidade do arquivo. A documentação da fila chama atenção para URLs de mídia sujeitas às configurações de expiração. Combine como serão tratados os arquivos que precisam continuar acessíveis, quem poderá abri-los e qual é o destino autorizado. Uma URL obtida no processamento é uma referência útil, cuja permanência precisa ser verificada de acordo com a política adotada.

Teste a abertura no contexto em que a mídia será usada. Uma URL retornada em JSON ainda precisa carregar e exibir a saída esperada. Se o arquivo falhar na reprodução, investigue o erro sem repetir automaticamente a geração. Verifique se a referência continua válida e se o programa suporta o conteúdo retornado. O guia de exportação de vídeo traz critérios gerais para essa conferência. Como comparar saídas antes da entrega.

Quando receber a conclusão por webhook

No fluxo com webhook, a fal.ai envia uma notificação de conclusão ao endereço configurado pelo integrador. A documentação distingue OK e ERROR no corpo do webhook dos estados usados na consulta de fila. Trate os dois formatos conforme a origem da informação. Antes de atualizar o registro, confira a autenticidade do evento seguindo a orientação oficial e relacione seu identificador com um pedido conhecido.

O mesmo evento pode ser entregue novamente em caso de tentativa de entrega. Use o request_id para evitar que a aplicação trate a mesma conclusão como uma nova entrega. Registre o evento recebido e garanta que a atualização possa ser repetida sem duplicar arquivos, notificações ou tarefas. Em caso de dúvida sobre o desfecho, consulte o pedido e compare a informação disponível.

Defina também quem vai examinar resultados com erro e quem confirma a saída quando há sucesso. O webhook informa um fato da execução. O aceite de conteúdo pertence ao processo da equipe. Mesmo que o sistema consiga atualizar o estado automaticamente, a validação de fidelidade ou adequação da peça pode continuar em uma etapa própria.

Em um ensaio local, simule duas notificações iguais e observe se existe apenas uma atualização efetiva. Depois, simule uma notificação para um identificador desconhecido. Esse caso ajuda a verificar se o sistema preserva o registro correto em vez de associar o evento ao trabalho mais recente. Testes de caminho feliz e erro podem ser organizados em uma sequência reproduzível. Guia de testes e revisão de falhas.

Trate falha, espera e cancelamento

Separe três situações. O provedor pode informar erro na execução, a aplicação pode falhar ao consultar o estado e o arquivo pode falhar ao abrir depois de recuperado. Cada uma exige uma investigação diferente. Registre a etapa, o identificador e o erro observado. Uma mensagem genérica de “geração falhou” pode levar a repetir um pedido que já tem um resultado aproveitável.

A documentação descreve efeitos diferentes para cancelar um pedido na fila e durante o processamento. Um pedido ainda aguardando pode ser removido. Para um pedido em andamento, a API pode informar que o cancelamento foi solicitado, mas a execução ainda pode terminar. Acompanhe o desfecho do mesmo identificador e apresente o estado que foi confirmado.

Se a equipe quiser uma variante depois de um erro, confira primeiro as entradas e a mensagem retornada. Um formato incompatível, por exemplo, deve ser corrigido antes de outra tentativa. Se o problema foi apenas de consulta, retome o acompanhamento em vez de reenviar. Registre o motivo de uma nova execução para que o processo não acumule pedidos sem uma decisão clara.

Quando a falha for recorrente, monte um caso simples que possa ser examinado isoladamente. Preserve a descrição da entrada, a etapa em que ocorreu e o comportamento esperado. Em geração visual, separar a etapa que falhou ajuda a decidir se vale rever o modelo, o arquivo de entrada ou a forma de consumir o resultado. Como revisar um fluxo de imagem para vídeo.

Confira custo e volume de tentativas

A documentação de Model APIs explica que a cobrança depende da unidade definida para o endpoint. Um modelo pode cobrar por imagem, por megapixel, por segundo de vídeo ou por outra unidade prevista. Confira o valor e a unidade na página do modelo antes de enviar a solicitação. Quando comparar dois modelos, use uma saída compatível para que a estimativa corresponda à tarefa. Unidades de cobrança da Model API.

Separe estimativa, execução e confirmação de consumo. A documentação informa que espera em fila e erros do servidor não são cobrados pelas Model APIs. Para acompanhar valores do seu uso, confira os registros aplicáveis à conta e ao endpoint. Fluxos de implantação de aplicações próprias têm condições distintas, detalhadas na documentação de Serverless.

Um pedido de revisão do vídeo pode exigir somente examinar a saída. Um pedido de nova variante pode iniciar outra geração. A interface precisa deixar essa escolha visível. Se a pessoa pedir para ver o que já ficou pronto, consulte o registro. Se quiser mudar a referência ou a duração, prepare o novo pedido e reconfirme as condições de execução.

Combine o limite de tentativas antes de iniciar um lote. Se o primeiro clipe perder a forma do objeto, entenda por que antes de gerar muitas versões. Uma comparação com o mesmo objetivo, mudando um aspecto de cada vez, facilita avaliar a causa. A escolha de fazer mais tentativas deve acompanhar o benefício esperado para a entrega.

Revise a mídia antes de entregar

Assista ao clipe inteiro e compare com os critérios definidos. No exemplo, verifique se o objeto continua reconhecível do início ao fim e se o enquadramento deixa espaço para a montagem. Observe também elementos adicionados pela geração. Um texto incorreto, uma marca não solicitada ou uma alteração de forma pode exigir nova revisão, mesmo que o arquivo abra normalmente.

Registre o estado de aceite de forma objetiva. “Arquivo abriu, formato conferido, revisão de marca pendente” informa o que foi verificado e o que continua em análise. Isso permite que o próximo responsável trabalhe com a versão certa. Para uma entrega que depende de ajustes em outra ferramenta, indique qual parte será concluída fora do processo de geração.

Compare com a intenção do pedido, não com o melhor exemplo da galeria. Um clipe oficial pode ajudar a entender possibilidades, mas o seu caso usa entradas, parâmetros e critérios próprios. A saída será útil se atender ao objetivo combinado e puder ser usada no destino. Qualidade visual e funcionamento do acompanhamento são avaliações complementares.

Leia também Como preparar e revisar uma geração de vídeo. A ferramenta é diferente e o roteiro ajuda a separar planejamento, versão e aceite.

Ensaie os estados com respostas simuladas

Antes de executar uma geração, prepare registros de exemplo para testar a interface. Simule um pedido aguardando, depois um em processamento e, por fim, uma saída concluída. Use identificadores inventados dentro do seu ambiente de teste e um arquivo de demonstração autorizado. Assim, você verifica o que a aplicação mostra em cada caso antes de conectar uma chamada real.

Inclua uma conclusão com erro e uma falha temporária de consulta. Teste se a interface diferencia as duas e se mantém o vínculo com o pedido original. Simule também uma pessoa que volta depois de fechar a página. O registro precisa recuperar a última informação conhecida e continuar consultando a mesma identificação quando a integração real estiver conectada.

Registre a expectativa de cada cenário. Para o caso de cancelamento solicitado, por exemplo, a interface pode mostrar que ainda está aguardando confirmação. Para a conclusão sem arquivo acessível, pode indicar que a saída precisa de conferência. Um ensaio assim avalia o comportamento da aplicação. A validação com o provedor, quando autorizada, continua sendo a etapa para observar os retornos reais.

Perguntas frequentes sobre a fila da fal.ai

O que preciso guardar quando envio um pedido?

Guarde o request_id, os endereços de acompanhamento retornados e o vínculo com o registro local. Isso permite consultar e recuperar o mesmo trabalho depois.

O estado COMPLETED confirma que a mídia pode ser usada?

Confira o desfecho e recupere a resposta esperada para o modelo. A documentação prevê campos de erro no estado final. Quando houver mídia, valide a abertura e o conteúdo antes de aceitar a entrega.

Posso acompanhar sem deixar a página aberta?

Um fluxo assíncrono pode guardar o identificador no servidor e retomar a consulta ou receber um evento de conclusão. A interface precisa recuperar esse registro quando a pessoa voltar.

Qual é a diferença entre consulta periódica e webhook?

Na consulta, sua aplicação busca o estado do pedido. No webhook, o provedor envia a conclusão ao endereço configurado. Em ambos, relacione a informação com o pedido correspondente e confira a saída.

Cancelar uma geração em andamento encerra o trabalho na hora?

A documentação informa que uma solicitação de cancelamento durante o processamento pode ser aceita sem interromper imediatamente a execução. Consulte o desfecho antes de marcar o trabalho como cancelado.

Como estimar o custo de um pedido?

Identifique o endpoint e a unidade de cobrança descrita para ele. Confira quantidade, duração e resolução quando forem relevantes e registre as condições da tentativa antes de enviar.

Felipe Zanoni

Felipe Zanoni

Agência Café Online. Escreve sobre aplicação prática de inteligência artificial e automação nas empresas.

Artigos relacionados