Muitos desenvolvedores que migram do Stable Diffusion ou Midjourney para o Nano Banana Pro encontram quase sempre um erro 400 confuso na primeira chamada de API: Invalid JSON payload received. Unknown name "negativePrompt" at 'generation_config.image_config': Cannot find field. A mensagem de erro é direta, mas não esclarece: o nome do campo está escrito errado, o campo deveria estar em outro lugar ou o modelo simplesmente não aceita comandos negativos?

A resposta é a terceira: o Nano Banana Pro (ou seja, o Gemini 3 Pro Image Preview) foi projetado para não possuir um campo negativePrompt independente. Todas as expressões do tipo "o que eu não quero" devem ser escritas diretamente no texto do comando principal. Este artigo, baseado na documentação oficial do Google e no guia de comandos do Nano Banana, detalha a causa raiz desse erro, apresenta 3 formas recomendadas de escrever comandos negativos, fornece o código completo de invocação da API e, com base em testes práticos na plataforma APIYI (apiyi.com), ensina você a dominar a forma correta de usar comandos negativos no Nano Banana Pro em 5 minutos.
1. Por que o Nano Banana Pro não aceita o campo negativePrompt?
1.1 Decomposição da mensagem de erro
O conteúdo completo do erro geralmente é assim:
upstream_error 400
Invalid JSON payload received.
Unknown name "negativePrompt" at 'generation_config.image_config':
Cannot find field.
Ao decompor o erro, identificamos três informações cruciais:
Invalid JSON payload: O servidor rejeita o JSON imediatamente; a requisição nem chega à fase de inferência.Unknown name "negativePrompt": O nome do campo simplesmente não existe no esquema. Não é um problema de maiúsculas/minúsculas nem de posição de aninhamento.at 'generation_config.image_config': Você tentou colocá-lo dentro degeneration_config.image_config, mas esse objeto só aceita campos da lista oficial.
Em outras palavras, não é um "erro de parâmetro", mas sim um "parâmetro inexistente". No esquema da API do Nano Banana Pro, não há nenhum campo reservado para comandos negativos.
1.2 Lista oficial de campos permitidos em image_config
De acordo com a documentação oficial do Google AI, o objeto image_config do Gemini 3 Pro Image Preview aceita apenas dois campos. Qualquer outro campo causará um erro 400:
| Nome do campo | Tipo | Valores | Função |
|---|---|---|---|
aspectRatio |
string | "1:1" / "16:9" / "4:3" / "21:9" etc. |
Proporção da imagem de saída |
imageSize |
string | "512" / "1K" / "2K" / "4K" |
Nível de resolução da saída |
Essa lista é bem curta e não inclui negativePrompt, seed, cfg_scale ou sampler. O Google adotou um design minimalista na série Nano Banana — eles acreditam que o modelo deve entender a linguagem natural, em vez de exigir que o usuário combine uma série de hiperparâmetros.
1.3 Filosofia de design: Por que o Google se recusa a introduzir o negativePrompt?
O mecanismo de comandos negativos da família Stable Diffusion deriva da orientação bidirecional do CFG (Classifier-Free Guidance), que usa um vetor independente para "orientar inversamente" o processo de difusão. A arquitetura de geração multimodal do Gemini é diferente; o modelo recebe todo o texto em linguagem natural como entrada para compreensão semântica e gera tokens de imagem, sem a necessidade de "dois vetores guiando separadamente".
O guia oficial de comandos do Nano Banana no blog do Google Cloud resume a posição da empresa:
"Use enquadramento positivo: descreva o que você quer, não o que você não quer (ex: 'rua vazia' em vez de 'sem carros')."
Ou seja: no mundo do Nano Banana Pro, descrições positivas são muito mais eficientes que as negativas. Isso não é uma limitação técnica, mas uma filosofia de produto.
Do ponto de vista de engenharia, a orientação negativa em modelos de difusão exige cálculos extras de "dupla inferência e subtração de vetores". Já a arquitetura multimodal do Gemini é uma compreensão semântica de ponta a ponta, sem vetores inversos subtraíveis. Inserir um campo negativePrompt à força não apenas quebraria a consistência do esquema, mas levaria usuários comuns a acreditar erroneamente que isso acionaria algum tipo de "orientação negativa", desviando a engenharia de comandos. O Google optou por bloquear esse caminho com um erro claro, forçando os desenvolvedores a expressarem todas as suas intenções via linguagem natural.
🎯 Dica de aprendizado: Se você já está acostumado com o fluxo de trabalho de comandos negativos do SD, ao migrar para o Nano Banana Pro, recomendo rodar algumas imagens de comparação no APIYI (apiyi.com). Sinta na prática a diferença de resultados entre "descrições positivas" e "descrições negativas" neste modelo antes de decidir como reescrever seus comandos existentes.
二、Nano Banana Pro 3 formas corretas de escrever comandos negativos
Embora não exista um campo independente, as expressões negativas podem ser perfeitamente incluídas no texto do comando principal. As três abordagens a seguir são soluções de alta frequência e reutilizáveis, extraídas da documentação oficial do Google e da experiência da comunidade.

2.1 Abordagem 1: Reescrever com estrutura positiva (Recomendação oficial)
Traduzir "Eu não quero X" para "Eu quero Y" é a melhor forma explicitamente recomendada pelo Google. Os padrões de comparação comuns são:
| Expressão negativa original | Reescrita com estrutura positiva |
|---|---|
| no cars on the street | empty deserted street with no traffic |
| no people in background | quiet solitary scene with empty surroundings |
| no text or watermark | clean image with smooth empty borders |
| not blurry, not low quality | sharp focus, crisp details, high resolution |
| no extra fingers | accurate human anatomy with precisely five fingers per hand |
A vantagem da estrutura positiva é que o modelo não precisa fazer uma "inferência reversa", entendendo diretamente o estado final desejado, o que resulta na maior taxa de sucesso.
Ao reescrever, sugiro seguir o caminho de raciocínio: "Por que eu não quero X? → O que eu realmente quero?". Por exemplo, a intenção real de "sem texto" geralmente é "a imagem deve ser limpa e não distrair", então a descrição positiva correspondente deveria ser "clean uncluttered composition with smooth empty borders", em vez de uma tradução literal como "no text". Esse "resgate da intenção" é a essência da estrutura positiva.
2.2 Abordagem 2: Método de exclusão por linguagem natural (Mantendo a flexibilidade semântica)
Se alguns itens de exclusão realmente não puderem ser convertidos em descrições positivas, você pode escrever as condições de exclusão diretamente no comando usando linguagem natural, com expressões como without, avoid, exclude ou free of:
A serene mountain landscape at sunrise,
photorealistic style, golden hour lighting,
without any people, vehicles, or man-made structures,
free of text overlays, logos, or watermarks.
O segredo aqui é incorporar naturalmente as condições de exclusão na descrição completa, em vez de escrever uma lista de palavras-chave separadas por vírgulas, como no SD. A resposta do modelo a "instruções em linguagem natural" é muito superior a uma "lista de palavras-chave".
Além disso, você pode escrever as condições de exclusão como orações subordinadas adverbiais, tornando a relação entre os itens excluídos e o cenário mais clara. Por exemplo, during golden hour with the streets completely cleared of vehicles é mais preciso do que um simples without cars — ele expressa simultaneamente tempo, estado e o item excluído, permitindo que o modelo construa uma imagem mais consistente.
2.3 Abordagem 3: Incorporação de lista de termos negativos graduais (Ideal para modelos sistematizados)
Se você precisa manter um "padrão de qualidade" unificado para toda a equipe ou produto, pode organizar os itens de exclusão comuns em categorias e usá-los como um parágrafo fixo no seu modelo de comando:
[Main subject description]
[Style and composition details]
Quality requirements:
The image must be sharp, well-exposed, and free of blur,
JPEG artifacts, watermarks, or visible text.
Anatomy requirements:
All people in the image must have accurate anatomy
with five fingers per hand, symmetrical features,
and natural proportions.
Esses modelos de comandos negativos estruturados podem ser reutilizados em lote, sendo especialmente úteis para materiais de e-commerce, design de marca e outros cenários que exigem padrões de qualidade unificados.
| Abordagem | Cenário de aplicação | Taxa de sucesso | Dificuldade de escrita |
|---|---|---|---|
| Reescrever com estrutura positiva | Criação individual, pôsteres artísticos | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| Exclusão por linguagem natural | Cenários complexos, exclusão flexível | ⭐⭐⭐⭐ | ⭐⭐ |
| Lista de termos negativos graduais | Geração em lote, reutilização em equipe | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
🎯 Sugestão de escolha: Para criações individuais, priorize a Abordagem 1; se puder evitar termos negativos, evite. Para geração em lote, sugiro usar a Abordagem 3 para criar modelos de prompt de nível de equipe. Recomendo fazer testes comparativos das três abordagens para o mesmo assunto no APIYI (apiyi.com); em 10 minutos você encontrará a escrita que melhor se adapta ao seu negócio.
III. Como escrever o payload JSON correto para a Nano Banana Pro API
Agora que você entendeu "por que não usar o campo negativePrompt" e "como deve ser feito", aqui está o código de invocação da API pronto para copiar e usar.
3.1 Comparação: Payload JSON Errado vs. Correto
O trecho JSON abaixo corresponde diretamente ao erro mencionado no início do artigo, sendo o exemplo clássico de quem "migrou do SD" e manteve o hábito antigo:
// ❌ Errado: causará um erro 400
{
"contents": [{
"parts": [{"text": "A cat sitting on a chair"}]
}],
"generationConfig": {
"imageConfig": {
"aspectRatio": "16:9",
"negativePrompt": "blurry, low quality, extra fingers"
}
}
}
A forma correta e corrigida é esta:
// ✅ Correto: incorpore as descrições negativas diretamente no texto
{
"contents": [{
"parts": [{
"text": "A cat sitting on a chair, sharp focus, crisp details, high resolution, accurate anatomy with natural proportions"
}]
}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}
Observe as três mudanças principais: remova o campo negativePrompt, reescreva as intenções negativas como descrições positivas dentro do text e defina o imageSize conforme necessário para controlar a resolução.
3.2 Exemplo de invocação com SDK Python
Aqui está o código mais simples para invocar a Nano Banana Pro via APIYI usando o SDK compatível com OpenAI:
from openai import OpenAI
client = OpenAI(
api_key="your_api_key",
base_url="https://vip.apiyi.com/v1" # Endereço do serviço proxy de API da APIYI
)
response = client.images.generate(
model="gemini-3-pro-image-preview",
prompt=(
"A cat sitting on a wooden chair in a bright sunlit room, "
"photorealistic style, sharp focus, crisp details, "
"accurate feline anatomy with natural fur texture, "
"clean background free of text or watermarks"
),
size="1792x1024", # Corresponde a 16:9
)
Todo o bloco de chamada não contém nenhum parâmetro negative_prompt; todas as expressões do tipo "eu não quero" são integradas ao comando através de linguagem natural.
3.3 Guia rápido de erros comuns e correções
Para ajudar você a diagnosticar erros rapidamente, organizamos os problemas mais frequentes na tabela abaixo:
| Fragmento do erro | Causa raiz | Solução |
|---|---|---|
Unknown name "negativePrompt" |
Campo inexistente | Remova o campo, insira a descrição negativa no comando |
Unknown name "seed" |
Nano Banana Pro não suporta seed | Aceite a aleatoriedade, gere várias vezes e escolha |
Unknown name "cfg_scale" |
Parâmetro CFG não suportado | Use termos de intensidade no comando (ex: "strictly photorealistic") |
Invalid value at 'aspectRatio' |
Erro de digitação na proporção | Verifique se está usando "16:9" em vez de "16×9" |
Campo image_config inválido |
Erro de hierarquia | Certifique-se de que imageConfig esteja dentro de generationConfig |
🎯 Dica de depuração: Ao investigar erros 400, recomendo testar a conectividade com o payload mais simples possível (apenas o texto) e, em seguida, adicionar as configurações gradualmente. A APIYI (apiyi.com) oferece uma interface completa para o Gemini 3 Pro Image, proporcionando uma experiência de depuração mais estável do que a conexão direta com a oficial.
IV. Técnicas avançadas de otimização para comandos negativos na Nano Banana Pro
Após dominar o básico, estas 4 técnicas avançadas elevarão suas expressões negativas de "funcionais" para "nível profissional".

4.1 Substitua descrições abstratas por específicas
O modelo compreende substantivos concretos muito melhor do que adjetivos abstratos. Compare estas duas abordagens:
- ❌ Vago:
high quality, not bad - ✅ Específico:
shot on a Sony A7R IV, 35mm f/1.4 lens, ISO 100, sharp focus on subject, soft bokeh background
Parâmetros específicos de equipamento, abertura, ISO e distância focal acionam todo o conjunto de conhecimento prévio do modelo sobre "fotografia profissional", sendo muito mais eficaz do que escrever "high quality" mil vezes.
4.2 Transforme "evitar estilos artísticos" em "especificar estilos artísticos"
Muitos usuários de SD estão acostumados a escrever not anime, not cartoon, not 3D, mas na Nano Banana Pro essa abordagem funciona mal. A maneira correta é especificar diretamente o estilo que você deseja:
- Quer realismo →
unstaged documentary photography style - Quer textura de pintura a óleo →
oil painting on textured canvas, visible brushstrokes - Quer sensação de fotojornalismo →
photojournalism style, candid moment, natural lighting
A intensidade da descrição ao especificar claramente o estilo suprimirá automaticamente outras tendências, sem a necessidade de escrever "not X".
4.3 Use modelos de comando estruturados
Divida cenas complexas em modelos estruturados para que o modelo entenda cada camada de intenção:
SUBJECT: A young woman reading a book
SETTING: Cozy library with warm afternoon light
STYLE: Editorial photography, shot on Leica Q2
QUALITY: Sharp focus on subject, soft natural bokeh
EXCLUDE: No text, no watermarks, no other people in frame
Este tipo de modelo estruturado é significativamente mais estável na Nano Banana Pro do que um comando em texto corrido, especialmente com a seção EXCLUDE servindo como uma "restrição rígida" final.
4.4 Mantenha instruções de exclusão em iterações de várias etapas
A Nano Banana Pro suporta edição em várias etapas, mas cada etapa requer a reiteração da intenção negativa completa, caso contrário, o modelo pode facilmente reintroduzir elementos que você excluiu anteriormente. Sugiro salvar as instruções de exclusão como uma string constante e concatená-las em cada iteração.
| Técnica avançada | Problema resolvido | Melhoria de efeito |
|---|---|---|
| Substituir negação abstrata por descrição específica | Modelo não entende termos abstratos | Alta |
| Especificar estilo em vez de negar estilo | Taxa de acerto de termos negativos é baixa | Altíssima |
| Modelo de comando estruturado | Comando longo instável | Alta |
| Reiterar exclusão em iterações | Retorno de elementos após edição | Média |

V. FAQ sobre comandos de exclusão (negative prompts) no Nano Banana Pro
5.1 Realmente não existe um campo negativePrompt? Eles vão adicionar no futuro?
Até o momento, a documentação oficial do Google AI e do Vertex AI lista claramente apenas aspectRatio e imageSize como campos de image_config. O Google expressou repetidamente em blogs e conferências sua posição de produto contra campos de exclusão independentes; a probabilidade de adicionar esse campo a curto prazo é extremamente baixa. Recomendamos adotar a escrita baseada em estruturas positivas em vez de esperar por essa funcionalidade.
5.2 A lista de termos negativos acumulada na era do SD ainda pode ser usada?
Pode servir como referência, mas não pode ser colada diretamente no comando do Nano Banana Pro. Sugerimos categorizar os termos negativos do SD em "qualidade, anatomia, estilo e elementos" e, em seguida, usar os métodos da segunda seção deste artigo para reescrevê-los como descrições positivas ou exclusões em linguagem natural.
5.3 Usar uma negação simples como "no X" é totalmente ineficaz?
Não é totalmente ineficaz, mas o efeito é muito inferior a uma descrição positiva. Frases como no cars têm uma taxa de sucesso de cerca de 60-70% no Nano Banana Pro, enquanto empty deserted street with no traffic atinge mais de 95%. Se você precisa de alta estabilidade nos resultados, priorize a estrutura positiva.
5.4 Onde posso testar essas abordagens de forma estável no Nano Banana Pro?
Desenvolvedores no Brasil e no mundo podem acessar o Nano Banana Pro através da APIYI (apiyi.com). O ID do modelo é gemini-3-pro-image-preview e basta substituir a base_url por https://vip.apiyi.com/v1, sem necessidade de configurar proxies. A plataforma suporta o Nano Banana Pro e outros modelos de imagem populares, facilitando a comparação entre como diferentes modelos lidam com expressões negativas.
5.5 Posso colocar o negativePrompt no nível superior de generation_config em vez de dentro de image_config?
Não. Seja no nível superior de generation_config, dentro de image_config ou como uma parte independente em contents.parts, isso causará um erro de campo inexistente. O esquema do Nano Banana Pro segue uma lista de permissões estrita; campos não listados são sempre rejeitados.
5.6 Já que não há negativePrompt, parâmetros como seed ou cfg_scale também não existem?
Exatamente, eles não existem. Os parâmetros ajustáveis do Nano Banana Pro são minimalistas, limitando-se a aspectRatio e imageSize. Esta é uma escolha de produto: o Google deseja que os desenvolvedores foquem em escrever comandos em linguagem natural melhores, em vez de ajustar hiperparâmetros. A adaptação leva tempo, mas, uma vez acostumado, a legibilidade e a reutilização da engenharia de comandos aumentam significativamente.
5.7 O modelo reconhece instruções de exclusão escritas em chinês ou outros idiomas?
Ele reconhece, mas a estabilidade é menor do que em inglês. O Nano Banana Pro possui um peso significativamente maior para o inglês em seus dados de treinamento. Escrever "não inclua marcas d'água" geralmente funciona, mas ocasionalmente pode ser ignorado. Se a estabilidade for crucial, recomendamos misturar frases negativas em inglês no seu comando, por exemplo: "fundo limpo, free of text and watermarks". Essa abordagem mista tem uma taxa de sucesso cerca de 15% maior do que o uso exclusivo de outros idiomas.
5.8 Ao editar uma imagem existente, como evitar que o modelo adicione elementos indesejados?
No modo de edição, recomendamos a escrita com "retenção explícita + exclusão explícita": primeiro, use keep everything else identical, including [lista de elementos-chave] para bloquear o que deve ser mantido e, em seguida, use make sure not to introduce [lista de elementos a excluir] para excluir explicitamente. Quando ambas as restrições estão presentes, o controle sobre o resultado da edição melhora significativamente. Essa técnica é especialmente útil para iterações visuais de marca e manutenção de consistência de personagens.
VI. Conclusão: O modelo mental central para comandos de exclusão no Nano Banana Pro
Voltando ao erro mencionado no início: Unknown name "negativePrompt" não é um bug, é o design do produto Nano Banana Pro — este modelo não aceita nenhuma forma de campo de comando negativo independente. Toda intenção de "o que eu não quero" deve ser escrita em linguagem natural dentro do comando principal.
Lembre-se de três princípios fundamentais:
- Priorize a estrutura positiva: "empty street" é muito melhor do que "no cars"; reescreva sempre que possível.
- Use linguagem natural para exclusões: Use conectivos como
without,free of,avoiddentro do comando, evitando listas de palavras-chave separadas por vírgulas ao estilo SD. - Reutilize modelos estruturados: Em contextos de equipe, transforme os três tipos de exclusão ("qualidade, anatomia, elementos") em parágrafos modelo e reutilize-os.
🎯 Próximo passo: Reescreva sua lista atual de termos negativos do SD usando as três abordagens deste artigo e execute testes comparativos no mesmo objeto via APIYI (apiyi.com) para criar sua própria biblioteca de comandos negativos para o Nano Banana Pro.
O design "sem campo de comando negativo" do Nano Banana Pro pode parecer estranho no início, mas, com o uso aprofundado, você perceberá que este modelo de "expressar todas as intenções com linguagem natural precisa" é o futuro dos modelos multimodais. Ao migrar seu modelo mental mais cedo, você poderá aproveitar ao máximo as capacidades deste modelo.
Por fim, vale ressaltar: aquela mensagem de erro 400 é, na verdade, um "aviso amigável" do Google — ele está dizendo da forma mais direta: "por favor, não tente transpor fluxos de trabalho de modelos da geração anterior; entenda minha interface de entrada real". Trate esse erro como o ponto de partida para aprender este novo modelo, e não como um obstáculo. Você descobrirá que a engenharia de comandos do Nano Banana Pro é, na verdade, mais simples, mais legível e mais próxima da linguagem de comunicação de design do que o SD.
Autor: Equipe Técnica APIYI
Plataforma: APIYI (apiyi.com) Nano Banana Pro (gemini-3-pro-image-preview) interface
