OpenAI
Esta página se tradujo automáticamente. Ver el artículo original en inglés.

Pasar de Completions a Chat Completions en la API de OpenAI

Cómo migrar desde la API heredada OpenAI Completions a Chat Completions

Actualización: 6 days ago

Chat Completions es la API estándar que se usa con los modelos más recientes de OpenAI. Puedes aprender a empezar a usarla con nuestra guía para desarrolladores sobre generación de texto.

Desde el 11 de marzo de 2025, hemos publicado los componentes básicos de nuestra nueva plataforma de agentes. Para obtener más información, consulta nuestra documentación de la API para nuestra API de Responses, herramientas como Web Search, File Search y Computer Use, y nuestro Agents SDK con Tracing.

De prompts a mensajes

Para mantener una conversación más interactiva y dinámica con nuestros modelos, puedes usar mensajes en formato de chat en lugar del estilo heredado basado en prompts que se usaba con Completions.

Así funciona:

  • En lugar de enviar una sola cadena como prompt, envías una lista de mensajes como entrada.

  • Cada mensaje tiene un role y un content.

  • Entre los roles habituales se incluyen system, user, assistant, developer y tool. Los mensajes de herramientas se usan para resultados de herramientas o funciones y deben corresponder a llamadas a herramientas del asistente. Por compatibilidad con versiones anteriores, los mensajes de funciones aún pueden aceptarse y convertirse en mensajes de herramientas durante el procesamiento en el servidor. Los mensajes de desarrollador pueden reasignarse según la compatibilidad del modelo.

  • El content contiene el texto del mensaje del rol.

  • La instrucción del sistema puede dar instrucciones generales para la conversación

  • Los mensajes se procesan en el orden en que aparecen en la lista, y el asistente responde en consecuencia.

Incluso las solicitudes básicas de Completions pueden completarse mediante Chat Completions, como se muestra a continuación:

| Antes | Ahora | | 'prompt' : 'tell me a joke' | 'messages': <br>[{'role':'user', 'content':'tell me a joke'}] |

Ahora es más fácil que nunca mantener intercambios con el modelo ampliando la lista de mensajes de la conversación.

'messages': [{'role':'user', 'content':'cuéntame un chiste'}, 
{'role':'assistant', 'content':'por qué cruzó la carretera la gallina'},
{'role':'user', 'content':'No lo sé, ¿por qué cruzó la carretera la gallina?'}]

Instrucciones del sistema

También puedes usar una instrucción a nivel de sistema para guiar el comportamiento del modelo durante toda la conversación. Por ejemplo, usando una instrucción del sistema y un mensaje como este

'messages': [{'role':'system', 'content':'Eres un asistente que habla como Shakespeare.'}, 
{'role':'user', 'content':'cuéntame un chiste'},

dará como resultado algo como

{...
'message': {'role':'assistant',
'content':'¿Por qué cruzó la carretera la gallina? Para llegar al otro lado, pero en verdad, el otro lado estaba lleno de peligros y riesgos, así que regresó rápidamente de donde vino, ¡pardiez!'}
...}

Si quieres explorar opciones que no impliquen tener que gestionar tú mismo el historial de mensajes de la conversación, consulta la API de Assistants.

¿Te ha resultado útil este artículo?