
A geração de imagens por inteligência artificial deu um salto qualitativo com a introdução da GPT Image, que permite criar imagens altamente personalizadas com linguagem natural. No entanto, conforme os prompts se tornam mais complexos, cresce também a necessidade de estruturação clara e modular — e é aí que o YAML brilha.
Neste post, exploramos como usar YAML como linguagem descritiva para gerar imagens, apresentando boas práticas e um exemplo completo para cenas ricas em contexto, estilo e composição.
🔧 Por que usar YAML para Prompts Visuais?
Usar YAML ao invés de texto corrido traz benefícios claros:
- ✅ Organização hierárquica de elementos visuais
- ✅ Legibilidade para humanos e compatibilidade com APIs estruturadas
- ✅ Reusabilidade e fácil versionamento de partes do prompt
- ✅ Precisão sem ambiguidade: separa conceito, estilo e intenção final
🧱 Estrutura Recomendada
yaml
metadata:
version: "1.0.0"
created_at: "2025-04-23"
author: "Seu Nome"
purpose: "Descrição breve do propósito da imagem"
style_reference: "Referência estilística (ex: ‘Studio Ghibli’, ‘Klimt’, ‘Photorealism’)"
scene:
setting:
location: "Lugar específico"
time_of_day: "Dia / noite / entardecer"
era: "Década ou contexto histórico"
lighting: "Tipo de iluminação"
weather: "Clima"
atmosphere: "Sensações pretendidas"
camera_style:
type: "Tipo de câmera (digital, analógica, filme)"
effects: ["granulação", "distorção", "saturação", etc.]
framing: "Plano geral, close-up, aérea, etc."
composition:
foreground:
- "Elementos em primeiro plano"
midground:
- "Elementos ao centro"
background:
- "Elementos ao fundo"
characters:
crowd:
diversity: "Diversidade desejada"
fashion:
era: "Época"
elements: ["roupas específicas", "acessórios"]
action: ["movimentos ou comportamentos"]
style:
photorealism: true
texture: "Textura desejada (granulação, pintura a óleo, etc.)"
lighting_details: "Contrastes, reflexos, halos"
color_palette:
dominant: ["cores principais"]
secondary: ["cores complementares"]
depth: "Distribuição de camadas (2D plano ou 3D com profundidade)"
notes:
- "Instruções adicionais (ex: fidelidade cultural, elementos que não podem faltar)"
🎯 Boas Práticas
1. Separar narrativa de estilo
Evite misturar estilo visual com eventos da cena. Isso mantém o prompt interpretável tanto para humanos quanto para a API.
2. Descrever em camadas (foreground / midground / background)
Isso ajuda o modelo a organizar os elementos visuais com coerência espacial.
3. Especificar o estilo de câmera e textura
Quer uma imagem que pareça saída de uma câmera descartável dos anos 80? Diga isso.
4. Controlar a paleta de cores
Indicar cores dominantes e secundárias melhora a estética e fidelidade temática da imagem.
5. Adicionar instruções culturais e visuais precisas
Exemplo: “garanta que as roupas estejam em sintonia com a moda japonesa da década de 80” ou “insira kanji corretos nas placas”.
🌆 Exemplo: Tóquio nos Anos 80
Trecho adaptado do nosso YAML completo:
yaml
metadata:
version: "1.0.0"
created_at: "2025-04-23"
author: "Elzo Brito & ChatGPT"
purpose: "Image generation prompt for GPT Image API"
style_reference: "Photorealistic retro photography, 1980s Tokyo"
scene:
setting:
location: "Tokyo street market"
time_of_day: "Night"
era: "1980s"
lighting: "Colorful neon signs in Japanese characters"
weather: "Cool and slightly humid evening"
atmosphere: "Lively, slightly hazy with neon reflections on wet pavement"
camera_style:
type: "Disposable film camera"
brand_simulation: "Fujifilm / Kodak"
effects: ["grainy texture", "soft lens glow", "color shift toward magenta and cyan"]
framing: "Wide-angle street view with depth of field"
composition:
foreground:
- "Street food vendor grilling yakitori with visible smoke and orange glow"
- "Group of teenagers in retro fashion (acid-wash jeans, windbreakers, headbands)"
- "Neon signs reflecting off rain-slick street"
midground:
- "Vending machines with glowing buttons"
- "Shoppers holding shopping bags and cassette tapes"
background:
- "Large Sony Walkman billboard in Japanese katakana with bold red and yellow colors"
- "Silhouette of a passing train behind buildings"
- "Pagoda-style rooftop in shadow"
characters:
crowd:
diversity: "High"
fashion:
era: "1980s Japanese urban"
elements: ["shoulder pads", "high-waist pants", "vintage sneakers", "tucked shirts"]
action: ["shopping", "eating", "chatting", "taking photos with analog cameras"]
style:
photorealism: true
texture: "High grain, analog softness"
lighting_details: "Multiple colored light sources, strong contrast, neon halos"
color_palette:
dominant: ["electric blue", "hot pink", "deep red", "neon green"]
secondary: ["warm amber", "steel gray", "midnight blue"]
depth: "Layered composition with atmospheric haze"
notes:
- "Ensure signs and clothing have Japanese cultural accuracy"
- "Add subtle lens flares near neon lights"
- "Include handwritten signboards and kanji graffiti for authenticity"
Resultado: A imagem gerada trouxe com fidelidade visual os elementos solicitados — desde o cartaz do Walkman até a moda vintage e a textura analógica típica de fotos de filme.
🛠️ Ferramentas Recomendadas
- Editor de YAML: YAML Lint
- Visualizador de YAML estruturado: Obsidian ou VSCode com plugins de preview