Skip to main content
A Batch API para Large Language Models permite o processamento assíncrono de inúmeras solicitações de inferência e é totalmente compatível com o padrão da OpenAI API. A Batch API é uma solução econômica quando resultados de inferência imediatos não são necessários. Ela oferece limites de taxa mais altos do que chamadas online, garantindo que os resultados sejam entregues dentro de um prazo razoável de 24 horas. Esta API é ideal para:
  • Realizar avaliações e análise de dados.
  • Classificar conjuntos de dados extensos.
  • Gerar resumos de documentos em modo offline.
Modelos compatíveis:

Início rápido

1. Preparar arquivos de lote

A Batch API usa arquivos no formato .jsonl como entrada, com cada linha representando os detalhes de uma solicitação de inferência da API. Os endpoints disponíveis incluem /v1/chat/completions e /v1/completions.
Defina o parâmetro endpoint como /v1/chat/completions ou /v1/completions para compatibilidade com a OpenAI API.
Cada solicitação deve incluir um custom_id exclusivo para localizar os resultados de inferência no arquivo de saída após a conclusão do lote. Os parâmetros no campo body de cada linha são enviados como parâmetros reais da solicitação de inferência para o endpoint.
Todas as solicitações em um único arquivo JSONL de lote devem direcionar para o mesmo modelo. Não misture solicitações para modelos diferentes em um lote.
Abaixo está um exemplo de arquivo de entrada contendo 2 solicitações:

2. Fazer upload do arquivo de entrada do lote

Faça upload do arquivo de entrada do lote para garantir que ele possa ser referenciado com precisão ao criar um lote. Use a Files API para fazer upload do seu arquivo .jsonl e defina o purpose como batch. Observe que o arquivo será retido por 15 dias.
Para saber como obter a chave de API, consulte Gerenciamento de chaves de API.
Exemplo de código Python
Curl
Resposta de exemplo após o upload bem-sucedido do arquivo:

3. Criar um lote

Depois que o arquivo de entrada for carregado com sucesso, você poderá iniciar um lote usando o ID do objeto File carregado. A janela de conclusão é fixa em 24h e atualmente não é ajustável. Exemplo de código Python
Curl
Esta solicitação retornará um objeto Batch que inclui metadados sobre seu lote, conforme ilustrado no exemplo abaixo:

4. Verificar o status de um lote

Você pode verificar o status de um lote a qualquer momento para receber as informações mais recentes do lote. Os valores de enumeração de status do objeto Batch são os seguintes:
StatusDescrição
VALIDATINGO arquivo de entrada está sendo validado antes que o lote possa começar
PROGRESSO lote está em andamento
COMPLETEDO processamento do lote foi concluído com sucesso
FAILEDO processamento do lote falhou
EXPIREDO lote excedeu o prazo
CANCELLINGO lote está sendo cancelado
CANCELLEDO lote foi cancelado
Exemplo de código Python
Curl

5. Recuperar os resultados

Depois que a inferência em lote for concluída, você poderá baixar o arquivo de saída de resultados usando o campo output_file_id do objeto Batch. O arquivo de saída de resultados será excluído 30 dias após a conclusão da inferência em lote, portanto, recupere-o prontamente por meio da interface. Exemplo de código Python
Curl
A resposta retorna o conteúdo bruto do arquivo. Para arquivos de saída em lote, cada linha contém uma resposta como esta:

Instruções

Limitações

  1. Cada lote pode conter até 50.000 solicitações.
  2. O tamanho máximo do arquivo de entrada por lote é de 100 MB.

Tratamento de erros

Erros encontrados durante o processamento em lote são registrados em um arquivo de erro separado, acessível por meio do campo error_file_id. Códigos de erro comuns incluem:
Código de erroDescriçãoSolução
400Formato de solicitação inválidoVerifique a sintaxe JSONL e os campos obrigatórios
401Falha na autenticaçãoVerifique a chave de API
404Lote não encontradoVerifique o ID do lote
429Limite de taxa excedidoReduza a frequência das solicitações
500Erro do servidorEntre em contato conosco

Expiração de lotes

Lotes não concluídos em 24 horas passarão para o estado EXPIRED. Solicitações não finalizadas serão canceladas, enquanto solicitações concluídas serão fornecidas por meio de um arquivo de saída. Você paga apenas pelos tokens consumidos pelas solicitações concluídas. O lote faz todos os esforços para ser concluído em 24 horas.

Todas as APIs de lote

  1. Criar lote
  2. Recuperar lote
  3. Cancelar lote
  4. Listar lotes
  5. Fazer upload de arquivo
  6. Listar arquivos
  7. Recuperar arquivo
  8. Excluir arquivo
  9. Recuperar conteúdo do arquivo
Última modificação em 15 de maio de 2026