|

Geração de imagem da Gemini API negada: IP conhecido recusado, causa do erro finishReason OTHER e soluções

Nota do Autor: Análise profunda do motivo pelo qual a geração de imagens da Gemini API retorna o erro finishReason OTHER, incluindo controle de risco de direitos autorais de personagens e mecanismos de moderação de conteúdo, fornecendo soluções de contorno e alternativas via APIYI.

Ao gerar imagens com a Gemini API, você pode receber subitamente um erro estranho: finishReason: "OTHER", content.parts: null, sem nenhuma imagem de retorno. Este artigo analisará profundamente a verdadeira causa desse erro e como evitar problemas de controle de risco de direitos autorais.

Valor Principal: Ao ler este artigo, você entenderá o mecanismo de moderação de conteúdo multicamadas da Gemini API, saberá por que personagens como os da Disney e Marvel disparam o controle de risco e dominará métodos para usar APIs de geração de imagem em conformidade.

gemini-api-image-blocked-finishreason-other-solution-pt-pt 图示


Análise do erro finishReason OTHER

Quando você recebe a seguinte resposta, significa que a geração da imagem foi bloqueada pelo sistema de moderação de conteúdo do Google:

{
  "candidates": [
    {
      "content": {
        "parts": null
      },
      "finishReason": "OTHER",
      "index": 0
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 306,
    "candidatesTokenCount": 0,
    "totalTokenCount": 478,
    "thoughtsTokenCount": 172
  },
  "modelVersion": "gemini-3-pro-image-preview"
}
Campo Significado Descrição
finishReason: "OTHER" Motivo de interrupção não padrão Não pertence a STOP/SAFETY/MAX_TOKENS
content.parts: null Nenhum conteúdo retornado A imagem foi bloqueada e não será gerada
candidatesTokenCount: 0 Tokens de saída igual a 0 Confirma que nada foi gerado
thoughtsTokenCount: 172 Tokens de pensamento consumidos O modelo tentou gerar, mas foi impedido

Por que OTHER em vez de SAFETY?

A Gemini API possui vários valores para finishReason:

finishReason Cenário de disparo
STOP Geração concluída normalmente
SAFETY Filtro de segurança disparado (erotismo/violência/ódio, etc.)
MAX_TOKENS Limite máximo de tokens atingido
RECITATION Detecção de repetição de conteúdo protegido por direitos autorais disparada
OTHER Moderação de direitos autorais/marcas registradas/conteúdo não classificado

finishReason: OTHER geralmente significa que o controle de risco relacionado a direitos autorais ou marcas registradas foi acionado, em vez da filtragem tradicional de conteúdo de segurança.

gemini-api-image-blocked-finishreason-other-solution-pt-pt 图示


Por que personagens da Disney são bloqueados

Caso: Falha na extração de imagem de Zootopia

Um usuário tentou processar uma imagem de um personagem de Zootopia (Zootopia: Essa Cidade é o Bicho) com o seguinte comando:

"Extraia rigorosamente os padrões da imagem fornecida, identifique com precisão e restaure completamente os padrões, texturas e outros elementos de design, garantindo que não haja omissões ou distorções. Remova as dobras. Restaure como uma imagem impressa plana que preencha toda a tela."

Resultado: finishReason: OTHER, a geração da imagem falhou.

Análise das Causas

Causa Descrição
Reconhecimento de personagens com direitos autorais O Gemini identifica personagens de IPs famosos como Disney, Marvel e Pixar.
Proteção de marca registrada Nick Wilde e Judy Hopps são marcas registradas da Disney.
Evasão de riscos jurídicos Em dezembro de 2025, a Disney enviou uma notificação de interrupção de infração ao Google.
Mecanismo de filtragem em múltiplas camadas Mesmo que o comando passe, o processo pode ser interceptado durante a geração.

Disputa de direitos autorais: Disney vs Google

Em 10 de dezembro de 2025, a Disney enviou uma notificação de interrupção de infração ao Google, alegando que a IA Gemini estava infringindo direitos autorais da Disney em larga escala:

  • Envolve personagens de franquias como Vingadores e Star Wars.
  • A Disney apresentou como prova imagens de personagens como Darth Vader geradas pelo Gemini.
  • O Google, consequentemente, reforçou o controle de riscos para personagens de IPs conhecidos.

É por isso que o processamento de imagens envolvendo personagens da Disney, Marvel, Pixar, entre outros, agora é frequentemente interceptado.


Mecanismo de moderação de conteúdo em múltiplas camadas da API do Gemini

A geração de imagens do Gemini utiliza um mecanismo de filtragem em várias camadas. Se qualquer camada for acionada, a solicitação falhará:

1ª Camada: Pré-verificação do comando

Antes de chamar o modelo, o sistema verifica se o comando contém:

  • Palavras-chave sensíveis (pornografia, violência, ódio).
  • Nomes de personagens com direitos autorais (Disney, Marvel, etc.).
  • Palavras-chave de marcas registradas.

2ª Camada: Análise da imagem de entrada

Se uma imagem de referência for enviada, o sistema analisa o conteúdo da imagem:

  • Identifica personagens protegidos por direitos autorais na imagem.
  • Detecta logotipos de marcas registradas.
  • Avalia se a imagem é uma obra de arte protegida.

3ª Camada: Monitoramento do processo de geração

Mesmo que as duas primeiras camadas sejam aprovadas, o monitoramento continua durante a geração:

  • Se a saída intermediária contiver conteúdo sensível, ela é interrompida imediatamente.
  • Se a saída for excessivamente similar a obras protegidas conhecidas, a resposta é recusada.

4ª Camada: Auditoria de saída

Após a conclusão da geração, há uma última etapa de auditoria:

  • É feita uma detecção de direitos autorais na imagem gerada.
  • Imagens que não estejam em conformidade são descartadas, retornando um resultado vazio.

gemini-api-image-blocked-finishreason-other-solution-pt-pt 图示


Quais conteúdos costumam disparar o finishReason OTHER?

De acordo com o feedback dos usuários e as políticas oficiais, os seguintes conteúdos são os mais propensos a serem bloqueados:

Categoria Exemplos Específicos Nível de Risco
Personagens da Disney Mickey Mouse, Zootopia, Frozen 🔴 Muito Alto
Personagens da Marvel Homem de Ferro, Homem-Aranha, Capitão América 🔴 Muito Alto
Personagens da Pixar Toy Story, Carros 🔴 Muito Alto
Star Wars Darth Vader, Yoda, Stormtrooper 🔴 Muito Alto
Animes Japoneses Algumas IPs famosas (dependendo do caso) 🟡 Médio
Retratos de Celebridades Estrelas de cinema, figuras políticas 🟡 Médio
Logos de Marcas Nike, Apple, Coca-Cola 🟡 Médio
Obras de Arte Originais Reprodução de obras de pintores famosos 🟡 Médio

Cenários que podem ser bloqueados por engano

Mesmo que você não tenha má intenção, os cenários a seguir podem disparar o controle de risco:

  1. Extração de padrões: Extrair estampas de roupas ou produtos oficiais.
  2. Transferência de estilo: Tentar fazer uma imagem com o estilo visual de uma IP famosa.
  3. Substituição de fundo: Processar imagens de fundo que contenham personagens protegidos por direitos autorais.
  4. Edição e embelezamento: Ajustar fotos que contenham esses personagens.

5 Soluções Práticas

Solução 1: Ajuste o seu comando

Evite mencionar diretamente o nome de personagens com direitos autorais. Use descrições genéricas:

# ❌ Fácil de ser bloqueado
prompt = "Extrair o padrão da Judy de Zootopia"

# ✅ Forma mais segura
prompt = "Extrair o padrão de coelho de desenho animado da imagem, transformando-o em uma ilustração plana"

Solução 2: Evite enviar imagens com personagens protegidos

Se possível, utilize imagens para teste que não contenham personagens óbvios protegidos por direitos autorais.

Solução 3: Use ferramentas de processamento de imagem genéricas

Para necessidades como extração de padrões ou remoção de dobras, considere:

  • O Preenchimento Generativo (Content-Aware Fill) do Adobe Photoshop.
  • Softwares especializados em extração de estampas.
  • Ferramentas genéricas de super-resolução de imagem.

Solução 4: Ajuste as Safety Settings (Efeito Limitado)

Embora você possa tentar ajustar as configurações de segurança, o efeito sobre o bloqueio de direitos autorais costuma ser limitado:

from google.generativeai.types import HarmCategory, HarmBlockThreshold

safety_settings = {
    HarmCategory.HARM_CATEGORY_HARASSMENT: HarmBlockThreshold.BLOCK_NONE,
    HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_NONE,
    HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT: HarmBlockThreshold.BLOCK_NONE,
    HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT: HarmBlockThreshold.BLOCK_NONE,
}

Nota: Bloqueios relacionados a direitos autorais geralmente não podem ser contornados pelas Safety Settings, pois são restrições rígidas da plataforma.

Solução 5: Use a API Gemini via APIYI (Recomendado)

O APIYI (apiyi.com) oferece um gateway para toda a linha de APIs do Gemini. Você tem o mesmo poder do modelo original, mas com uma experiência de chamada mais estável:

import openai

client = openai.OpenAI(
    api_key="SUA_CHAVE_APIYI",
    base_url="https://vip.apiyi.com/v1"
)

response = client.chat.completions.create(
    model="gemini-3-pro-image-preview",
    messages=[
        {
            "role": "user",
            "content": "Gere uma cena de mercado em uma cidade de animais em estilo cartoon original, com personagens de raposa e coelho"
        }
    ]
)

Dica: Ao utilizar a API do Gemini via APIYI (apiyi.com), você conta com um serviço mais estável e suporte técnico. O custo chega a ser 80% menor que o valor oficial (aprox. $0.05 por imagem 4K), sem as complicações de vincular cartões internacionais.


Como identificar por que a requisição foi bloqueada

Verifique os campos da resposta

def analyze_response(response):
    candidate = response.candidates[0]

    # Verificar finishReason
    finish_reason = candidate.finish_reason

    # Verificar se há conteúdo
    has_content = candidate.content and candidate.content.parts

    # Verificar promptFeedback
    block_reason = getattr(response.prompt_feedback, 'block_reason', None)

    print(f"finishReason: {finish_reason}")
    print(f"Has content: {has_content}")
    print(f"Block reason: {block_reason}")

    if finish_reason == "OTHER" and not has_content:
        print("⚠️ Possível bloqueio por direitos autorais ou marca registrada")
    elif finish_reason == "SAFETY":
        print("⚠️ Filtro de conteúdo de segurança ativado")

Tabela de referência para erros comuns

Características da resposta Causa mais provável Ação sugerida
finishReason: OTHER, parts: null Bloqueio de direitos autorais/marca registrada Troque a imagem ou ajuste o comando
finishReason: SAFETY Filtro de segurança de conteúdo Ajuste as Safety Settings
blockReason: PROHIBITED_CONTENT Violação explícita da política de uso Verifique o comando e a imagem
finishReason: RECITATION Detecção de repetição de direitos autorais Altere a redação do comando
error 503: Model overloaded Sobrecarga no serviço Tente novamente mais tarde ou use o APIYI

Perguntas Frequentes (FAQ)

P1: Por que a mesma requisição às vezes funciona e outras vezes falha?

A moderação de conteúdo do Gemini possui uma certa dose de aleatoriedade, o que pode ocorrer devido a:

  1. Atualizações na versão do modelo que alteram as estratégias de moderação.
  2. Ajustes temporários nas regras de filtragem do lado do servidor.
  3. Diferenças sutis na imagem de entrada que levam a julgamentos distintos.

Recomendamos utilizar um mecanismo de tentativa (retry) para lidar com falhas ocasionais.

P2: Eu só quero remover rugas de uma imagem, por que ela é bloqueada?

Se a imagem de entrada contiver personagens protegidos por direitos autorais, mesmo que sua intenção de edição seja totalmente legítima (como remover rugas ou ajustar cores), o controle de risco será ativado. Isso acontece porque o sistema analisa o conteúdo da imagem de entrada, e não apenas o comando enviado.

Sugerimos usar imagens que não contenham personagens protegidos ou utilizar softwares de edição de imagem profissionais.

P3: A API do Gemini via APIYI terá as mesmas restrições?

O APIYI oferece um serviço de intermediação (proxy) para a API do Gemini. Como o modelo subjacente é o mesmo, os mecanismos de controle de direitos autorais são idênticos. No entanto, as vantagens do APIYI incluem:

  • Preços mais baixos (até 80% de desconto em relação ao site oficial)
  • Dispensa o uso de cartão de crédito internacional
  • Suporte técnico especializado
  • Experiência de serviço mais estável

Acesse apiyi.com para saber mais.


Resumo

Pontos principais sobre o erro finishReason: OTHER na geração de imagens da Gemini API:

  1. O controle de risco de direitos autorais é a causa principal: Personagens de IPs conhecidos como Disney, Marvel e Pixar acionam o controle de risco.
  2. Mecanismo de filtragem em várias camadas: Monitoramento total, do comando à saída; qualquer etapa pode sofrer uma interceptação.
  3. Impossível contornar totalmente: As Safety Settings não têm efeito sobre restrições de direitos autorais, pois trata-se de uma exigência de conformidade legal.
  4. Sugestões de solução:
    • Evite processar imagens que contenham personagens protegidos por direitos autorais.
    • Ajuste o comando, utilizando descrições genéricas.
    • Use o APIYI (apiyi.com) para obter uma experiência de serviço mais estável.

Para desenvolvedores que precisam usar a geração de imagens do Gemini em larga escala, recomendamos a utilização via APIYI (apiyi.com). Imagens 4K por apenas $0,05/unidade (80% de desconto em relação ao preço oficial), com suporte a diversos métodos de pagamento e suporte técnico especializado.


📚 Referências

  1. Documentação de Safety Settings da Gemini API: Configurações de segurança

    • Link: ai.google.dev/gemini-api/docs/safety-settings
    • Descrição: Explicação oficial sobre a configuração de filtros de segurança.
  2. Documentação da API de Geração de Conteúdo do Gemini: Explicação dos valores do enum finishReason

    • Link: ai.google.dev/api/generate-content
    • Descrição: O significado de cada tipo de finishReason.
  3. Política de Uso Proibido de IA Generativa: Política de uso do Google

    • Link: support.google.com/gemini/answer/16625148
    • Descrição: Detalhes sobre as restrições de conteúdo.

Autor: Equipe Técnica
Troca de Conhecimento: Sinta-se à vontade para discutir problemas de uso da Gemini API nos comentários. Para mais materiais, acesse a comunidade técnica da APIYI (apiyi.com).

Similar Posts