Zum Hauptinhalt springen

Brand Styling

Jedes Bild, das Nano Banana verlässt, läuft durch den Corporate Style Guide. Dieser Style Guide ist ein längeres Prosa-Dokument (packages/server/data/style-guide.md), das analyze-style.ts aus einem kuratierten Set an Referenzbildern extrahiert. Er beschreibt die visuelle Sprache der Firma: Palette, Motive, Illustrations-Register, Kompositionsregeln und was wir vermeiden.

Der Style Guide geht nie wörtlich an das Diffusion-Modell. Stattdessen formt er den Prompt an einer von zwei Stellen.

Zwei Wege zu einem styled Prompt

1. Architect-Pfad (Concepts)

Wenn ein User (Web-UI oder MCP-Tool propose_concepts) mit einer groben Idee startet, nutzt der Architect-Flow den Style Guide, um 3–5 Concept Proposals zu produzieren. Jeder Proposal hat:

  • einen kurzen Titel
  • eine Beschreibung
  • einen refined Prompt, schon in der Brand-Voice umgeschrieben
  • thematische Keywords

Wenn der User einen davon wählt und generate_image mit der passenden concept_id aufruft, fließt der refined Prompt direkt in die Image-Generation — kein weiteres Engineering nötig.

2. Prompt-Engineer-Pfad (One-Shot)

Wenn ein Client (MCP generate_image mit rohem prompt, ohne Concept) den Architect-Flow überspringt, läuft die Pipeline zuerst durch die Prompt-Engineer-Stage. Dieser Stage:

  1. Lädt den Style Guide.
  2. Ruft Gemini mit prompts/prompt-engineer.prompt auf (Style Guide + roher User-Prompt als Input).
  3. Liefert einen einzelnen refinedPrompt, der dann ans Diffusion-Modell geht.

Genau das rettet einen unstrukturierten Prompt wie "Hero-Image für den Gemini-Enterprise-Launch" davor, generischen Stockfoto-Output zu produzieren. Der refined Prompt sähe an derselben Stelle eher so aus: "isometrische Illustration eines transluzenten Daten-Prismas … in der Corporate Palette (#0066D4, #FFB300, #1A1A1A) mit weichem Richtungslicht von oben links, keine Text-Overlays" — und genau das bekommt das Modell zu sehen.

Wann der Engineer-Stage läuft

Caller-PfadEngineer läuft?Warum
Web-UI (Architect → Concept wählen → generieren)NeinArchitect hat schon einen refined Prompt
MCP propose_conceptsgenerate_image mit concept_idNeinGleicher Grund
MCP generate_image mit rohem promptJaKein Upstream-Refinement, Style würde wegfallen
Web-UI direkt generieren (ohne Architect)Nein*Die Web-UI hat keinen No-Architect-Flow

* Wenn ein zukünftiger Web-Flow den Architect überspringen würde, sollte er beim startGeneration-Aufruf zusätzlich includePromptEngineer: true setzen.

Implementation Pointer

packages/pipeline-core/src/start-generation.ts exposed StartGenerationInput.includePromptEngineer?: boolean (Default false). Der mcp-server übergibt includePromptEngineer: !args.concept_id.

Der serverseitige Handler unter POST /tasks/prompt-engineer liest den input.prompt aus der Pipeline, lässt den Genkit-prompt-engineer.prompt mit dem Style Guide laufen, markiert den Stage als completed mit { refinedPrompt, keywords } und enqueued danach generate-image mit dem refined Prompt im Payload.