API OpenAI Chat Completions
La API OpenAI Chat Completions permite interacciones de chat con los Grandes Modelos de Lenguaje (Large Language Models - LLMs) de OpenAI. Puede utilizarse en sistemas que necesiten integrar chatbots u otras interacciones de lenguaje basadas en Inteligencia Artificial y ofrece un alto grado de personalización y control sobre el comportamiento del modelo.
Además, para ayudar a estructurar y monitorizar las peticiones y respuestas, la API cuenta con los siguientes interceptores ya configurados en su flujo:
-
Header: añade o ajusta cabeceras.
-
Log: hay dos instancias de este interceptor configuradas, una en el flujo de petición y otra en el de respuesta. Su función es generar logs para poder visualizar la petición y la respuesta.
-
JSON Schema Validation: valida el contenido presente en el cuerpo de la petición (payload) según el estándar aceptado por la API.
-
Rate Limit AI Tokens: permite controlar el consumo de tokens en aplicaciones que consumen LLMs.
Importación de la API
Para utilizar la API OpenAI Chat Completions, primero debe importarla a su Plataforma siguiendo los pasos que se indican a continuación:
-
Descargue la documentación de la API.
-
Descomprime la carpeta
OpenAI_Chat_Completions_API.zip. -
Importe el archivo
OpenAI_Chat_Completions_API.yamla la Plataforma utilizando la funcionalidad Import/Export. -
Despliega la API en un entorno.
| Para la autenticación, debe insertar la clave (API key) recibida de OpenAI en el header de la petición. |
Referencia de la API
Descripción General
-
Título: OpenAI Chat Completions API
-
Finalidad: Permitir la interacción con modelos de lenguaje para generar respuestas basadas en los mensajes enviados por los usuarios.
-
Base Path:
/v1 -
Método Principal:
POSTen el endpoint/chat/completions -
Seguridad: Utiliza autenticación vía Bearer Token en la cabecera de la petición.
Funcionalidad principal
El endpoint /chat/completions permite generar una interacción de chat.
Ello:
-
Recibe una lista de mensajes en formato JSON.
-
Utiliza estos mensajes para interactuar con un modelo de lenguaje elegido por el cliente.
-
Devuelve las respuestas generadas por el modelo.
Entrada (Payload)
Formato: JSON
Campos principales:
-
model(string, obligatorio): Define qué modelo de lenguaje se utilizará (por ejemplo,gpt-4o). -
messages(array, obligatorio): Lista de mensajes en la conversación, en la que cada mensaje contiene:-
role(string): Rol del autor del mensaje, comouser,systemoassistant. -
content(string): Contenido textual del mensaje.
-
-
max_tokens(integer, opcional): Limita el número de tokens generados en la respuesta. -
temperature(number, opcional): Controla la creatividad de la respuesta (valores más pequeños generan respuestas más deterministas). -
top_p(number, opcional): Nucleus sampling para limitar la probabilidad acumulada de palabras generadas. -
n(integer, opcional): Número de respuestas que se deben generar. -
stop(array, opcional): Define secuencias que terminan la generación de texto. -
presence_penaltyyfrequency_penalty(números, opcional): Penalizan la repetición y fomentan la originalidad. -
logit_bias(objeto, opcional): Ajusta la probabilidad de palabras específicas. -
user(string, opcional): Identificador único para rastrear la interacción de un usuario.
Respuesta
Códigos de estado:
-
200 OK: Respuesta generada con éxito. Devuelve:
-
id(string): Identificador único de la respuesta. -
choices(array): Lista de respuestas generadas, cada una con:-
message: Mensaje generado por el modelo, conroleycontent. -
finish_reason: Razón para finalizar la generación (por ejemplo, stop).
-
-
usage: Métricas de uso de tokens (prompt, completion, total).
-
-
400 Bad Request: Petición no válida.
-
500 Internal Server Error: Error interno del servidor o del servicio.
Share your suggestions with us!
Click here and then [+ Submit idea]