Nach Fähigkeit
Chat
Modell wählen, Anfrage kopieren, Antwort lesen. Alle Chatmodelle nehmen dieselbe Anfrage im OpenAI-Stil an.
#1. Modell wählen
#3. Ergebnis abrufen
Eine 200-Antwort enthält die Antwort in choices[0].message.content. Fügen Sie "stream": true hinzu, um sie schon während des Schreibens zu empfangen.
#Wenn etwas schiefgeht
- 400 mit einem Feldnamen: Diese Option akzeptiert das Modell nicht; verwenden Sie die Werte aus Schritt 2.
- 402: Das Guthaben deckt diese Anfrage nicht; laden Sie im Wallet auf und versuchen Sie es dann erneut.
- 429: Langsamer werden und nach Retry-After Sekunden erneut versuchen.
- 503 model_not_found: Der Modellname ist falsch oder das Modell ist offline; wählen Sie eines aus Schritt 1.
StreamingDie Antwort schon während des Schreibens anzeigen.
#So funktioniert es
Setzen Sie stream:true, und das Gateway leitet Server-Sent Events genau so weiter, wie OpenAI sie ausgibt: ein data:-Frame pro Delta, abgeschlossen mit data: [DONE]. Jeder SSE-Client und die offiziellen SDKs verarbeiten das unverändert.
#Ausführen
curl -N https://www.aisplice.store/v1/chat/completions \
-H "Authorization: Bearer sk-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-luna",
"stream": true,
"messages": [
{
"role": "user",
"content": "Write a haiku about the sea."
}
]
}'from openai import OpenAI
client = OpenAI(base_url="https://www.aisplice.store/v1", api_key="sk-YOUR_KEY")
stream = client.chat.completions.create(
model="gpt-5.6-luna",
stream=True,
messages=[{"role": "user", "content": "Write a haiku about the sea."}],
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")#Teilabrechnung
Nur bezahlen, was gestreamt wurde
Tool-CallingDas Modell Ihre eigenen Funktionen aufrufen lassen.
#Tools deklarieren
Senden Sie das standardmäßige OpenAI-tools-Array. Das Gateway leitet es an jedes toolfähige Modell weiter — OpenAI, Claude, Gemini, DeepSeek — und normalisiert die Antwort wieder zu tool_calls. Streaming von Tool-Call-Deltas wird unterstützt.
curl https://www.aisplice.store/v1/chat/completions \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-luna",
"messages": [{"role":"user","content":"Weather in Tokyo?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"]
}
}
}]
}'#tool_calls verarbeiten
Entscheidet sich das Modell für einen Tool-Aufruf, kommt die Antwort mit finish_reason:"tool_calls" und einem arguments-String, den Ihr Code parst und ausführt.
{
"choices": [{
"finish_reason": "tool_calls",
"message": {
"role": "assistant",
"tool_calls": [{
"id": "call_abc123",
"type": "function",
"function": {
"name": "get_weather",
"arguments": "{\"city\": \"Tokyo\"}"
}
}]
}
}]
}#Ergebnisse zurücksenden
Hängen Sie die Assistant-Runde und pro Aufruf eine role:"tool"-Nachricht an (zugeordnet über tool_call_id) und senden Sie die Anfrage erneut — das Modell bezieht das Ergebnis in seine endgültige Antwort ein.
curl https://www.aisplice.store/v1/chat/completions \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-luna",
"messages": [
{"role":"user","content":"Weather in Tokyo?"},
{"role":"assistant","tool_calls":[{"id":"call_abc123","type":"function",
"function":{"name":"get_weather","arguments":"{\"city\":\"Tokyo\"}"}}]},
{"role":"tool","tool_call_id":"call_abc123","content":"{\"temp_c\": 22, \"sky\": \"clear\"}"}
]
}'BildeingabeBilder zusammen mit dem Text senden.
#Bild senden
Chatmodelle mit Vision nehmen ein content-Array, das Textteile und image_url-Teile mischt. Verwenden Sie eine öffentliche URL oder eine Inline-base64-Data-URL — in beiden Fällen dasselbe Feld.
curl https://www.aisplice.store/v1/chat/completions \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-luna",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "What is in this image?"},
{"type": "image_url", "image_url": {"url": "https://example.com/cat.png"}}
]
}]
}'#Base64-Bilder
Für lokale Dateien eine Data-URL inline einbetten: "url": "data:image/png;base64,<bytes>". Bild-Tokens werden als Eingabe-Tokens abgerechnet; maximale Bildgröße und -anzahl pro Anfrage hängen vom Anbieter ab — verkleinern Sie Bilder vor dem Senden, um Kosten zu sparen.
import base64
from openai import OpenAI
client = OpenAI(base_url="https://www.aisplice.store/v1", api_key="sk-YOUR_KEY")
b64 = base64.b64encode(open("photo.png", "rb").read()).decode()
resp = client.chat.completions.create(
model="gpt-5.6-luna",
messages=[{"role": "user", "content": [
{"type": "text", "text": "Describe this photo."},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{b64}"}},
]}],
)
print(resp.choices[0].message.content)Immer noch nicht gelöst?
Senden Sie uns die Anfrage-ID oder die Fehlermeldung, und wir sehen uns das an.