Streaming (SSE)
Antworten beim Schreiben streamen: stream:true an beiden Endpunkten setzen, Anthropic-SSE-Ereignisse kommen unverändert an. Mit Python, Node, fetch.
Setzen Sie stream:true an einem der beiden Endpoints. Die SSE-Eventtypen von Anthropic kommen unverändert und ungepuffert an.
Alle Modelle, Funktionen und Preise Dokumentationsindex für KI-Agenten:https://oneprovider.dev/docs/llms.txt Warum streamen
- Die Zeit bis zum ersten Token sinkt von Sekunden auf ~100 ms.
- Lange Tool-Use-Schleifen laufen nicht in das 6-Minuten-Limit für den Antwortbeginn, weil ein Stream sofort zu antworten beginnt. Jede Anfrage ist auf 10 Minuten begrenzt, siehe Fehlercodes .
- Bessere UX: schrittweise Darstellung statt eingefrorener Ladeanzeigen.
Eventtypen
message_start– erstes Event, liefert die Metadaten des Assistenten.content_block_start·content_block_delta·content_block_stop– je ein Satz pro text- oder tool_use-Block. Die Deltas sind entwedertext_deltaoderinput_json_delta(für die Tool-Eingabe).message_delta– stop_reason und usage-Update am Ende.message_stop– letztes Event.ping– Keep-alive etwa alle 15 s.
Python (Anthropic SDK)
pythonwith client.messages.stream(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Tell me a haiku about Frankfurt."}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
final = stream.get_final_message()
print("\n--", final.usage) Node / TypeScript
tsconst stream = client.messages.stream({
model: "claude-sonnet-5-5",
max_tokens: 1024,
messages: [{ role: "user", content: "Tell me a haiku about Frankfurt." }],
});
for await (const event of stream) {
if (event.type === "content_block_delta" && event.delta.type === "text_delta") {
process.stdout.write(event.delta.text);
}
}
const final = await stream.finalMessage();
console.log("--", final.usage); Roher fetch (Browser, Edge-Runtime)
tsconst r = await fetch("https://api.oneprovider.dev/v1/messages", {
method: "POST",
headers: {
"x-api-key": KEY,
"anthropic-version": "2023-06-01",
"content-type": "application/json",
},
body: JSON.stringify({
model: "claude-sonnet-5-5",
max_tokens: 1024,
stream: true,
messages: [{ role: "user", content: "stream me a poem" }],
}),
});
const reader = r.body!.pipeThrough(new TextDecoderStream()).getReader();
while (true) {
const { value, done } = await reader.read();
if (done) break;
process.stdout.write(value);
} Keine Pufferung Events erreichen Ihren Client, sobald das Modell sie erzeugt. Jede Anfrage, auch mit Streaming, ist auf 10 Minuten begrenzt; siehe Fehlercodes . Kurze Antworten
Welche base URL verwende ich?
Claude Code und die Anthropic-SDKs verwenden https://api.oneprovider.dev. OpenAI-SDKs und OpenAI-kompatible Clients verwenden https://api.oneprovider.dev/v1. Ein Schlüssel funktioniert an beiden Adressen; die Modellliste finden Sie auf der Modellseite , die Preise auf der Preisseite .
Wie authentifiziere ich mich?
Senden Sie den unveränderten sk-…-Schlüssel in x-api-key oder Authorization: Bearer: nur eines von beiden, nie beide. Bewahren Sie den Schlüssel in einer Umgebungsvariable auf, nicht in einer Datei, die ins Repository committet wird. Mehr zur Authentifizierung .
Wo bekomme ich einen Schlüssel?
Öffnen Sie Ihr Konto im Telegram-Bot @oneprovider_robot oder auf app.oneprovider.dev, laden Sie das Guthaben auf und tippen Sie auf „Schlüssel ausstellen“. Jeder Schlüssel kann ein eigenes Ausgabenlimit haben. Konto & API-Schlüssel .
Was bedeuten 401, 404 und 429?
401: Der Schlüssel fehlt, ist falsch geschrieben oder steht im falschen Header; fügen Sie den ganzen Schlüssel ohne Anführungszeichen und Leerzeichen ein. 404: meist eine falsche base URL, zum Beispiel ein fehlendes oder doppeltes /v1. 429 mit „Insufficient balance“: Das Guthaben des Kontos oder das Ausgabenlimit des Schlüssels ist aufgebraucht – laden Sie auf, statt es erneut zu versuchen; jedes andere 429 ist ein Rate-Limit, warten Sie dann die Zeit aus Retry-After ab. Details: Fehlercodes und Fehlerbehebung .
Warum brechen Streams ab oder werden zurückgesetzt?
VPN- und VLESS-Proxys puffern SSE oft oder stören die HTTP/2-Aushandlung. OneProvider hat keine regionalen Beschränkungen und puffert keine Streams – schalten Sie den Proxy aus und versuchen Sie es erneut.
Wohin wende ich mich, wenn das nicht reicht?
Schreiben Sie @Oneproviderhelpbot auf Telegram oder öffnen Sie „Support“ im Web-Konto – mit HTTP-Statuscode und genauer Fehlermeldung. So arbeitet der Support .
Zuletzt aktualisiert: 2026-11-08 Fehler gefunden? @Oneproviderhelpbot