La API de OpenAI para ChatGPT actualmente no ofrece una función incorporada para la paginación. La paginación normalmente se usa para dividir un conjunto grande de resultados en una serie más pequeña de resultados, algo que es más común con las APIs que devuelven una lista de objetos, como un feed de publicaciones o una lista de usuarios.
Sin embargo, el modelo de chat de OpenAI permite tener conversaciones continuas. Para hacer esto, puedes reutilizar la misma `conversation_id` y extender el mensaje que envías en la lista de `messages`. Esto te permite construir una conversación secuencial con el modelo.
Puedes enviar un conjunto de mensajes y luego, en la próxima petición, enviar esos mensajes más uno o dos nuevos. Por lo tanto, el historial de mensajes que se pasa a la API puede ser tan largo o tan corto como lo necesites.
Por ejemplo:
Primera llamada a API:
```python
openai.ChatCompletion.create(
model=“gpt-3.5-turbo”,
messages=[
{“role”: “system”, “content”: “Estás hablando con un asistente inteligente.”},
{“role”: “user”, “content”: “Hola, asistente.”},
]
)
```
Segunda llamada a API:
```python
openai.ChatCompletion.create(
model=“gpt-3.5-turbo”,
messages=[
{“role”: “system”, “content”: “Estás hablando con un asistente inteligente.”},
{“role”: “user”, “content”: “Hola, asistente.”},
{“role”: “assistant”, “content”: “Hola, ¿cómo puedo ayudarte hoy?”},
{“role”: “user”, “content”: “¿Cuál es el clima hoy?”},
]
)
```
Cada llamada sucesiva a la API puede incluir todo el historial de conversación de la sesión. Como los modelos de OpenAI no tienen estado, proporcionar todo el contexto es la forma en que puedes mantener una conversación consistente.