Transmite una respuesta de chat
Lee los eventos enviados por el servidor de completaciones de chat de ShareAI, agrega los deltas de contenido una vez y maneja la finalización, errores y flujos interrumpidos.
En esta página
Establece stream: true para recibir la respuesta de manera incremental. Mantén la conexión HTTP abierta, analiza eventos SSE completos y agrega cada delta de contenido una vez.
https://api.shareai.now/api/v1/chat/completionsDevuelve un flujo de eventos enviados por el servidor.
- URL base
https://api.shareai.now- Autenticación
- Clave API Bearer o token de acceso OAuth aprobado
cURL
curl --no-buffer --fail-with-body https://api.shareai.now/api/v1/chat/completions \
-H "Authorization: Bearer $SHAREAI_API_KEY" \
-H "Content-Type: application/json" \
--data '{"model":"MODEL_IDENTIFIER","messages":[{"role":"user","content":"Explain server-sent events briefly."}],"stream":true}'
Lee los límites de eventos#
SSE separa los eventos con una línea en blanco. Los fragmentos de red pueden dividir un valor JSON o contener múltiples eventos, por lo que no analices cada lectura de red como una respuesta JSON completa. Decodifica UTF-8 de manera incremental y conserva los datos incompletos hasta que el evento esté completo.
Plain text
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hello"},"finish_reason":null}]}
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]
Renderiza el contenido una vez#
Agrega choices[0].delta.content cuando esté presente. Conserva los espacios en blanco y las palabras repetidas. Un fragmento solo con rol o final puede no tener contenido. Trata [DONE] como el terminador del flujo.
Maneja errores de flujo#
Verifica el estado HTTP antes de entrar al analizador SSE. Una vez que comience la transmisión, maneja un event: error evento y una desconexión inesperada. Marca una respuesta interrumpida como incompleta y permite que el usuario reintente explícitamente. No agregues una segunda respuesta generada de forma independiente a una salida parcial.
Cancela desde tu aplicación#
Usa el mecanismo de cancelación de tu cliente HTTP cuando el usuario detenga la generación. Mantén la cancelación, un fallo de red y una respuesta completada como estados de interfaz de usuario separados. No prometas que cerrar una conexión de cliente revierte el uso ya procesado.
Identidad del modelo y proveedores de ejecución#
Copia el identificador exacto del modelo basado en el creador desde Modelos. Selecciona la infraestructura por separado con el provider objeto opcional. El valor predeterminado clasifica a los proveedores elegibles por precio, del más bajo al más alto. Elige proveedores o consulta la referencia completa de políticas.
Última actualización 16 de septiembre de 2026