Streamen Sie eine Chat-Antwort
Lesen Sie ShareAI-Chat-Vervollständigungs-Server-Sent-Events, fügen Sie Inhaltsdeltas einmal hinzu und behandeln Sie Vervollständigungen, Fehler und unterbrochene Streams.
Auf dieser Seite
Legen Sie stream: true um die Antwort schrittweise zu erhalten. Halten Sie die HTTP-Verbindung offen, analysieren Sie vollständige SSE-Ereignisse und fügen Sie jedes Inhaltsdelta einmal hinzu.
https://api.shareai.now/api/v1/chat/completionsGeben Sie einen Server-Sent-Event-Stream zurück.
- Basis-URL
https://api.shareai.now- Authentifizierung
- Bearer-API-Schlüssel oder genehmigtes OAuth-Zugriffstoken
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}'
Lesen Sie Ereignisgrenzen#
SSE trennt Ereignisse mit einer Leerzeile. Netzwerk-Chunks können einen JSON-Wert teilen oder mehrere Ereignisse enthalten, daher sollten Sie jeden Netzwerk-Lesevorgang nicht als vollständige JSON-Antwort analysieren. Dekodieren Sie UTF-8 schrittweise und behalten Sie unvollständige Daten, bis das Ereignis vollständig ist.
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]
Rendern Sie Inhalte einmal#
Fügen Sie hinzu choices[0].delta.content wenn vorhanden. Bewahren Sie Leerzeichen und wiederholte Wörter auf. Ein reiner Rollen- oder letzter Chunk kann keinen Inhalt haben. Behandeln Sie [DONE] als Stream-Terminierer.
Behandeln Sie Stream-Fehler#
Überprüfen Sie den HTTP-Status, bevor Sie den SSE-Parser betreten. Nachdem das Streaming beginnt, behandeln Sie ein event: error Ereignis und unerwartete Unterbrechungen. Markieren Sie eine unterbrochene Antwort als unvollständig und lassen Sie den Benutzer explizit erneut versuchen. Fügen Sie keine zweite unabhängig generierte Antwort zu einer teilweisen Ausgabe hinzu.
Abbrechen aus Ihrer Anwendung#
Verwenden Sie den Abbruchmechanismus Ihres HTTP-Clients, wenn der Benutzer die Generierung stoppt. Behalten Sie Abbruch, einen Netzwerkfehler und eine abgeschlossene Antwort als separate UI-Zustände bei. Versprechen Sie nicht, dass das Schließen einer Client-Verbindung bereits verarbeitete Nutzung rückgängig macht.
Modellidentität und Ausführungsanbieter#
Kopieren Sie die genaue, auf dem Creator basierende Modellkennung von Modelle. Wählen Sie die Infrastruktur separat mit dem optionalen provider Objekt aus. Standardmäßig werden berechtigte Anbieter nach Preis sortiert, beginnend mit dem niedrigsten. Anbieter auswählen oder konsultieren Sie die vollständige Richtlinienreferenz.
Zuletzt aktualisiert am 16. September 2026