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

Migrar de Completions a Chat Completions en la API de OpenAI

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

Última actualización: yesterday

Chat Completions es la API estándar para usar 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.

A partir del 11 de marzo de 2025, lanzamos los componentes básicos de nuestra nueva plataforma de agentes. Para obtener más detalles, consulta nuestra documentación de API para la API de Responses, herramientas como Búsqueda web, Búsqueda de archivos y Uso de computadora, y nuestro SDK de agentes con Rastreo.

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 antiguo formato de prompt que se usaba con Completions.

Así funciona:

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

  • Cada mensaje tiene un role y, por lo general, un content.

  • Entre los roles comunes se encuentran system, user, assistant, developer y tool. Los mensajes de tipo tool se usan para los resultados de herramientas o funciones y deben corresponder a llamadas a herramientas del asistente. Para mantener la compatibilidad con versiones anteriores, es posible que aún se acepten mensajes de tipo function y que el servidor los convierta en mensajes de tipo tool. Los mensajes de tipo developer pueden reasignarse según la compatibilidad del modelo.

  • El campo content contiene el texto del mensaje enviado por el rol.

  • La instrucción del sistema puede proporcionar indicaciones generales para la conversación

  • Los mensajes se procesan en el orden en que aparecen en la lista y el asistente responde según corresponda.

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

AntesAhora
'prompt' : 'tell me a joke''messages': [{'role':'user', 'content':'tell me a joke'}]

Ahora es más fácil que nunca mantener un diálogo con el modelo: basta con ampliar la lista de mensajes de la conversación.

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

Instrucciones del sistema

También puedes usar una instrucción a nivel del sistema para guiar el comportamiento del modelo durante toda la conversación. Por ejemplo, usar 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ó el pollo la calle? Para llegar al otro lado; mas, en verdad, el otro lado estaba lleno de peligros y amenazas, así que volvió presto por donde vino, ¡pardiez!'}
...}

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

¿Este artículo te fue útil?