Salida en streaming
La salida en streaming mediante Server-Sent Events (SSE) devuelve las respuestas de IA palabra por palabra, como una máquina de escribir, y mejora la experiencia del usuario. En esta página se explica cómo habilitar la salida en streaming, analizar los fragmentos de datos SSE y gestionar las conexiones en streaming. Es adecuada para casos como conversaciones de chat y generación de contenido.
¿Por qué usar el streaming?
- Los modelos de lenguaje grandes tardan en responder y los usuarios necesitan comentarios inmediatos
- Efecto de máquina de escribir, similar al de ChatGPT
- Mejora la experiencia del usuario
Habilitar la salida en streaming
Configura "stream": true en la solicitud
from openai import OpenAI
client = OpenAI(
api_key="sk-xxx",
base_url="https://api.onemux.net/v1"
)
response = client.chat.completions.create(
model="gpt-6.1-sol",
messages=[{"role": "user", "content": "Escribe un poema"}],
stream=True
)
for chunk in response:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")Formato de respuesta SSE
Las respuestas en streaming usan el formato Server-Sent Events (SSE). Cada fragmento de datos comienza con data::
data: {"id":"chatcmpl-xxx","choices":[{"delta":{"content":"Tú"}}]}
data: {"id":"chatcmpl-xxx","choices":[{"delta":{"content":" bien"}}]}
data: {"id":"chatcmpl-xxx","choices":[{"delta":{"content":"!"}}]}
data: [DONE]