Black Forest Labs
FLUX.1 Fill Pro
flux-1-fill-pro
Professionelles Inpainting- und Outpainting-Modell, das anhand einer binären Maske gezielt Bildbereiche ersetzt, entfernt oder erweitert und dabei Beleuchtung und Perspektive konsistent hält; erfordert eine Maskeneingabe und eignet sich für die Retusche statt für die Ganzbildgenerierung
flux-1-fill-pro ausprobieren
Eingabe
Galerie
Alle Arbeiten ansehenAusgabe
imagePreise
flux-1-fill-pro per image
| Einzelpreis | $0.0715 |
|---|
Positionierung
flux-1-fill-pro ist ein Inpainting-Modell für gezielte Bearbeitungen: Es nimmt ein Originalbild und eine Schwarz-Weiß-Maske zusammen mit einem Text-Prompt entgegen und zeichnet ausschließlich die weißen Maskenbereiche neu, während die schwarzen Bereiche unverändert bleiben. Es eignet sich für die Feinarbeit an Produktbildern, das lokale Austauschen von Komponenten in E-Commerce-Materialien, die Anpassung von Renderings sowie die Erweiterung des Bildformats – also für Szenarien, die chirurgisch präzise Eingriffe in eine bestehende Komposition erfordern. Entwickler rufen es über die einheitliche API von HiAPI.ai auf und zahlen pro Bild, ohne eine eigene Bildbearbeitungspipeline aufbauen zu müssen.
Kernhighlights
- Maskengesteuert, gezieltes Neuzeichnen – nur die weißen Maskenbereiche werden verändert, alle übrigen Pixel bleiben unangetastet; ideal für das präzise Ersetzen, Entfernen und Ergänzen von Elementen.
- Eine Schnittstelle für Inpainting und Outpainting – lokale Reparatur ohne strukturelle Änderungen bei Bedarf und Erweiterung der Leinwand zur Anpassung des Bildformats teilen sich denselben Satz an Eingabeparametern.
- Reproduzierbare Generierungssteuerung – über seed, steps, guidance und prompt_upsampling lassen sich Zufälligkeit und Prompt-Treue steuern, was die Batch-Erzeugung und Regressionsprüfung erleichtert.
Funktionsbeschreibung
Lokales Neuzeichnen per Maske: Mit Originalbild, gleich großer Schwarz-Weiß-Maske und Prompt lassen sich Inhalte in festgelegten Bereichen ersetzen oder neu hinzufügen, während schwarze Bereiche unverändert bleiben – geeignet für den lokalen Austausch von Komponenten und die Behebung von Fehlern.
Bildformat-Erweiterung und Vervollständigung der Komposition: Bereiche außerhalb der Bildränder lassen sich generativ erweitern, um das Seitenverhältnis anzupassen oder die Leinwand zu vervollständigen und so den Größenanforderungen verschiedener Ausspielkanäle gerecht zu werden.
Parametrisierte Qualitätskontrolle: Diffusionsschritte von 15–50 und Führungsstärke von 1,5–100 sind nach Bedarf einstellbar; mehr Schritte liefern feinere Details, dauern aber länger, eine höhere Führungsstärke folgt dem Prompt genauer.
Reproduzierbare Ergebnisse und Formatwahl: Ein fester seed reproduziert ähnliche Ergebnisse und erleichtert Batch-Aufgaben und Effektvergleiche; die Ausgabe ist wahlweise jpg oder png und fließt direkt in nachgelagerte Materialprozesse ein.
Schalter für automatische Prompt-Umschreibung: prompt_upsampling ist standardmäßig deaktiviert; bei Aktivierung wird der Prompt automatisch umgeschrieben, um mehr Kreativität zu erzeugen. Soll strikt nach dem Originaltext generiert werden, bleibt der Schalter aus.
Anwendungsfälle
- E-Commerce-Betrieb: lokaler Teileaustausch und Fehlerkorrektur bei Produktbildern – Mit der Maske werden zu ersetzende Produktkomponenten oder Flecken markiert, eine neue Beschreibung eingegeben und ein listenfähiges Produkthauptbild erzeugt, wodurch Neuaufnahmen und vollständige Neugenerierungen reduziert werden.
- Designteams: lokale Anpassung von Renderings und Leinwanderweiterung – Bestimmte Bereiche von Architektur- und Innenraum-Renderings werden bearbeitet oder die Leinwand nach außen erweitert, um Bilder für unterschiedliche Layouts zu erzeugen, wobei Beleuchtung und Perspektive konsistent bleiben.
- Materialaufbereitung: Störende Elemente entfernen und natürlich auffüllen – Unerwünschte Objekte werden im Originalbild per Maske markiert, der Prompt beschreibt den einzufügenden Inhalt, und es entsteht ein sauberes Bild für nachfolgendes Layout und Ausspielen.
Einschränkungen und Auswahlhinweise
Vor der Verwendung muss eine Schwarz-Weiß-Maske in derselben Größe wie das Originalbild vorbereitet werden, was einen zusätzlichen Arbeitsschritt der Bereichsmarkierung oder Segmentierung erfordert. Es handelt sich um ein Bearbeitungsmodell und nicht um ein allgemeines Text-zu-Bild-Modell; für die vollständige Generierung eines Bildes von Grund auf ist es nicht geeignet. Die Ergebnisse hängen von der Maskenqualität und der Prompt-Beschreibung ab; komplexe Texte und feine Strukturen erfordern möglicherweise mehrere Anpassungen. Bearbeitungen großer Flächen oder in hoher Auflösung erhöhen den Zeitaufwand und die Aufrufkosten erheblich; bei knappem Budget oder wenn eigene Gewichte selbst gehostet werden sollen, ist eine gesonderte Bewertung erforderlich.
Neuigkeiten
Changelog ansehen →- Neues Modell Dokumentation für Flux-1-Fill-Pro-Maskeninpainting hinzugefügt
Häufige Fragen
Alle Fragen ansehen →-
Was ist FLUX.1 Fill Pro?
FLUX.1 Fill Pro ist ein Bildbearbeitungsmodell für maskenbasiertes Inpainting: Originalbild, gleich große Schwarz-Weiß-Maske und Prompt hochladen; nur die weißen Bereiche werden neu gezeichnet, die schwarzen Bereiche bleiben unverändert.
-
Was bedeuten Schwarz und Weiß in einer Maske?
Schwarze Bereiche behalten das Originalbild bei, weiße Bereiche werden anhand des Prompts neu gezeichnet; die Maske muss dieselbe Größe wie das Originalbild haben.
-
Müssen sowohl image als auch mask hochgeladen werden?
Ja. Die aktuelle öffentliche Schnittstelle erfordert, dass sowohl das Originalbild als auch die Schwarz-Weiß-Maske bereitgestellt werden; beides ist zwingend erforderlich.
-
Was sollte der Prompt enthalten?
Beschreibe nur den neuen Inhalt, der im weißen Bereich der Maske erscheinen soll, und gib die Elemente an, die erhalten bleiben müssen; beschreibe nicht erneut das Bild außerhalb der Maske.
Generierungsaufgabe erstellen
https://api.hiapi.ai/v1/tasks Header
AuthorizationstringPflichtAccount-API-Schlüssel. Bei jeder Anfrage erforderlich. Beispiel: Bearer YOUR_HIAPI_API_KEY. API-Schlüssel holen
Content-TypestringOptionalDer Anfragekörper wird immer als JSON geparst; beim Senden ist nur application/json (optional mit charset) zulässig — andere Werte liefern 415. Beispiel: application/json.
Idempotency-KeystringOptionalIdempotenz-Schlüssel, bis 255 Bytes. Wiederholungen mit demselben Schlüssel desselben Kontos erstellen die Aufgabe nur einmal; Replays liefern die ursprüngliche taskId.
Bei Netzwerk-Timeouts oder Client-Wiederholungen erstellt derselbe Schlüssel die Aufgabe nur einmal — keine doppelte Abbuchung (Geltungsbereich = das Konto des API-Schlüssels). Empfohlen: geschäftsseitig eindeutige Kennung (z. B. "order-42"); Replays liefern die ursprüngliche taskId, Schlüssel laufen 24 Stunden nach der ersten Anfrage ab. Die vollständige Szenariomatrix steht in der Übersicht der Unified Async API.
Body
modelstringPflichtAktueller Festwert: flux-1-fill-pro
routestringOptionalAktueller Festwert: default
inputobjectPflicht
Geschäftsparameter für flux-1-fill-pro und Route default — siehe Parametertabelle unten.
maskstringPflichtSchwarz-weiße Maskenbild, das den Bereich für die Neugestaltung angibt: Der schwarze Bereich bleibt unverändert, der weiße Bereich wird gemäß dem Prompt neu gezeichnet. Unterstützt die Formate JPEG, PNG, GIF und WebP; die Abmessungen müssen mit dem Originalbild übereinstimmen.
seedintegerOptionalZufallsseed; bei festem Wert lassen sich ähnliche Ergebnisse reproduzieren; wird kein Wert übergeben, erfolgt eine zufällige Generierung.
imagestringPflichtDas zu bearbeitende Originalbild; unterstützt die Formate JPEG, PNG, GIF und WebP und kann eine Alpha-Maske enthalten. Bei Verwendung einer separaten Maske muss deren Größe mit dem Originalbild übereinstimmen.
stepsintegerOptionalStandard: 50min 15max 50Anzahl der Diffusionsschritte, Wertebereich 15–50, Standard 50; je höher der Wert, desto feiner die Details, aber desto länger die Laufzeit.
promptstringPflichtminLength 1maxLength 4000Beschreibt den Inhalt, der im weißen Maskenbereich erzeugt oder ersetzt werden soll, maximal 4000 Zeichen.
guidancenumberOptionalStandard: 60min 1.5max 100Stärke der Prompt-Führung, Wertebereich 1,5–100, Standard 60; je höher der Wert, desto stärker folgt das Ergebnis dem Prompt, was jedoch die Natürlichkeit des Bildes beeinträchtigen kann.
output_formatstringOptionalStandard: "jpg"Ausgabeformat des Bildes, Wert jpg oder png, Standard jpg.
jpgpngprompt_upsamplingbooleanOptionalStandard: falseOb der Prompt automatisch umgeschrieben wird, um die Kreativität zu erhöhen, Standard false; bei strenger Generierung nach dem Originaltext sollte dies deaktiviert werden.
callbackobjectOptional
Konfiguration der Endzustands-Benachrichtigung. Ohne Angabe wird kein Callback gesendet — selbst abfragen.
Beim Erstellen callback.url angeben, dann POSTet HiAPI im Endzustand an Ihren Service — kein Polling nötig. Der Callback-Body entspricht der Aufgaben-Detailstruktur; Signaturprüfung, Wiederholungen und Idempotenz sind in der Übersicht der Unified Async API beschrieben.
urlstringPflichtPflicht, wenn callback angegeben ist. Nach dem Endzustand wird an diese URL gepostet; muss eine gültige http(s)-URL sein.
whenstringOptionalStandard: "final"Derzeit wird nur final unterstützt — Benachrichtigung bei success und fail.
finalstoragestringOptionalStandard: "temp"Speicherstufe für Artefakte: temp (Standard, ca. 7 Tage) oder persistent (langfristig, nach Größe abgerechnet). Bei unzureichendem Guthaben oder Überschreitung des Speicherlimits erfolgt ein stiller Downgrade auf temp; die wirksame Stufe steht in der Aufgaben-Detailantwort.
temppersistentAnfragebeispiele
# Asynchrone Aufgabe senden; gibt sofort eine taskId zurück (wartet nicht auf die Generierung)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "flux-1-fill-pro",
"input": {
"mask": "…",
"image": "…",
"steps": 50,
"prompt": "…",
"guidance": 60,
"output_format": "jpg",
"prompt_upsampling": false
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "flux-1-fill-pro",
input: {
"mask": "…",
"image": "…",
"steps": 50,
"prompt": "…",
"guidance": 60,
"output_format": "jpg",
"prompt_upsampling": false
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "flux-1-fill-pro",
"input": {
"mask": "…",
"image": "…",
"steps": 50,
"prompt": "…",
"guidance": 60,
"output_format": "jpg",
"prompt_upsampling": False
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Aufgabendetails abrufen
https://api.hiapi.ai/v1/tasks/:id Antwortfelder
taskIdstringPflichtAufgaben-ID, stets mit Präfix tk-hiapi-.
modelstringPflichtAufgelöster vollständiger Modellname. Mit route-Parameter eingereichte Aufgaben geben base@route zurück (z. B. gpt-image-2/text-to-image@ext); sonst identisch mit dem übermittelten Namen.
routestringOptionalErscheint nur bei explizitem route-Parameter; gibt den übermittelten Wert zurück.
statusstringPflichtAufgabenstatus.
queued Eingereiht, noch nicht gestartet.
handling In Verarbeitung.
archiving Verarbeitung abgeschlossen, Artefakte werden vorbereitet.
success Endzustand: abgeschlossen, Artefakte verfügbar (output wird zurückgegeben).
fail Endzustand: fehlgeschlagen (error wird zurückgegeben).
Nach dem Senden den status prüfen: success und fail sind Endzustände, alles andere nicht. Alle 1–3 Sekunden bis zum Endzustand pollen. Nach Erfolg Artefakte aus output[].url laden und vor expireAt übertragen; für Langzeitaufbewahrung storage: "persistent" beim Erstellen angeben.
creatednumberPflichtZeitpunkt der Aufgabenerstellung (Unix-Sekunden).
completednumberPflichtUnix-Sekunden des Endzustands; vor Abschluss stets 0.
outputarrayOptional
Nur bei status == success. Artefaktliste — immer ein Array; eine Aufgabe kann mehrere Typen gleichzeitig liefern (z. B. video + first_frame).
Array [ object ]
Array-Elemente
urlstringPflichtArtefakt-URL, direkt herunterladbar.
typestringPflichtAktuell mögliche Werte: video, image, audio, first_frame, last_frame, thumbnail; später können weitere folgen.
expireAtnumberPflichtUnix-Sekunden, bis wann das Artefakt verfügbar ist; vorher herunterladen oder übertragen.
errorobjectOptional
Nur bei status == fail.
codestringPflichtBusiness-Fehlercode.
messagestringPflichtFehlerbeschreibung.
Antwortbeispiele
Erfolg
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} In Bearbeitung (nicht final)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Fehlgeschlagen
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Artikel
Alle Artikel ansehen →-
Tutorial
So rufen Sie kling-4.0/image-to-video auf HiAPI auf: curl, Python und Polling
-
Tutorial
kandinsky-6.0-pro/image-to-video auf HiAPI: Tutorial mit curl und Python
Eine funktionierende Bild-zu-Video-Anfrage auf HiAPI ausführen: vom Upload des ersten Frames über asynchrones Polling bis zum finalen Download
-
Vergleichstest
hailuo-2.3-fast/image-to-video im Quervergleich: Wie man Bild-zu-Video-Modelle auswählt und worauf bei der Migration zu achten ist
-
Tutorial
So nutzt du kling-4.0/text-to-video über die HiAPI-API: curl, Python und ein lauffähiges Anforderungsbeispiel
Ein praxisnaher Leitfaden für Entwickler: filmische Prompts, synchrones Audio, asynchrones Polling und Download der Ausgabe
-
Vergleichstest
Recraft v4.1 Flash 文生图横向对比:Entwickler-Auswahl und Migrationsleitfaden
Mit Kosten von $0,01 pro Bild und reiner Text-zu-Bild-Fähigkeit beurteilen, ob es zu Ihrer Bildgenerierungs-Pipeline passt
-
Tutorial
Kandinsky 6.0 Pro Text-zu-Video auf HiAPI: curl- und Python-Tutorial
Eine anfrageorientierte praktische Demonstration: Aufbau des Aufrufs vom Prompt zum Videoclip, Absenden der Anfrage, Abfragen des Fertigstellungsstatus und Herunterladen des Ergebnisses
-
Tutorial
So rufen Sie hailuo-2.3/text-to-video über die HiAPI API auf: curl, Python und lauffähige Anfragebeispiele
-
Tutorial
So rufen Sie hailuo-2.3-fast/image-to-video über die HiAPI API auf: curl und Python in der Praxis
Die erste lauffähige Anfrage für die schnelle, kostengünstige Bild-zu-Video-Stufe – von der Modell-ID bis zum heruntergeladenen MP4
Ähnliche Modelle
Alle Modelle ansehen →Gleicher Typ
-
Krea 3 Krea $0.036 /Bild -
Recraft Creative Upscale Recraft $0.357 /Bild -
Z-Image Alibaba $0.008 /Bild -
Seedream 5.0 ByteDance $0.025 /Bild -
FLUX.2 Black Forest Labs $0.035 /Bild -
FIBO 1.5 Bria $0.058 /Bild -
FLUX.1 Kontext Max Black Forest Labs $0.071 /Bild -
FLUX.1 Schnell Black Forest Labs $0.005 /Bild -
Nano Banana 2 Google $0.036 /Bild -
BRIA Eraser Bria $0.058 /Bild -
Ideogram V4.5 Ideogram $0.011 /Bild -
Ideogram V3 Character Ideogram $0.090 /Bild
Gleicher Anbieter
-
FLUX.1 Schnell Black Forest Labs $0.005 /Bild -
FLUX 3 Image Black Forest Labs $0.041 /Bild -
FLUX 3 Video Black Forest Labs $0.090 /Sekunde -
FLUX.2 Klein 9B Black Forest Labs $0.0086 /Bild -
FLUX.2 Black Forest Labs $0.035 /Bild -
FLUX 3 Max Black Forest Labs $0.061 /Sekunde -
FLUX.1 Kontext Max Black Forest Labs $0.071 /Bild -
FLUX 1.1 Pro Black Forest Labs $0.050 /Bild -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /Bild

![FLUX.1 Fill [pro] Weltbild-Szenenkonzept: Weitläufiger Gebirgskamm](https://static.hiapi.ai/_i/v1/FFXyuyR-n_cY3KSvjHMQfw/7SbeuZdKdHydTU940SQckw.webp)









