Zum Inhalt springen
CASOON

KI-Bilder per Kommandozeile auf dem Mac: API oder lokal?

Cloud-APIs vs. lokale Stable Diffusion – Kosten, Qualität und ein ehrlicher Vergleich für Entwickler, die Bildgenerierung automatisieren wollen.

14 Minuten
KI-Bilder per Kommandozeile auf dem Mac: API oder lokal?
#KI-Bilder #Stable Diffusion #CLI #Bildgenerierung

Wer Bilder automatisiert generieren will — für Blogposts, Pinterest-Grafiken oder Produktbilder — landet schnell bei zwei sauberen Architekturen:

  1. Cloud-API mit Abrechnung pro Bild
  2. Lokale Stable-Diffusion-Instanz auf dem Mac

Beide Ansätze lassen sich per CLI integrieren. Der Unterschied liegt bei Kostenstruktur, Bildqualität, Kontrolle und Setup-Aufwand. Dieser Artikel vergleicht beide Wege und zeigt, was man realistisch erwarten kann.

Cloud-APIs: Pay-per-Image, direkt per curl

Das Muster ist simpel: Du schickst Prompt, Auflösung und Format an eine REST-API, bekommst Base64 oder eine URL zurück, speicherst lokal und konvertierst bei Bedarf nach WebP.

Anbieter im Überblick

  • OpenAI — DALL·E 3 und gpt-image-1. Gute Qualität, einfache API, aber nicht das günstigste Modell.
  • Replicate — Flux-Modelle von Black Forest Labs. Aktuell das beste Preis-Leistungs-Verhältnis.
  • Stability AI — Stable Diffusion als API. Flexibel, aber API-Dokumentation teils unübersichtlich.
  • Google — Imagen über die Gemini-API. Gute Qualität, noch eingeschränktes Ökosystem.
  • Freepik — AI Image API. Einsteigerfreundlich, aber weniger Kontrolle.

Minimaler CLI-Workflow

curl https://api.openai.com/v1/images \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Top view of a rustic pasta dish, natural light, food photography",
    "size": "1024x1536"
  }' | jq -r '.data[0].b64_json' | base64 -D > out.png

magick out.png -quality 90 out.webp

Das lässt sich in ein Node- oder Python-CLI packen mit Parametern wie --prompt, --width, --height, --format webp und --outdir.

Preis-Leistungs-Vergleich

Anbieter / ModellKosten pro BildQualitätHochformat~100 Bilder
Replicate: Flux Schnell~0,003 €GutJa0,30 €
Replicate: Flux 1.1 Pro0,04 €Sehr gutJa (bis 4MP)4 €
OpenAI: gpt-image-1 (medium)~0,04 €Sehr gut1024×15364 €
OpenAI: DALL·E 30,07 €Gut1024×17927 €
OpenAI: gpt-image-1 (high)~0,16 €Exzellent1024×153616 €
Google: Gemini Imagen~0,04 €Sehr gutJa4 €

Einordnung: Für Produktionsqualität bei vertretbaren Kosten liegen Flux 1.1 Pro und gpt-image-1 (medium) sehr nah beieinander. DALL·E 3 ist teurer und weniger flexibel im Seitenverhältnis. Schnell-Modelle wie Flux Schnell sind extrem günstig, aber eher für Draft-Phasen geeignet.

Lokale Generierung auf dem Mac

Wer keine Cloud will, hohe Volumina plant oder einfach volle Kontrolle braucht, kann Stable Diffusion lokal auf Apple Silicon laufen lassen.

Tools für macOS

DiffusionBee — macOS-App für Apple Silicon. Kein Terminal nötig, GUI-orientiert, technisch erweiterbar. Gut für den Einstieg.

Sogni — Umfangreichere Stable-Diffusion-Umgebung mit vielen Parametern. Auch für größere Batch-Runs geeignet.

ComfyUI / InvokeAI — Für ein echtes CLI-Szenario sinnvoller als GUI-Apps. Beide bieten einen API-Layer, der sich in Skripte integrieren lässt.

Vorteile lokal

  • Keine variablen Kosten pro Bild — nach dem Setup kostet jedes weitere Bild nur Strom und Zeit.
  • Volle Kontrolle über Modelle, LoRAs und Sampling-Parameter.
  • Kein externer Datentransfer — relevant bei sensiblen Inhalten oder Markenmotiven.
  • Reproduzierbarkeit: gleicher Seed, gleiches Ergebnis.

Nachteile lokal

  • Setup-Aufwand. Python-Umgebung, Modell-Downloads (mehrere GB pro Modell), Abhängigkeiten.
  • GPU-Limitierungen. Apple Silicon nutzt Unified Memory — ein M1 mit 16 GB RAM generiert Bilder, aber langsam. Für 1024×1536 bei guter Qualität braucht man realistische 30–90 Sekunden pro Bild, je nach Modell und Step-Count.
  • Qualitätsgap. Die besten Cloud-Modelle (gpt-image-1, Flux 1.1 Pro) sind den lokal verfügbaren Open-Source-Modellen aktuell einen Schritt voraus — besonders bei Textrendering, Gesichtern und feinen Texturen.
  • Wartung. Modell-Updates, Breaking Changes in Dependencies, VRAM-Management.

Bildqualität: Was kann man realistisch erwarten?

Das ist die Frage, die in den meisten Vergleichen zu kurz kommt. Ein ehrlicher Blick:

Cloud-APIs (Flux 1.1 Pro, gpt-image-1)

  • Fotorealismus: Sehr gut. Natürliches Licht, Texturen, Tiefenschärfe — bei guten Prompts kaum von echten Fotos zu unterscheiden.
  • Textrendering: gpt-image-1 kann Text in Bildern darstellen. Flux-Modelle haben hier Schwächen.
  • Konsistenz: Hohe Trefferquote. 7 von 10 Bildern sind direkt nutzbar.
  • Schwächen: Hände und feine anatomische Details bleiben problematisch. Sehr spezifische Marken- oder Produktdarstellungen erfordern Nacharbeit.

Lokale Modelle (SDXL, SD 1.5, Flux.1 Dev)

  • Fotorealismus: Gut bis sehr gut mit den richtigen Modellen und LoRAs. SDXL mit Refiner liefert brauchbare Ergebnisse.
  • Textrendering: Schwach. Text in Bildern ist selten lesbar.
  • Konsistenz: Niedriger. 3–5 von 10 Bildern sind direkt nutzbar, der Rest braucht Rerolls oder Nachbearbeitung.
  • Stärke: Stilisierung. Wer einen bestimmten visuellen Stil will (Illustration, Anime, Vintage), kann mit Fine-Tuning und LoRAs Ergebnisse erzielen, die Cloud-APIs nicht bieten.

Wo die Cloud klar gewinnt

  • Food-Fotografie mit realistischen Texturen
  • Porträts und Lifestyle-Bilder
  • Text-Overlays im Bild
  • Konsistenz bei hohen Stückzahlen

Wo lokal mithalten kann

  • Abstrakte und stilisierte Grafiken
  • Illustrationen mit definiertem Stil
  • Batch-Generierung ohne Kostendeckel
  • Experimente mit Modell-Kombinationen

Praxis: Flux 1.1 Pro über Replicate in 10 Minuten

Der schnellste Weg zu produktionstauglichen KI-Bildern per Kommandozeile: Flux 1.1 Pro über Replicate. Kein SDK, kein Framework — nur curl, ein API-Token und ein Bash-Script.

Account und API-Token

  1. Account bei Replicate anlegen.
  2. API-Token erzeugen unter replicate.com/account/api-tokens.
  3. Token in der Shell setzen:
export REPLICATE_API_TOKEN=dein_token_hier

Das Modell heißt black-forest-labs/flux-1.1-pro — das hochwertige Fotorealismus-Modell von Black Forest Labs.

Erster Test per curl

Replicate arbeitet mit Predictions: Du startest eine Prediction, bekommst eine ID, holst dir das Ergebnis.

curl -X POST https://api.replicate.com/v1/predictions \
  -H "Authorization: Token $REPLICATE_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "version": "MODEL_VERSION_HASH",
    "input": {
      "prompt": "Rustic pasta on wooden table, natural light, food photography",
      "width": 768,
      "height": 1152
    }
  }'

Die exakte Version-ID des Modells findest du auf der Replicate-Modellseite.

Einfacher Weg: Replicate CLI

Statt manuell zu pollen, nimm die Replicate CLI:

brew install replicate

Dann direkt generieren:

replicate run black-forest-labs/flux-1.1-pro \
  -i prompt="Rustic pasta, natural light" \
  -i width=768 \
  -i height=1152 \
  > output.json

Die Bild-URL aus dem Output herunterladen und nach WebP konvertieren:

curl -L "BILD_URL" -o out.png
magick out.png -quality 90 out.webp

Batch-Script für mehrere Bilder

Ein einfaches generate.sh für den Produktionseinsatz:

#!/bin/bash

PROMPT="$1"
WIDTH=768
HEIGHT=1152

URL=$(replicate run black-forest-labs/flux-1.1-pro \
  -i prompt="$PROMPT" \
  -i width=$WIDTH \
  -i height=$HEIGHT)

curl -L "$URL" -o output.png
magick output.png -quality 90 output.webp

Aufruf:

./generate.sh "Top view of tomato pasta, Pinterest style"

Fertiges CLI-Tool: imgen

Wer sich das Bash-Scripting sparen will: imgen ist ein Open-Source-CLI-Tool in Rust, das genau diesen Workflow abbildet. Es unterstützt alle gängigen Replicate-Modelle, löst Modell-Versionen und Aspect-Ratio-Handling automatisch auf und liefert direkte WebP-Konvertierung.

brew tap casoon/tap
brew install imgen

Einzelbild:

imgen "Rustic pasta on wooden table, natural light" --out pasta.png --webp

Batch-Modus mit JSON-Datei für mehrere Bilder, inklusive Defaults für Modell, Auflösung und Format:

{
  "defaults": {
    "model": "black-forest-labs/flux-1.1-pro",
    "width": 1024,
    "height": 1024,
    "webp": 80
  },
  "jobs": [
    { "prompt": "Mountain landscape at sunset", "out": "images/mountain.webp" },
    { "prompt": "Coffee shop interior, warm light", "out": "images/coffee.webp" }
  ]
}
imgen --prompt-file prompts.json

Das Tool wählt automatisch das passende Aspect Ratio für das jeweilige Modell — bei Modellen mit festen Ratios (z.B. 16:9, 3:4) wird die nächste Übereinstimmung gewählt, bei custom-fähigen Modellen die exakten Pixel-Dimensionen übergeben. Unterstützt werden unter anderem Flux Pro, Flux Schnell, Flux Dev, Ideogram v3, SDXL und Stable Diffusion 3.

Kosten realistisch

Flux 1.1 Pro kostet ca. 0,04 € pro Bild. 100 Bilder liegen bei ca. 4 €. Sehr gutes Preis-Leistungs-Verhältnis für Produktionsqualität.

Wann Replicate, wann OpenAI?

Replicate ist sinnvoll, wenn du verschiedene Modelle testen willst, preislich flexibel bleiben willst oder Batch-Jobs fährst. Wenn du nur ein einziges stabiles Modell brauchst und bereits OpenAI nutzt, ist die direkte OpenAI-API einfacher — ein Endpunkt, keine Predictions-Logik.

Best Practice: Cloud und lokal kombinieren

Der pragmatischste Ansatz ist kein Entweder-oder, sondern ein bewusstes Routing je nach Anwendungsfall.

Phase 1 — Cloud starten

  1. API wählen: Flux 1.1 Pro über Replicate oder gpt-image-1 für Produktionsbilder.
  2. Eigenes CLI-Tool bauen mit Parametern für Prompt, Format, Auflösung.
  3. WebP-Konvertierung automatisieren (magick oder sharp in Node.js).
  4. Logging und Kosten-Tracking einbauen — sonst verliert man schnell den Überblick.

Phase 2 — Lokal ergänzen

  1. ComfyUI oder InvokeAI aufsetzen für headless-Betrieb.
  2. CLI-Flag --provider local|cloud implementieren.
  3. Einheitliche Parameter-Schnittstelle, damit Prompts zwischen Providern portierbar sind.
  4. Lokale Modelle für Experimente und Style-Exploration nutzen, Cloud für finale Produktionsbilder.

Entscheidungsmatrix

KriteriumCloud-APILokal
Setup-ZeitMinutenStunden bis Tage
Kosten pro Bild0,003–0,16 €~0 € (nach Setup)
Qualität (Fotorealismus)Sehr gut bis exzellentGut bis sehr gut
Geschwindigkeit2–15 Sekunden30–90 Sekunden
KontrolleBegrenzt auf API-ParameterVoll
DatenschutzDaten gehen an DritteAlles lokal
SkalierungUnbegrenzt (Kosten steigen)Hardware-limitiert
KonsistenzHochMittel

Für Pinterest-Hochformat und Food-Fotografie

Wer konkret für Pinterest oder Food-Content generiert, sollte wissen:

  • Portrait-Formate wie 2:3 oder 1024×1536 sind Pflicht. Nicht jede API unterstützt beliebige Seitenverhältnisse.
  • Texturdetails bei Lebensmitteln sind entscheidend — Kruste, Dampf, Tropfen. Hier liefern Cloud-APIs (besonders gpt-image-1 und Flux 1.1 Pro) deutlich bessere Ergebnisse als lokale Modelle.
  • Lichtsimulation muss sauber sein. Natürliches Seitenlicht, Gegenlicht, Top-Down — die Prompt-Formulierung macht den Unterschied.

Preis-Leistungs-technisch ist aktuell Flux 1.1 Pro über Replicate oder gpt-image-1 (medium) am ausgewogensten für diesen Einsatzzweck.

Prototyp oder Produktion?

Die Frage ist nicht API oder lokal. Die Frage ist: Was brauchst du jetzt, und was in drei Monaten?

Für den Einstieg reicht ein Bash-Script mit curl und ein API-Key. Für 50–100 Bilder im Monat ist das günstiger und schneller als jedes lokale Setup.

Wer langfristig 1.000+ Bilder im Monat generiert, sollte lokal ergänzen — nicht ersetzen. Cloud für Qualität, lokal für Volumen und Experimente. Ein sauberes CLI mit --provider-Flag macht beides transparent.

Das Werkzeug ist da. Die Qualität ist da. Was fehlt, ist meistens nur die Entscheidung, es tatsächlich in den eigenen Workflow zu integrieren.

Quellen

Weiterlesen