Habilidade de Geração de Imagens
Visão Geral
Esta habilidade gera imagens de alta qualidade usando prompts estruturados e um script Python. O fluxo de trabalho inclui a criação de prompts em formato JSON e a execução da geração de imagens com imagens de referência opcionais.
Capacidades Principais
- Criar prompts JSON estruturados para geração de imagens AIGC
- Suportar múltiplas imagens de referência para orientação de estilo/composição
- Gerar imagens através da execução automatizada de script Python
- Lidar com vários cenários de geração de imagens (design de personagens, cenas, produtos, etc.)
Fluxo de Trabalho
Passo 1: Entender os Requisitos
Quando um usuário solicitar geração de imagem, identifique:
- Assunto/conteúdo: O que deve estar na imagem
- Preferências de estilo: Estilo artístico, clima, paleta de cores
- Especificações técnicas: Proporção de aspecto, composição, iluminação
- Imagens de referência: Quaisquer imagens para guiar a geração
- Você não precisa verificar a pasta em
/mnt/user-data
Passo 2: Criar Prompt Estruturado
Gere um arquivo JSON estruturado em /mnt/user-data/workspace/ com o padrão de nomenclatura: {nome-descritivo}.json
Passo 3: Executar a Geração
Chame o script Python:
python /mnt/skills/public/image-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/arquivo-prompt.json \
--reference-images /caminho/para/ref1.jpg /caminho/para/ref2.png \
--output-file /mnt/user-data/outputs/imagem-gerada.jpg \
--aspect-ratio 16:9
Parâmetros:
--prompt-file: Caminho absoluto para o arquivo JSON do prompt (obrigatório)--reference-images: Caminhos absolutos para imagens de referência (opcional, separados por espaço)--output-file: Caminho absoluto para o arquivo de imagem de saída (obrigatório)--aspect-ratio: Proporção de aspecto da imagem gerada (opcional, padrão: 16:9)
[!NOTE] NÃO leia o arquivo Python, apenas chame-o com os parâmetros.
Exemplo de Geração de Personagem
Solicitação do usuário: "Crie uma personagem feminina estilo street de Tóquio dos anos 1990"
Crie o arquivo de prompt: /mnt/user-data/workspace/mulher-asiatica.json
{
"characters": [{
"gender": "female",
"age": "mid-20s",
"ethnicity": "Japanese",
"body_type": "slender, elegant",
"facial_features": "delicate features, expressive eyes, subtle makeup with emphasis on lips, long dark hair partially wet from rain",
"clothing": "stylish trench coat, designer handbag, high heels, contemporary Tokyo street fashion",
"accessories": "minimal jewelry, statement earrings, leather handbag",
"era": "1990s"
}],
"negative_prompt": "blurry face, deformed, low quality, overly sharp digital look, oversaturated colors, artificial lighting, studio setting, posed, selfie angle",
"style": "Leica M11 street photography aesthetic, film-like rendering, natural color palette with slight warmth, bokeh background blur, analog photography feel",
"composition": "medium shot, rule of thirds, subject slightly off-center, environmental context of Tokyo street visible, shallow depth of field isolating subject",
"lighting": "neon lights from signs and storefronts, wet pavement reflections, soft ambient city glow, natural street lighting, rim lighting from background neons",
"color_palette": "muted naturalistic tones, warm skin tones, cool blue and magenta neon accents, desaturated compared to digital photography, film grain texture"
}
Execute a geração:
python /mnt/skills/public/image-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/hacker-ciberpunk.json \
--output-file /mnt/user-data/outputs/hacker-ciberpunk-01.jpg \
--aspect-ratio 2:3
Com imagens de referência:
{
"characters": [{
"gender": "based on [Image 1]",
"age": "based on [Image 1]",
"ethnicity": "human from [Image 1] adapted to Star Wars universe",
"body_type": "based on [Image 1]",
"facial_features": "matching [Image 1] with slight weathered look from space travel",
"clothing": "Star Wars style outfit - worn leather jacket with utility vest, cargo pants with tactical pouches, scuffed boots, belt with holster",
"accessories": "blaster pistol on hip, comlink device on wrist, goggles pushed up on forehead, satchel with supplies, personal vehicle based on [Image 2]",
"era": "Star Wars universe, post-Empire era"
}],
"prompt": "Character inspired by [Image 1] standing next to a vehicle inspired by [Image 2] on a bustling alien planet street in Star Wars universe aesthetic. Character wearing worn leather jacket with utility vest, cargo pants with tactical pouches, scuffed boots, belt with blaster holster. The vehicle adapted to Star Wars aesthetic with weathered metal panels, repulsor engines, desert dust covering, parked on the street. Exotic alien marketplace street with multi-level architecture, weathered metal structures, hanging market stalls with colorful awnings, alien species walking by as background characters. Twin suns casting warm golden light, atmospheric dust particles in air, moisture vaporators visible in distance. Gritty lived-in Star Wars aesthetic, practical effects look, film grain texture, cinematic composition.",
"negative_prompt": "clean futuristic look, sterile environment, overly CGI appearance, fantasy medieval elements, Earth architecture, modern city",
"style": "Star Wars original trilogy aesthetic, lived-in universe, practical effects inspired, cinematic film look, slightly desaturated with warm tones",
"composition": "medium wide shot, character in foreground with alien street extending into background, environmental storytelling, rule of thirds",
"lighting": "warm golden hour lighting from twin suns, rim lighting on character, atmospheric haze, practical light sources from market stalls",
"color_palette": "warm sandy tones, ochre and sienna, dusty blues, weathered metals, muted earth colors with pops of alien market colors",
"technical": {
"aspect_ratio": "9:16",
"quality": "high",
"detail_level": "highly detailed with film-like texture"
}
}
python /mnt/skills/public/image-generation/scripts/generate.py \
--prompt-file /mnt/user-data/workspace/cena-star-wars.json \
--reference-images /mnt/user-data/uploads/ref-personagem.jpg /mnt/user-data/uploads/ref-veiculo.jpg \
--output-file /mnt/user-data/outputs/cena-star-wars-01.jpg \
--aspect-ratio 16:9
Cenários Comuns
Use diferentes esquemas JSON para diferentes cenários.
Design de Personagem:
- Atributos físicos (gênero, idade, etnia, tipo corporal)
- Características faciais e expressões
- Roupas e acessórios
- Era histórica ou cenário
- Pose e contexto
Geração de Cena:
- Descrição do ambiente
- Hora do dia, clima
- Clima e atmosfera
- Pontos focais e composição
Visualização de Produto:
- Detalhes do produto e materiais
- Configuração de iluminação
- Fundo e contexto
- Ângulo de apresentação
Templates Específicos
Leia o seguinte arquivo de template somente quando corresponder à solicitação do usuário.
Tratamento da Saída
Após a geração:
- As imagens são normalmente salvas em
/mnt/user-data/outputs/ - Compartilhe as imagens geradas com o usuário usando a ferramenta present_files
- Forneça uma breve descrição do resultado da geração
- Ofereça-se para iterar se ajustes forem necessários
Dicas: Melhorando a Geração com Imagens de Referência
Para cenários onde a precisão visual é crítica, use a ferramenta image_search primeiro para encontrar imagens de referência antes da geração.
Cenários recomendados para usar a ferramenta image_search:
- Geração de Personagens/Retratos: Pesquise poses, expressões ou estilos semelhantes para guiar características faciais e proporções corporais
- Objetos ou Produtos Específicos: Encontre imagens de referência de objetos reais para garantir representação precisa
- Cenas Arquitetônicas ou Ambientais: Pesquise referências de locais para capturar detalhes autênticos
- Moda e Vestuário: Encontre referências de estilo para garantir detalhes precisos de vestuário
Exemplo de fluxo de trabalho:
- Chame a ferramenta
image_searchpara encontrar imagens de referência adequadas:image_search(query="Japanese woman street photography 1990s", size="Large") - Faça o download das URLs das imagens retornadas para arquivos locais
- Use as imagens baixadas como parâmetro
--reference-imagesno script de geração
Esta abordagem melhora significativamente a qualidade da geração ao fornecer ao modelo orientação visual concreta, em vez de depender apenas de descrições textuais.
Provedores (Gemini / MiniMax)
Esta habilidade seleciona automaticamente o provedor por meio de variáveis de ambiente (nenhuma alteração na CLI):
GEMINI_API_KEYdefinida → usa Gemini (padrão, inalterado).- Apenas
MINIMAX_API_KEYdefinida → usa MiniMax (/v1/image_generation, modeloimage-01). - Forçar um explicitamente com
IMAGE_GENERATION_PROVIDER=gemini|minimax.
Substituições opcionais do MiniMax: MINIMAX_API_HOST (padrão https://api.minimaxi.com),
MINIMAX_IMAGE_MODEL (padrão image-01). Imagens de referência são enviadas como a imagem subject_reference do MiniMax. Os argumentos da CLI --prompt-file / --reference-images / --output-file / --aspect-ratio são idênticos para ambos os provedores.
Tratamento de prompt MiniMax (interno ao provedor). A criação é agnóstica em relação ao provedor — escreva o mesmo JSON estruturado independentemente de qual provedor está ativo. O MiniMax image-01 consome uma única string de texto, portanto o caminho do MiniMax envia apenas o campo prompt do JSON (os outros campos como style / composition / negative_prompt aplicam-se ao caminho do Gemini) e ativa prompt_optimizer para que o MiniMax o expanda no servidor. O MiniMax limita esse prompt a 1500 caracteres; se o campo prompt for mais longo, o script retorna um erro em vez de chamar a API. O caminho do Gemini recebe o JSON estruturado completo.
Notas
- Sempre use inglês para os prompts, independentemente do idioma do usuário
- O formato JSON garante prompts estruturados e analisáveis
- Imagens de referência melhoram significativamente a qualidade da geração
- Refinamento iterativo é normal para resultados ideais
- Para geração de personagens, inclua o objeto detalhado do personagem mais um campo de prompt consolidado