OpenAI Batch API e Anthropic Message Batches resolvem o mesmo problema operacional: processar muitas requisições sem esperar cada resposta na tela. O caminho de entrada, porém, não é igual. Na OpenAI, você prepara um arquivo JSONL, faz upload e cria o lote apontando para esse arquivo. Na Anthropic, envia uma lista de requisições da Messages API ao criar o lote. A melhor escolha depende também do modelo, dos dados que podem ser enviados e da rotina que sua equipe consegue auditar.
Este comparativo foi apurado nas documentações oficiais consultadas em 13 de outubro de 2026. O Bastidores não executou benchmark, não processou dados de clientes nas APIs e não mediu latência real. As recomendações são análise editorial sobre fluxos documentados, não resultado de um teste lado a lado.
Capa: ilustração editorial original de uma fila de tarefas dividida em duas rotas. Não é captura real de produto nem resultado de teste.
O que está sendo comparado
O recorte é processamento assíncrono de requisições de modelos. Não se trata de comparar a qualidade de GPT e Claude, nem de substituir uma chamada síncrona quando o usuário precisa de resposta imediata. A OpenAI apresenta Batch API para avaliações, classificação e criação de embeddings, entre outros trabalhos que toleram espera. A Anthropic apresenta Message Batches para agrupar chamadas à Messages API. A adequação depende da tarefa concreta, do modelo escolhido e dos requisitos de conformidade.
Comparação direta
| Critério | OpenAI Batch API | Anthropic Message Batches |
|---|---|---|
| Entrada do lote | Arquivo JSONL enviado com finalidade de batch; depois, criação do lote com o identificador do arquivo e o endpoint. | Lista de requisições com custom_id e parâmetros da Messages API enviada na criação do lote. |
| Saída | Arquivos de resultados e de erros associados ao lote, recuperados por identificador. | Resultados em JSONL obtidos pela URL de resultados do lote. |
| Prazo documentado | Janela de conclusão de 24 horas; requisições não concluídas podem expirar. | Até 24 horas; o lote também pode expirar antes de concluir tudo. |
| Reconciliação | Use custom_id; a ordem de saída pode diferir da entrada. |
Use custom_id; a ordem dos resultados não é garantida. |
| Desconto documentado | 50% em relação às APIs síncronas correspondentes. | Cobrança de uso de batch a 50% do preço padrão da API. |
| Principal atenção operacional | Preparar, versionar e proteger o arquivo de entrada e conferir saídas parciais. | Validar o formato de cada mensagem, controlar o Workspace e baixar os resultados dentro do prazo. |
Os valores acima são descontos relativos documentados, não uma estimativa de conta nem uma garantia de economia total do projeto. Modelo, volume, ferramentas chamadas e processamento adicional continuam importando. Consulte o guia da OpenAI e o guia da Anthropic antes de orçar uma carga real.
Entrada: arquivo ou lista de mensagens
Na OpenAI, cada linha do JSONL descreve uma requisição e traz um custom_id único. O arquivo é enviado à Files API com finalidade batch; depois, a criação do lote informa o arquivo, um endpoint como /v1/responses e a janela de conclusão. A referência de criação registra os limites atuais de até 50 mil requisições e 200 MB por arquivo. Esses limites são teto de formato, não sugestão para começar no máximo.
Na Anthropic, a requisição de criação contém uma lista de itens, cada um com custom_id e params da Messages API. A documentação de processamento informa limite de 100 mil mensagens ou 256 MB, o que ocorrer primeiro. Isso pode simplificar um serviço que já monta chamadas à Messages API em memória. Por outro lado, uma equipe que já produz e audita arquivos de trabalho pode preferir a etapa explícita de arquivo da OpenAI. Esta última frase é análise do fluxo de integração, não uma promessa de desempenho.
Resultado parcial não é fracasso total
As duas plataformas admitem que a ordem dos resultados não seja a mesma da entrada. Portanto, contar a linha 20 como resposta da requisição 20 é um erro de implementação. O custom_id precisa ser estável, único no lote e associado a um registro interno sem dados pessoais desnecessários. Tanto o guia da OpenAI quanto o guia da Anthropic alertam sobre a ordem variável.
Ao fim, reconcilie três conjuntos: itens enviados, itens com sucesso e itens com erro, cancelamento ou expiração. Na OpenAI, há arquivo de saída e arquivo de erros, e requisições concluídas antes da expiração podem continuar disponíveis. Na Anthropic, cada resultado identifica seu estado, inclusive succeeded, errored, canceled e expired. Um pipeline que apenas verifica se o lote chegou ao estado final pode deixar tarefas sem processamento e publicar um relatório incompleto.
Prazo e custo sem falsa precisão
A janela documentada é de 24 horas nas duas APIs. Isso não significa que toda carga levará exatamente um dia, nem que todos os itens terminarão. Dependência de uma resposta em poucos segundos aponta para a API síncrona; classificação noturna, enriquecimento de registros já autorizados ou avaliação em lote podem tolerar espera. Se uma entrega tem prazo rígido, reserve tempo para baixar resultados, repetir apenas falhas e revisar a amostra antes de liberar o produto.
Ambas anunciam desconto relativo de 50% para batch. Essa é uma comparação de política de cobrança, não de preço final entre fornecedores: tokens de entrada e saída, modelo, ferramentas e tamanho do prompt variam. Não há nesta matéria uma tabela de preços por modelo porque ela envelhece rapidamente. Faça uma amostra pequena, leia o consumo reportado e confirme a página de preços do provedor escolhido antes de calcular orçamento. Evite assumir que cache, batch ou outras modalidades se somam da mesma maneira em todos os casos.
Dados, retenção e permissão
O arquivo de entrada, as mensagens e os resultados podem conter informação pessoal, código privado ou documentos de cliente. Antes do envio, reduza campos, remova segredos, confirme autorização e determine quem pode recuperar saídas. A Anthropic informa que resultados ficam disponíveis por 29 dias após a criação do lote e são isolados por Workspace. O guia da OpenAI informa que o arquivo de saída é eliminado automaticamente 30 dias depois da conclusão. Essas regras não substituem a leitura do contrato, da política de retenção aplicável e das configurações da organização.
Baixe o que precisa dentro do prazo e armazene somente o necessário sob a política da sua equipe. Também defina um responsável pela reconciliação e pela exclusão local dos arquivos temporários. Se um requisito contratual proíbe a transmissão dos dados a qualquer um dos provedores, o desconto não muda essa restrição. Use dados sintéticos ou anonimizados para validar a integração antes de solicitar aprovação para dados reais.
Como decidir com um piloto pequeno
- Separe um conjunto autorizado com casos comuns, entradas inválidas e conteúdo que deve ser recusado.
- Fixe a tarefa, o critério de aceite e o modelo antes de medir qualquer resultado.
- Crie identificadores internos únicos e registre a versão do conjunto de entrada.
- Envie um lote pequeno no formato oficial de cada plataforma que esteja no escopo do projeto.
- Faça a reconciliação por
custom_id, confira erros e teste o tratamento de uma expiração ou cancelamento. - Revise manualmente uma amostra das respostas e avalie o custo reportado, o esforço de operação e a política de dados.
Esse piloto não pretende dizer qual modelo escreve melhor. Ele responde se a equipe consegue entregar uma tarefa assíncrona completa, rastreável e segura com o fluxo escolhido. Compare o trabalho de preparar entrada, acompanhar o estado, recuperar resultados e corrigir falhas. Uma API com mais capacidade declarada pode ser uma escolha pior se a rotina local não consegue auditar o que ficou para trás.
Veredito e limites deste comparativo
Escolha a OpenAI Batch API se sua aplicação já usa endpoints da OpenAI e faz sentido manter um arquivo JSONL como artefato versionável. Escolha Anthropic Message Batches se a aplicação já usa a Messages API e é mais simples construir a lista de requisições diretamente. Se o requisito decisivo for qualidade da resposta, proteção contratual de dados ou custo total, não decida apenas por esta tabela. Teste a tarefa real, confirme a disponibilidade do modelo e submeta o resultado à revisão responsável.
Limites deste comparativo: não executamos benchmark, não comparamos qualidade de modelos, não medimos tempo de processamento nem validamos descontos em uma fatura. A documentação pode mudar. Verifique os limites e preços vigentes antes de implantar.
