HiAPI
Blog

Tutorial

So verwenden Sie DeepSeek V4 Flash über die hiapi API: curl, Python und lauffähige Anfragebeispiele

Aug 4, 2026
So verwenden Sie DeepSeek V4 Flash über die hiapi API: curl, Python und lauffähige Anfragebeispiele

DeepSeek V4 Flash ist ein Reasoning-Chat-Modell, dessen Anbindung auf hiapi sich von den meisten Modellen auf der Plattform unterscheidet: Es nutzt nicht die asynchrone POST /v1/tasks-Warteschlange, die für die Bild- und Videogenerierung verwendet wird, sondern einen OpenAI-kompatiblen Chat-Completion-Endpunkt – POST /v1/chat/completions –, der synchron oder streamend arbeitet und kein Polling erfordert. Dieses Tutorial führt Sie durch eine lauffähige Anfrage mit curl und Python und behandelt anschließend zwei Probleme, die in Produktionsumgebungen tatsächlich leicht zu Stolperfallen werden.

Was Sie erstellen werden

Ein minimales Skript, das über hiapi einen Prompt an deepseek-v4-flash sendet und die Antwort des Modells ausgibt – sowie die Muster, die Sie benötigen, sobald dieses Skript zu einer echten Integration wird: den Umgang mit dem Reasoning-Token-Budget des Modells, Streaming, Wiederholungsversuche und die in der Dokumentation beschriebene Fehlerstruktur.

Voraussetzungen: ein hiapi API-Schlüssel. Rufen Sie ihn im hiapi Dashboard ab – jede Anfrage unten authentifiziert sich über Authorization: Bearer sk-<your-key>.

Minimales lauffähiges Beispiel

curl

curl https://api.hiapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $HIAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [{"role": "user", "content": "Explain what a hash table is in two sentences."}],
    "max_tokens": 500
  }'

Bei erfolgreichem Aufruf wird ein standardmäßiges Chat-Completion-Objekt zurückgegeben:

{
  "id": "gen-...",
  "object": "chat.completion",
  "model": "deepseek/deepseek-v4-flash",
  "provider": "DeepInfra",
  "choices": [{
    "index": 0,
    "finish_reason": "stop",
    "message": {"role": "assistant", "content": "A hash table is ...", "reasoning": "..."}
  }],
  "usage": {
    "prompt_tokens": 14, "completion_tokens": 187, "total_tokens": 201,
    "completion_tokens_details": {"reasoning_tokens": 96}
  }
}

Zwei Dinge sind zu beachten: In der Anfrage verwenden Sie die nackte Modell-ID deepseek-v4-flash – hiapi löst sie intern zum Upstream-Anbieter auf –, während das Feld model in der Antwort eine anbieterspezifisch qualifizierte ID (deepseek/deepseek-v4-flash) zurückgibt, die Sie als Referenzinformation betrachten und nicht als Anfrageparameter zurücksenden sollten. Außerdem enthält die Nachricht neben content auch ein Feld reasoning – dies ist ein Reasoning-Modell, und usage.completion_tokens_details.reasoning_tokens zeigt Ihnen, welcher Anteil der completion_tokens-Kosten auf diese Gedankenkette entfällt und welcher auf die sichtbare Antwort.

Python

import os
import requests

resp = requests.post(
    "https://api.hiapi.ai/v1/chat/completions",
    headers={"Authorization": f"Bearer {os.environ['HIAPI_KEY']}"},
    json={
        "model": "deepseek-v4-flash",
        "messages": [{"role": "user", "content": "Explain what a hash table is in two sentences."}],
        "max_tokens": 500,
    },
    timeout=60,
)
resp.raise_for_status()
data = resp.json()
print(data["choices"][0]["message"]["content"])

Da dieser Endpunkt OpenAI-kompatibel ist, funktioniert dieser Code auch unverändert mit dem offiziellen openai Python SDK – setzen Sie einfach base_url auf https://api.hiapi.ai/v1 und übergeben Sie den hiapi-Schlüssel als api_key.

Muster für den Produktionseinsatz

Die Stolperfalle beim Reasoning-Budget: Setzen Sie max_tokens nicht zu niedrig

max_tokens begrenzt die Gesamtkosten von Reasoning plus Antwort, nicht nur die sichtbare Antwort. Wenn das Modell beim Erreichen des Limits noch immer überlegt, erhalten Sie eine Antwort mit finish_reason: "length" und content: null – Token werden verbraucht und abgerechnet, aber es gibt nichts Anzuzeigendes. Geben Sie bei allen nicht trivialen Prompts der Anfrage echten Spielraum (mindestens einige Hundert Token), statt max_tokens auf den Wert zu kürzen, den Sie für die Antwort für nötig halten.

Reasoning für einfache, deterministische Aufgaben deaktivieren

Wenn eine Aufgabe keine Gedankenkette erfordert – Klassifizierung, kurze Abfragen, Formatkonvertierung –, können Sie das Reasoning vollständig unterdrücken:

{
  "model": "deepseek-v4-flash",
  "messages": [{"role": "user", "content": "Say OK and nothing else."}],
  "max_tokens": 50,
  "reasoning": {"enabled": false}
}

Mit reasoning.enabled: false gibt message.reasoning in der Antwort null zurück und completion_tokens_details.reasoning_tokens ist 0 – Sie zahlen nur für die sichtbare Ausgabe, und die Latenz sinkt entsprechend. Behalten Sie das Standardverhalten (Reasoning aktiviert) nur für Aufgaben bei, bei denen zusätzliches Nachdenken die Antwort tatsächlich verbessert.

Streaming

Setzen Sie "stream": true, um Standard-Server-Sent-Events im OpenAI-Stil zu erhalten, ohne auf die vollständige Antwort warten zu müssen:

curl https://api.hiapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $HIAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-v4-flash","messages":[{"role":"user","content":"Count to 5."}],"stream":true}'

Jeder Datenblock ist eine Zeile data: {...}, die das inkrementelle choices[0].delta.content enthält; der letzte Datenblock enthält usage, und der Stream endet mit einer literalen Zeile data: [DONE]. Parsen Sie die Blöcke, sobald sie eintreffen, statt die gesamte Antwort clientseitig zu puffern – genau darin liegt der Sinn von Streaming für Chat-UIs.

Idempotenz und Wiederholungsversuche

Chat-Completions sind hier zustandslose HTTP-Aufrufe, keine eingereihten Aufgaben – es gibt keine Task-ID zum Abfragen und keine unbeabsichtigte doppelte Einreichung in eine Warteschlange. Bei Wiederholungen geht es um gewöhnliche HTTP-Probleme: Bei Transportfehlern oder 5xx mit Backoff erneut versuchen; bei 429 vor dem erneuten Versuch den Retry-After-Antwortheader beachten (siehe Dokumentation zu Rate Limits). Bei 4xx-Fehlern, die eine fehlerhafte Anfrage anzeigen (z. B. fehlerhafte messages), nicht erneut versuchen – korrigieren Sie stattdessen den Request-Body.

Fehlerbehandlung

Ein ungültiger oder fehlender Schlüssel führt zu HTTP 401:

{
  "error": {
    "code": "permission_denied",
    "message": "...",
    "request_id": "...",
    "type": "hiapi_error"
  }
}

Prüfen Sie im Fehlerhandler error.code, statt Musterabgleich auf die Nachrichtenzeichenkette durchzuführen – permission_denied ist der stabile Bezeichner. Wenn Sie diesen Fehler mit einem Schlüssel erhalten, den Sie für gültig halten, lesen Sie die Authentifizierungsdokumentation.

Weiterführende Lektüre

FAQ

Muss ich das Ergebnis wie bei den Bild-/Videomodellen von hiapi abfragen (Polling)? Nein. Bild- und Videogenerierung auf hiapi läuft über die asynchrone /v1/tasks-Warteschlange (Erstellen → Polling oder Callback → output[0].url herunterladen). Chat-Modelle wie deepseek-v4-flash sind nur gewöhnliche synchrone (oder streamende) HTTP-Aufrufe an /v1/chat/completions – Sie erhalten die Antwort direkt in der Response.

Warum ist usage.completion_tokens höher, als die sichtbare Antwort kosten sollte? Weil es Reasoning-Token enthält. Prüfen Sie usage.completion_tokens_details.reasoning_tokens, um die Aufteilung zu sehen, und verwenden Sie "reasoning": {"enabled": false}, wenn das Modell seinen Denkprozess nicht zeigen muss.

Meine Antwort hat "finish_reason": "length" und content ist leer – was ist passiert? Das Modell hat max_tokens erschöpft, während es sich noch in der Reasoning-Phase befand, und nie eine sichtbare Antwort geschrieben. Erhöhen Sie max_tokens oder deaktivieren Sie das Reasoning für einfachere Prompts.

Kann ich das offizielle OpenAI SDK anstelle von rohen HTTP-Aufrufen verwenden? Ja – setzen Sie base_url des SDK auf https://api.hiapi.ai/v1 und api_key auf Ihren hiapi-Schlüssel; die Request-/Response-Struktur ist identisch.

Wo finde ich die aktuellen Preise für dieses Modell? Auf der Modellseite oder der live aktualisierten Preisseite – die Kosten pro Token können je nach Routing zum Upstream-Anbieter leicht variieren; prüfen Sie sie daher dort, statt sich auf die Zahlen in diesem Artikel zu verlassen.

Ähnliche Artikel

Alle Artikel ansehen →

Starte mit persistenten KI-Artefakten

Hol dir deinen API-Key und rufe Bild-, Video- und Audiomodelle über eine einzige task-basierte API auf.

API-Dokumentation lesen