As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Envie um lote de solicitações com a API OpenAI Batch
Você pode executar um trabalho de inferência em lote usando a API OpenAI Create batch com modelos Amazon BedrockOpenAI.
Você pode chamar a API OpenAI Create batch das seguintes formas:
Selecione um tópico para saber mais:
Modelos e regiões compatíveis com a API OpenAI em lote
Você pode usar a API OpenAI Create batch com todos os OpenAI modelos compatíveis com o Amazon Bedrock e nas AWS regiões que oferecem suporte a esses modelos. Para obter mais informações sobre modelos e regiões compatíveis, consulteModelos de base compatíveis no Amazon Bedrock.
Pré-requisitos para usar a API em lote OpenAI
Para ver os pré-requisitos para usar as operações de API OpenAI em lote, escolha a guia do seu método preferido e siga as etapas:
- OpenAI SDK
-
-
Autenticação — O OpenAI SDK só oferece suporte à autenticação com uma chave de API do Amazon Bedrock. Gere uma chave de API Amazon Bedrock para autenticar sua solicitação. Para saber mais sobre as chaves de API do Amazon Bedrock e como gerá-las, consulteGere chaves de API do Amazon Bedrock para se autenticar facilmente na API do Amazon Bedrock.
-
Endpoint — Encontre o endpoint que corresponde à AWS região a ser usada nos endpoints e cotas do Amazon Bedrock Runtime. Se você usa um AWS SDK, talvez precise especificar apenas o código da região e não o endpoint inteiro ao configurar o cliente.
-
Acesso ao modelo — Solicite acesso a um modelo Amazon Bedrock que ofereça suporte a esse recurso. Para obter mais informações, consulte Adicionar ou remover o acesso aos modelos de base do Amazon Bedrock.
-
Instalar um OpenAI SDK — Para obter mais informações, consulte Bibliotecas na OpenAI documentação.
-
Arquivo JSONL em lote carregado para o S3 — Siga as etapas em Preparar seu arquivo em lote na OpenAI documentação para preparar seu arquivo em lote com o formato correto. Em seguida, faça o upload para um bucket do Amazon S3.
-
Permissões do IAM — Certifique-se de ter as seguintes identidades do IAM com as permissões adequadas:
- HTTP request
-
-
Autenticação — Você pode se autenticar com suas AWS credenciais ou com uma chave de API Amazon Bedrock.
Configure suas AWS credenciais ou gere uma chave de API Amazon Bedrock para autenticar sua solicitação.
-
Endpoint — Encontre o endpoint que corresponde à AWS região a ser usada nos endpoints e cotas do Amazon Bedrock Runtime. Se você usa um AWS SDK, talvez precise especificar apenas o código da região e não o endpoint inteiro ao configurar o cliente.
-
Acesso ao modelo — Solicite acesso a um modelo Amazon Bedrock que ofereça suporte a esse recurso. Para obter mais informações, consulte Adicionar ou remover o acesso aos modelos de base do Amazon Bedrock.
-
Arquivo JSONL em lote carregado para o S3 — Siga as etapas em Preparar seu arquivo em lote na OpenAI documentação para preparar seu arquivo em lote com o formato correto. Em seguida, faça o upload para um bucket do Amazon S3.
-
Permissões do IAM — Certifique-se de ter as seguintes identidades do IAM com as permissões adequadas:
Criar um trabalho OpenAI em lotes
Para obter detalhes sobre a API OpenAI Create batch, consulte os seguintes recursos na OpenAI documentação:
-
Criar lote — detalha a solicitação e a resposta.
-
O objeto de saída da solicitação — detalha os campos da saída gerada do trabalho em lotes. Consulte esta documentação ao interpretar os resultados em seu bucket do S3.
Formular a solicitação
Ao formar a solicitação de inferência em lote, observe os seguintes campos e valores específicos do Amazon Bedrock:
Cabeçalhos de solicitação
Parâmetros do corpo da solicitação:
Encontre os resultados gerados
A resposta de criação inclui uma ID de lote. Os resultados e o registro de erros do trabalho de inferência em lote são gravados na pasta do S3 que contém o arquivo de entrada. Os resultados estarão em uma pasta com o mesmo nome da ID do lote, como na seguinte estrutura de pastas:
---- {batch_input_folder}
|---- {batch_input}.jsonl
|---- {batch_id}
|---- {batch_input}.jsonl.out
|---- {batch_input}.jsonl.err
Para ver exemplos de uso da API OpenAI Create batch com métodos diferentes, escolha a guia do seu método preferido e siga as etapas:
- OpenAI SDK (Python)
-
Para criar um trabalho em lotes com o OpenAI SDK, faça o seguinte:
-
Importe o OpenAI SDK e configure o cliente com os seguintes campos:
-
base_url
— Prefixe o endpoint do Amazon Bedrock Runtime para/openai/v1
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1
-
api_key
— Especifique uma chave de API do Amazon Bedrock.
-
default_headers
— Se precisar incluir algum cabeçalho, você pode incluí-lo como pares de valores-chave nesse objeto. Como alternativa, você pode especificar cabeçalhos no extra_headers
ao fazer uma chamada de API específica.
-
Use o método batches.create () com o cliente.
Antes de executar o exemplo a seguir, substitua os espaços reservados nos seguintes campos:
-
api_key — Substitua pela sua chave $AWS_BEARER_TOKEN_BEDROCK
de API real.
-
X-Amzn-BedrockRoleArn — arn:aws:iam::123456789012:role/BatchServiceRole
Substitua pela função real do serviço de inferência em lote que você configurou.
-
input_file_id — s3://amzn-s3-demo-bucket/openai-input.jsonl
Substitua pelo URI real do S3 para o qual você carregou seu arquivo JSONL em lote.
O exemplo chama a API OpenAI Create batch job em us-west-2
e inclui uma parte dos metadados.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK", # Replace with actual API key
default_headers={
"X-Amzn-Bedrock-RoleArn": "arn:aws:iam::123456789012:role/BatchServiceRole" # Replace with actual service role ARN
}
)
job = client.batches.create(
input_file_id="s3://amzn-s3-demo-bucket/openai-input.jsonl", # Replace with actual S3 URI
endpoint="/v1/chat/completions",
completion_window="24h",
metadata={
"description": "test input"
},
extra_headers={
"X-Amzn-Bedrock-ModelId": "openai.gpt-oss-20b-1:0",
}
)
print(job)
- HTTP request
-
Para criar uma conclusão de bate-papo com uma solicitação HTTP direta, faça o seguinte:
-
Use o método POST e especifique a URL prefixando o endpoint do Amazon Bedrock Runtime como/openai/v1/batches
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1/batches
-
Especifique suas AWS credenciais ou uma chave de API do Amazon Bedrock no cabeçalho. Authorization
Antes de executar o exemplo a seguir, primeiro substitua os espaços reservados nos seguintes campos:
-
Autorização — $AWS_BEARER_TOKEN_BEDROCK
Substitua pela sua chave de API real.
-
X-Amzn-BedrockRoleArn — arn:aws:iam::123456789012:role/BatchServiceRole
Substitua pela função real do serviço de inferência em lote que você configurou.
-
input_file_id — s3://amzn-s3-demo-bucket/openai-input.jsonl
Substitua pelo URI real do S3 para o qual você carregou seu arquivo JSONL em lote.
O exemplo a seguir chama a API de conclusão de bate-papo Create us-west-2
e inclui uma parte dos metadados:
curl -X POST 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK' \
-H 'Content-Type: application/json' \
-H 'X-Amzn-Bedrock-ModelId: openai.gpt-oss-20b-1:0' \
-H 'X-Amzn-Bedrock-RoleArn: arn:aws:iam::123456789012:role/BatchServiceRole' \
-d '{
"input_file_id": "s3://amzn-s3-demo-bucket/openai-input.jsonl",
"endpoint": "/v1/chat/completions",
"completion_window": "24h",
"metadata": {"description": "test input"}
}'
Recuperar um trabalho em OpenAI lotes
Para obter detalhes sobre a solicitação e a resposta da API OpenAI Retrieve batch, consulte Retrieve batch.
Ao fazer a solicitação, você especifica a ID do trabalho em lotes para o qual obter informações. A resposta retorna informações sobre um trabalho em lotes, incluindo os nomes dos arquivos de saída e de erro que você pode pesquisar nos buckets do S3.
Para ver exemplos de uso da API OpenAI Retrieve batch com métodos diferentes, escolha a guia do seu método preferido e siga as etapas:
- OpenAI SDK (Python)
-
Para recuperar um trabalho em lotes com o OpenAI SDK, faça o seguinte:
-
Importe o OpenAI SDK e configure o cliente com os seguintes campos:
-
base_url
— Prefixe o endpoint do Amazon Bedrock Runtime para/openai/v1
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1
-
api_key
— Especifique uma chave de API do Amazon Bedrock.
-
default_headers
— Se precisar incluir algum cabeçalho, você pode incluí-lo como pares de valores-chave nesse objeto. Como alternativa, você pode especificar cabeçalhos no extra_headers
ao fazer uma chamada de API específica.
-
Use o método batches.retrieve () com o cliente e especifique a ID do lote para o qual as informações serão recuperadas.
Antes de executar o exemplo a seguir, substitua os espaços reservados nos seguintes campos:
O exemplo chama a API OpenAI Retrieve batch job us-west-2
em um trabalho em lote cujo ID ébatch_abc123
.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
Para recuperar um trabalho em lotes com uma solicitação HTTP direta, faça o seguinte:
-
Use o método GET e especifique a URL prefixando o endpoint do Amazon Bedrock Runtime como/openai/v1/batches/${batch_id}
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1/batches/batch_abc123
-
Especifique suas AWS credenciais ou uma chave de API do Amazon Bedrock no cabeçalho. Authorization
Antes de executar o exemplo a seguir, primeiro substitua os espaços reservados nos seguintes campos:
-
Autorização — $AWS_BEARER_TOKEN_BEDROCK
Substitua pela sua chave de API real.
-
batch_abc123 — No caminho, substitua esse valor pela ID real do seu trabalho em lotes.
O exemplo a seguir chama a API OpenAI Retrieve batch em um trabalho us-west-2
em lotes cujo ID ébatch_abc123
.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'
Listar trabalhos OpenAI em lote
Para obter detalhes sobre a solicitação e a resposta da API OpenAI List batches, consulte List batches. A resposta retorna uma série de informações sobre seus trabalhos em lotes.
Ao fazer a solicitação, você pode incluir parâmetros de consulta para filtrar os resultados. A resposta retorna informações sobre um trabalho em lotes, incluindo os nomes dos arquivos de saída e de erro que você pode pesquisar nos buckets do S3.
Para ver exemplos de uso da API OpenAI List batches com métodos diferentes, escolha a guia do seu método preferido e siga as etapas:
- OpenAI SDK (Python)
-
Para listar trabalhos em lote com o OpenAI SDK, faça o seguinte:
-
Importe o OpenAI SDK e configure o cliente com os seguintes campos:
-
base_url
— Prefixe o endpoint do Amazon Bedrock Runtime para/openai/v1
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1
-
api_key
— Especifique uma chave de API do Amazon Bedrock.
-
default_headers
— Se precisar incluir algum cabeçalho, você pode incluí-lo como pares de valores-chave nesse objeto. Como alternativa, você pode especificar cabeçalhos no extra_headers
ao fazer uma chamada de API específica.
-
Use o método batches.list () com o cliente. Você pode incluir qualquer um dos parâmetros opcionais.
Antes de executar o exemplo a seguir, substitua os espaços reservados nos seguintes campos:
O exemplo chama a API OpenAI List batch jobs us-west-2
e especifica um limite de 2 resultados a serem retornados.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
Para listar trabalhos em lotes com uma solicitação HTTP direta, faça o seguinte:
-
Use o método GET e especifique a URL prefixando o endpoint do Amazon Bedrock Runtime como/openai/v1/batches
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1/batches
Você pode incluir qualquer um dos parâmetros de consulta opcionais.
-
Especifique suas AWS credenciais ou uma chave de API do Amazon Bedrock no cabeçalho. Authorization
Antes de executar o exemplo a seguir, primeiro substitua os espaços reservados nos seguintes campos:
O exemplo a seguir chama a API OpenAI List batches us-west-2
e especifica um limite de 2 resultados a serem retornados.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'
Cancelar um trabalho OpenAI em lotes
Para obter detalhes sobre a solicitação e a resposta da API OpenAI Cancelar lote, consulte Cancelar lote. A resposta retorna informações sobre o trabalho em lotes cancelado.
Ao fazer a solicitação, você especifica a ID do trabalho em lotes que deseja cancelar.
Para ver exemplos de uso da API OpenAI Cancel batch com métodos diferentes, escolha a guia do seu método preferido e siga as etapas:
- OpenAI SDK (Python)
-
Para cancelar um trabalho em lotes com o OpenAI SDK, faça o seguinte:
-
Importe o OpenAI SDK e configure o cliente com os seguintes campos:
-
base_url
— Prefixe o endpoint do Amazon Bedrock Runtime para/openai/v1
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1
-
api_key
— Especifique uma chave de API do Amazon Bedrock.
-
default_headers
— Se precisar incluir algum cabeçalho, você pode incluí-lo como pares de valores-chave nesse objeto. Como alternativa, você pode especificar cabeçalhos no extra_headers
ao fazer uma chamada de API específica.
-
Use o método batches.cancel () com o cliente e especifique a ID do lote para o qual as informações serão recuperadas.
Antes de executar o exemplo a seguir, substitua os espaços reservados nos seguintes campos:
O exemplo chama a API de OpenAI cancelamento de trabalhos em lotes us-west-2
em um trabalho em lotes cujo ID ébatch_abc123
.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.cancel(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
Para cancelar um trabalho em lotes com uma solicitação HTTP direta, faça o seguinte:
-
Use o método POST e especifique a URL prefixando o endpoint do Amazon Bedrock Runtime como/openai/v1/batches/${batch_id}
/cancel
, conforme o seguinte formato:
https://${bedrock-runtime-endpoint}
/openai/v1/batches/batch_abc123
/cancel
-
Especifique suas AWS credenciais ou uma chave de API do Amazon Bedrock no cabeçalho. Authorization
Antes de executar o exemplo a seguir, primeiro substitua os espaços reservados nos seguintes campos:
-
Autorização — $AWS_BEARER_TOKEN_BEDROCK
Substitua pela sua chave de API real.
-
batch_abc123 — No caminho, substitua esse valor pela ID real do seu trabalho em lotes.
O exemplo a seguir chama a API OpenAI Cancel batch us-west-2
em um trabalho em lotes cujo ID ébatch_abc123
.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123/cancel' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'