Benutzerhandbuch
E-Commerce-Produktbilder mit DeepSeek V4.1 Flash über die hiapi API verarbeiten
Es generiert keine Bilder – aber es schreibt alles andere rund um dein Produkt-Listing.
DeepSeek V4.1 Flash generiert keine Produktbilder – hier erfährst du, worin es in einem E-Commerce-Stack wirklich stark ist
Wenn du wegen des Begriffs „Produktbilder“ hier gelandet bist: DeepSeek V4.1 Flash kann diese nicht generieren – es ist ein reines Textmodell ohne Bild-, Audio- oder Videoausgabe. Doch ein E-Commerce-Katalog hängt weit mehr von Text als von Bildern ab: Jedes Listing braucht eine Beschreibung, jedes Bild einen Alternativtext, jede Kundenfrage eine Antwort, jeder Werbekanal eine andere Version desselben Verkaufsarguments. Genau auf dieser Ebene ist das Modell stark, und es ist für diese Aufgabe ausgesprochen günstig und flexibel – es unterstützt sowohl /v1/chat/completions als auch /v1/responses, sodass du deine Integration nicht um ein einziges Anfrageformat herum neu aufbauen musst. Dieser Leitfaden behandelt die textlichen Teile eines Produktbild-Workflows: die Batch-Generierung von Beschreibungen mit strukturierter Ausgabe, Q&A im Kundensupport und mehrkanalige Textvarianten – mit echten Anfragebeispielen auf Basis der hiapi API. Wenn du die Bilder selbst brauchst, kannst du es mit einem Bildmodell wie GPT Image 2 kombinieren und DeepSeek V4.1 Flash den gesamten Text rund um das Bild übernehmen lassen.
Warum die duale API-Schnittstelle wichtig ist
Die meisten Inferenzmodelle auf hiapi wählen nur einen Pfad – Chat Completions oder Responses – und bleiben dabei. DeepSeek V4.1 Flash unterstützt nativ POST /v1/chat/completions und POST /v1/responses, was bedeutet, dass du es in deine bestehende Integration einbinden kannst, ohne einen neuen Client eigens für dieses Modell zu bauen. Die folgenden Punkte gelten auf beiden Endpunkten:
reasoning_efforthat fünf praktische Stufen. Der Text auf der Preisseite nennt nurnone,highundmax, aber das Modell akzeptiert in tatsächlichen Anfragen auchlowundmedium– alle fünf Stufen sind gültig. Für kurze, deterministische Aufgaben wie Listing-Texte reichennoneoderlowaus;high/maxsolltest du Szenarien vorbehalten, die Urteilsvermögen erfordern, etwa richtlinienkritische Support-Antworten.- Strukturierte Ausgabe verhält sich auf den verschiedenen Endpunkten unterschiedlich. Bei diesem Modell liefert
response_format: {"type": "json_schema", ...}auf/v1/chat/completionskeine schema-validierten Ergebnisse – verwende stattdessenresponse_format: {"type": "json_object"}und beschreibe die Struktur im Prompt. Wenn du eine erzwungene Schema-Validierung brauchst, sende dieselbe Anfrage an/v1/responsesund setzetext.format.type=json_schema– das wird eingehalten. - Funktionsaufrufe und Streaming funktionieren wie erwartet auf
/v1/chat/completions–tools,tool_choiceundstream: trueverhalten sich genauso wie bei jedem anderen OpenAI-kompatiblen Chat-Modell auf hiapi, sodass dein bestehender Tool-Calling-Code nicht angepasst werden muss.
Die Base-URL lautet https://api.hiapi.ai/v1, verwendet wird derselbe Schlüssel wie bei deinen anderen hiapi-Modellen. Die vollständigen Anfrage-/Antwortformate beider Endpunkte findest du auf der Modellseite.
Anwendungsfall 1: Batch-Generierung von Produktbeschreibungen mit strukturierter Ausgabe
Die naheliegendste Anwendung ist, Spezifikationstabellen im großen Maßstab in markengerechte Listing-Texte umzuwandeln und sie in einem Format auszugeben, das dein CMS direkt importieren kann, ohne Nachbearbeitung. Auf Chat Completions lässt sich das mit dem json_object-Modus plus einem klaren Schema im Prompt zuverlässig erreichen:
import json
import requests
resp = requests.post(
"https://api.hiapi.ai/v1/chat/completions",
headers={
"Authorization": f"Bearer {HIAPI_KEY}",
"Content-Type": "application/json",
},
json={
"model": "deepseek-v4.1-flash",
"reasoning_effort": "none",
"response_format": {"type": "json_object"},
"messages": [
{
"role": "system",
"content": (
"You write concise, factual e-commerce listing copy. "
"Never invent specs that aren't in the input. "
"Respond with JSON matching this shape: "
'{"title": str, "short_description": str, '
'"long_description": str, "bullet_points": [str]}'
),
},
{
"role": "user",
"content": (
"Product: ceramic pour-over coffee dripper, 400ml, "
"matte white, dishwasher safe, fits standard filters. "
"Write listing copy for this product."
),
},
],
},
)
listing = json.loads(resp.json()["choices"][0]["message"]["content"])
Führe dies für jede SKU in deiner Produktdatenbank aus, und du erhältst konsistente Texte, ohne den Text manuell aus einem Chatfenster kopieren zu müssen. Wenn du möchtest, dass die Antwort bei einem Formatfehler ausdrücklich einen Fehler meldet, statt dich auf die Befolgung des Prompts durch das Modell zu verlassen, sende die entsprechende Anfrage an /v1/responses und setze text.format.type=json_schema – dieser Pfad validiert die Ausgabe vor der Rückgabe gegen dein Schema.
Anwendungsfall 2: Kundensupport-Q&A auf Basis eigener Dokumente
Für einen Support-Assistenten musst du bei beiden Endpunkten das laufende Gespräch erneut übermitteln – standardmäßig behält keiner von beiden den Zustand zwischen Aufrufen, daher verwaltet deine Anwendung den Gesprächsverlauf, nicht der Anbieter. Das ist nützlich, wenn du Gespräche aus deiner eigenen Datenbank anonymisieren, verzweigen oder wiederherstellen möchtest, statt dem Sitzungsspeicher des Anbieters zu vertrauen.
history = [
{"role": "system", "content": "Answer only from the provided product FAQ context. "
"If the answer isn't in context, say so and offer to escalate."},
]
def ask(user_message: str, faq_context: str) -> str:
history.append({"role": "user", "content": f"Context:\n{faq_context}\n\nQuestion: {user_message}"})
resp = requests.post(
"https://api.hiapi.ai/v1/chat/completions",
headers={"Authorization": f"Bearer {HIAPI_KEY}", "Content-Type": "application/json"},
json={
"model": "deepseek-v4.1-flash",
"reasoning_effort": "low",
"messages": history,
},
)
answer = resp.json()["choices"][0]["message"]["content"]
history.append({"role": "assistant", "content": answer})
return answer
Für alles, was den Bestellstatus prüfen oder eine Rückgabe auslösen soll, deklariere dies als Funktion in tools – das Modell gibt einen tool_calls-Eintrag zurück, dein Backend führt ihn aus, dann hängst du eine role: "tool"-Nachricht mit dem Ergebnis an und rufst erneut auf. So kommt das Modell nie direkt an deine Bestelldatenbank, und es funktioniert genauso wie jedes andere OpenAI-kompatible Chat-Modell auf hiapi.
Anwendungsfall 3: Marketing-Textvarianten für verschiedene Kanäle
Dieselben Produktfakten erfordern unterschiedliche Formulierungen auf der Produktseite, in E-Mail-Betreffzeilen und in 30 Zeichen langen Anzeigentiteln. Mit stream: true auf /v1/chat/completions kannst du mehrere Kanalvarianten in einer Anfrage generieren und sie beim Eintreffen rendern, statt auf die vollständige Antwort zu warten – nützlich, wenn dies eine Live-Vorschau in einem internen Tool speist. Halte auch hier reasoning_effort bei none oder low; um den Ton kurzer Texte zu treffen, braucht es keine schwerere Inferenz, und dies hält die Latenz niedrig, wenn Marketingfachleute in Echtzeit iterieren.
Was kostet es
DeepSeek V4.1 Flash wird einheitlich pro Token abgerechnet, ohne vorab einzuplanende Staffelstufen:
| Eingabe | Ausgabe | Zwischengespeicherte Eingabe |
|---|---|---|
| $0.44 / 1M Tokens | $1.32 / 1M Tokens | $0.014 / 1M Tokens |
Für die oben genannten Anwendungsfälle – eine einzelne Produktbeschreibung, ein Support-Gesprächsschritt, eine Charge Kanalvarianten – kostet jeder Aufruf nur einen Bruchteil eines Cents. Der Tarif für zwischengespeicherte Eingabe lohnt sich für den bewussten Einsatz: Wenn dein System-Prompt lang ist und sich über Tausende von SKU-Aufrufen wiederholt, muss er zwischen den Anfragen byte-identisch bleiben, damit er für den Cache-Tarif in Frage kommt. Die Tarife richten sich nach der Nutzung und können sich ändern – bevor du dich zu großen Batch-Aufgaben verpflichtest, sieh unter hiapi.ai/pricing nach.
Wie sich dies in den Rest deines Stacks einfügt
Nichts davon ersetzt das eigentliche Bildmodell – DeepSeek V4.1 Flash hat keinen /v1/tasks-Zugriff und kann keine visuelle Ausgabe erzeugen. Wenn dein Workflow Produktfotografie oder Lifestyle-Aufnahmen passend zu diesen Texten benötigt, ist das ein separater Aufruf an ein Bildmodell wie GPT Image 2; beide teilen weder Anfrageformat noch Endpunkt. Wenn du bereits den GPT-6 Astra E-Commerce-Leitfaden gelesen hast, hat dieses Problem exakt dieselbe Form – der Unterschied besteht darin, dass DeepSeek V4.1 Flash dir Endpunktauswahl und eine flache Kostenkurve statt einer gestaffelten bietet.
FAQ
Kann DeepSeek V4.1 Flash Produktbilder generieren?
Nein. Es ist ein reines Textmodell ohne Bild-, Audio- oder Videoausgabe, erreichbar über /v1/chat/completions oder /v1/responses. Kombiniere es mit einem Bildmodell, um den visuellen Teil eines Produkt-Listings abzudecken.
Sollte ich für dieses Modell Chat Completions oder Responses verwenden?
Beides funktioniert – wähle das, was zu deiner bestehenden Integration passt. Der einzige Fall, in dem es einen Unterschied macht, ist die erzwungene strukturierte Ausgabe: Die json_schema-Validierung funktioniert auf /v1/responses, aber nicht auf /v1/chat/completions; dort solltest du stattdessen den json_object-Modus verwenden.
Was bewirkt reasoning_effort, und welche Stufe sollte ich verwenden?
Es steuert, wie viel interne Inferenz das Modell vor der Antwort durchführt, und tauscht Latenz und Kosten gegen Urteilsqualität. Alle fünf Stufen (none, low, medium, high, max) sind in tatsächlichen Anfragen gültig, obwohl die Preisseite nur drei nennt. Für kurze, deterministische Aufgaben wie die Beschreibungsgenerierung verwende none oder low; high oder max solltest du Support-Antworten vorbehalten, die Urteilsvermögen erfordern.
Kann Streaming zusammen mit Tool-Calling verwendet werden?
Ja – stream: true und tools funktionieren auf /v1/chat/completions unabhängig voneinander und lassen sich in derselben Anfrage kombinieren, genau wie bei jedem anderen OpenAI-kompatiblen Chat-Modell auf hiapi.
Muss ich in jeder Runde eines Support-Gesprächs den vollständigen Verlauf erneut übermitteln? Ja, auf beiden Endpunkten. Standardmäßig behält keiner von beiden den Gesprächszustand zwischen Aufrufen, daher muss deine Anwendung jedes Mal den benötigten Verlauf erneut senden. Das erhöht die Kosten für erneut übermittelte Eingabe-Tokens, aber es bedeutet, dass du kontrollierst, welcher Kontext enthalten ist, und Gespräche aus deiner eigenen Datenbank anonymisieren oder verzweigen kannst.
Gilt der Tarif für zwischengespeicherte Eingabe automatisch?
Er wird nur dann automatisch angewendet, wenn der führende Teil der Anfrage (normalerweise der System-Prompt) zwischen den Aufrufen byte-identisch ist. Prüfe im usage-Objekt der Antwort auf cached_tokens, statt anzunehmen, dass der Rabatt angewendet wurde.
Ähnliche Artikel
Alle Artikel ansehen →-
Benutzerhandbuch
seedream-5.0-pro/image-to-image Erste-Schritte-Leitfaden: Fähigkeiten, Preise und Integrationspunkte
Fähigkeitsgrenzen, Abrechnungsmodell und Engineering-Integration des Bildbearbeitungsmodells von ByteDance
-
Benutzerhandbuch
seedream-5.0-pro Text-zu-Bild Einstiegsleitfaden: Fähigkeitsgrenzen, API-Integration und Kostenkontrolle
Praxisorientierte Perspektive für Entwickler: von den wichtigsten Parametern bis zur Kostenschätzung von $0,05 pro Bild
-
Benutzerhandbuch
Hailuo 2.3 Fast Bild-zu-Video-Anleitung: Grenzen der Leistungsfähigkeit, Preisgestaltung und Integration in die Praxis
MiniMax Bild-zu-Video-Modell für Entwickler: Auswahlkriterien und Integrationspunkte