Gere respostas usando OpenAI APIs - Amazon Bedrock

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á.

Gere respostas usando OpenAI APIs

O Amazon Bedrock fornece endpoints de API OpenAI compatíveis para inferência de modelos, com tecnologia do Mantle, um mecanismo de inferência distribuído para fornecimento de modelos de aprendizado de máquina em grande escala. Esses endpoints permitem que você use ferramentas familiares OpenAI SDKs e ferramentas com os modelos Amazon Bedrock, permitindo que você migre aplicativos existentes com o mínimo de alterações de código — basta atualizar sua URL base e chave de API.

Os benefícios importantes incluem:

  • Inferência assíncrona — Support para cargas de trabalho de inferência de longa duração por meio da API de respostas

  • Gerenciamento de conversas com estado — reconstrua automaticamente o contexto sem passar manualmente o histórico de conversas com cada solicitação

  • Uso simplificado de ferramentas — integração simplificada para fluxos de trabalho agentes

  • Modos de resposta flexíveis — Support para respostas de streaming e não streaming

  • Fácil migração — Compatível com as bases de código OpenAI SDK existentes

Regiões e endpoints compatíveis

O Amazon Bedrock está disponível nas seguintes AWS regiões:

Nome da região Região Endpoint
Leste dos EUA (Ohio) us-east-2 bedrock-mantle.us-east-2.api.aws
Leste dos EUA (Norte da Virgínia) us-east-1 bedrock-mantle.us-east-1.api.aws
Oeste dos EUA (Oregon) us-west-2 bedrock-mantle.us-west-2.api.aws
Ásia-Pacífico (Jacarta) ap-southeast-3 bedrock-mantle.ap-southeast-3.api.aws
Ásia-Pacífico (Mumbai) ap-south-1 bedrock-mantle.ap-south-1.api.aws
Ásia-Pacífico (Tóquio) ap-northeast-1 bedrock-mantle.ap-northeast-1.api.aws
Europa (Frankfurt) eu-central-1 bedrock-mantle.eu-central-1.api.aws
Europa (Irlanda) eu-west-1 bedrock-mantle.eu-west-1.api.aws
Europa (Londres) eu-west-2 bedrock-mantle.eu-west-2.api.aws
Europa (Milão) eu-south-1 bedrock-mantle.eu-south-1.api.aws
Europa (Estocolmo) eu-north-1 bedrock-mantle.eu-north-1.api.aws
América do Sul (São Paulo) sa-east-1 bedrock-mantle.sa-east-1.api.aws

Pré-requisitos

Antes de usar OpenAI APIs, verifique se você tem o seguinte:

  • Autenticação — Você pode autenticar usando:

    • Chave de API Amazon Bedrock (necessária para o OpenAI SDK)

    • AWScredenciais (suportadas para solicitações HTTP)

  • OpenAISDK (opcional) — Instale o SDK do OpenAI Python se estiver usando solicitações baseadas em SDK.

  • Variáveis de ambiente — Defina as seguintes variáveis de ambiente:

    • OPENAI_API_KEY— Defina sua chave de API Amazon Bedrock

    • OPENAI_BASE_URL— Defina como o endpoint Amazon Bedrock da sua região (por exemplo,) https://bedrock-mantle.us-east-1.api.aws/v1

API de modelos

A API de modelos permite que você descubra modelos disponíveis no Amazon Bedrock com tecnologia Mantle. Use essa API para recuperar uma lista de modelos que você pode usar com a API de respostas e a API de conclusão de bate-papo. Para obter detalhes completos da API, consulte a documentação dos OpenAI modelos.

Listar modelos disponíveis

Para listar os modelos disponíveis, escolha a guia do seu método preferido e siga as etapas:

OpenAI SDK (Python)
# List all available models using the OpenAI SDK # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables from openai import OpenAI client = OpenAI() models = client.models.list() for model in models.data: print(model.id)
HTTP request

Faça uma solicitação GET para/v1/models:

# List all available models # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables curl -X GET $OPENAI_BASE_URL/models \ -H "Authorization: Bearer $OPENAI_API_KEY"

API de respostas

A API de respostas fornece gerenciamento de conversas com estado, com suporte para streaming, processamento em segundo plano e interações em vários turnos. Para obter detalhes completos da API, consulte a documentação de OpenAI respostas.

Solicitação básica

Para criar uma resposta, escolha a guia do seu método preferido e siga as etapas:

OpenAI SDK (Python)
# Create a basic response using the OpenAI SDK # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables from openai import OpenAI client = OpenAI() response = client.responses.create( model="openai.gpt-oss-120b", input=[ {"role": "user", "content": "Hello! How can you help me today?"} ] ) print(response)
HTTP request

Faça uma solicitação POST para/v1/responses:

# Create a basic response # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables curl -X POST $OPENAI_BASE_URL/responses \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "openai.gpt-oss-120b", "input": [ {"role": "user", "content": "Hello! How can you help me today?"} ] }'

Transmita respostas

Para receber eventos de resposta incrementalmente, escolha a guia do seu método preferido e siga as etapas:

OpenAI SDK (Python)
# Stream response events incrementally using the OpenAI SDK # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables from openai import OpenAI client = OpenAI() stream = client.responses.create( model="openai.gpt-oss-120b", input=[{"role": "user", "content": "Tell me a story"}], stream=True ) for event in stream: print(event)
HTTP request

Faça uma solicitação POST para /v1/responses com stream definido comotrue:

# Stream response events incrementally # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables curl -X POST $OPENAI_BASE_URL/responses \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "openai.gpt-oss-120b", "input": [ {"role": "user", "content": "Tell me a story"} ], "stream": true }'

API de conclusão de bate-papo

A API Chat Completions gera respostas conversacionais. Para obter detalhes completos da API, consulte a documentação de conclusão de OpenAI bate-papo.

Criar um preenchimento de chat

Para criar uma conclusão de bate-papo, escolha a guia do seu método preferido e siga as etapas:

OpenAI SDK (Python)

Configure o OpenAI cliente usando variáveis de ambiente:

# Create a chat completion using the OpenAI SDK # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables from openai import OpenAI client = OpenAI() completion = client.chat.completions.create( model="openai.gpt-oss-120b", messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"} ] ) print(completion.choices[0].message)
HTTP request

Faça uma solicitação POST para/v1/chat/completions:

# Create a chat completion # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables curl -X POST $OPENAI_BASE_URL/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "openai.gpt-oss-120b", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"} ] }'

Ativar streaming

Para receber respostas incrementalmente, escolha a guia do seu método preferido e siga as etapas:

OpenAI SDK (Python)
# Stream chat completion responses incrementally using the OpenAI SDK # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables from openai import OpenAI client = OpenAI() stream = client.chat.completions.create( model="openai.gpt-oss-120b", messages=[{"role": "user", "content": "Tell me a story"}], stream=True ) for chunk in stream: if chunk.choices[0].delta.content is not None: print(chunk.choices[0].delta.content, end="")
HTTP request

Faça uma solicitação POST para /v1/chat/completions com stream definido comotrue:

# Stream chat completion responses incrementally # Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables curl -X POST $OPENAI_BASE_URL/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -d '{ "model": "openai.gpt-oss-120b", "messages": [ {"role": "user", "content": "Tell me a story"} ], "stream": true }'