Genere respuestas utilizando OpenAI APIs - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Genere respuestas utilizando OpenAI APIs

Amazon Bedrock proporciona puntos de enlace de API OpenAI compatibles para la inferencia de modelos, con la tecnología de Mantle, un motor de inferencia distribuido para el servicio de modelos de aprendizaje automático a gran escala. Estos puntos de enlace le permiten utilizar los modelos OpenAI SDKs y herramientas familiares de Amazon Bedrock, lo que le permite migrar las aplicaciones existentes con cambios de código mínimos; basta con actualizar la URL base y la clave de API.

También ofrece otras ventajas como las siguientes:

  • Inferencia asíncrona: Support para cargas de trabajo de inferencia de larga duración a través de la API de respuestas

  • Gestión de conversaciones avanzada: reconstruye automáticamente el contexto sin pasar manualmente el historial de conversaciones con cada solicitud

  • Uso simplificado de herramientas: integración optimizada para los flujos de trabajo de los agentes

  • Modos de respuesta flexibles: Support para respuestas de streaming y no streaming

  • Migración sencilla: compatible con las bases de código OpenAI del SDK existentes

Regiones y puntos finales compatibles

Amazon Bedrock está disponible en las siguientes AWS regiones:

Nombre de la región Región Punto de conexión
Este de EE. UU. (Ohio) us-east-2 bedrock-mantle.us-east-2.api.aws
Este de EE. UU. (Norte de Virginia) us-east-1 bedrock-mantle.us-east-1.api.aws
Oeste de EE. UU. (Oregón) us-west-2 bedrock-mantle.us-west-2.api.aws
Asia-Pacífico (Yakarta) ap-southeast-3 bedrock-mantle.ap-southeast-3.api.aws
Asia-Pacífico (Mumbai) ap-south-1 bedrock-mantle.ap-south-1.api.aws
Asia-Pacífico (Tokio) ap-northeast-1 bedrock-mantle.ap-northeast-1.api.aws
Europa (Fráncfort) 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án) eu-south-1 bedrock-mantle.eu-south-1.api.aws
Europa (Estocolmo) eu-north-1 bedrock-mantle.eu-north-1.api.aws
América del Sur (São Paulo) sa-east-1 bedrock-mantle.sa-east-1.api.aws

Requisitos previos

Antes de usarlo, asegúrese de tener lo siguiente: OpenAI APIs

  • Autenticación: puede autenticarse mediante:

    • Clave de API de Amazon Bedrock (necesaria para el OpenAI SDK)

    • AWScredenciales (compatibles con las solicitudes HTTP)

  • OpenAISDK (opcional): instala el SDK de OpenAI Python si utilizas solicitudes basadas en el SDK.

  • Variables de entorno: establece las siguientes variables de entorno:

    • OPENAI_API_KEY— Configure su clave de API de Amazon Bedrock

    • OPENAI_BASE_URL— Configúrelo en el punto final de Amazon Bedrock de su región (por ejemplo, https://bedrock-mantle.us-east-1.api.aws/v1)

API de modelos

La API de modelos te permite descubrir los modelos disponibles en Amazon Bedrock con tecnología Mantle. Use esta API para recuperar una lista de modelos que puede usar con la API de respuestas y la API de finalización de chats. Para obtener información completa sobre la API, consulta la documentación de OpenAI los modelos.

Enumere los modelos disponibles

Para ver una lista de los modelos disponibles, selecciona la pestaña del método que prefieras y, a continuación, sigue los pasos:

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

Realiza una solicitud GET a/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 respuestas

La API de respuestas proporciona una gestión de conversaciones con estado y admite la transmisión, el procesamiento en segundo plano y las interacciones en varios turnos. Para obtener información completa sobre la API, consulta la documentación de OpenAIRespuestas.

Solicitud básica

Para crear una respuesta, selecciona la pestaña del método que prefieras y, a continuación, sigue estos pasos:

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

Realiza una solicitud POST a/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 las respuestas

Para recibir los eventos de respuesta de forma incremental, elige la pestaña del método que prefieras y, a continuación, sigue estos pasos:

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

Realiza una solicitud POST /v1/responses con el siguiente stream valor: true

# 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 finalización de chat

La API Chat Completions genera respuestas conversacionales. Para obtener información completa sobre la API, consulta la documentación de OpenAIChat Completions.

Creación de una finalización de chat

Para crear un chat completo, elige la pestaña del método que prefieras y, a continuación, sigue estos pasos:

OpenAI SDK (Python)

Configure el OpenAI cliente mediante variables de entorno:

# 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

Realice una solicitud POST a/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!"} ] }'

Habilitar la transmisión

Para recibir respuestas de forma incremental, selecciona la pestaña del método que prefieras y sigue los pasos:

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

Realiza una solicitud POST /v1/chat/completions con el siguiente stream ajuste: true

# 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 }'