Note de l'auteur : Analyse approfondie des causes de l'erreur finishReason OTHER lors de la génération d'images avec l'API Gemini, incluant le contrôle des risques liés aux personnages sous copyright, les mécanismes de modération de contenu, et proposant des solutions de contournement ainsi que l'alternative APIYI.
En utilisant l'API Gemini pour générer des images, vous recevez soudainement une erreur étrange : finishReason: "OTHER", content.parts: null, sans aucune image en retour. Cet article va analyser en profondeur la véritable cause de cette erreur, ainsi que la manière d'éviter les problèmes de contrôle des risques liés aux droits d'auteur.
Valeur ajoutée : Après avoir lu cet article, vous comprendrez les mécanismes de modération de contenu à plusieurs niveaux de l'API Gemini, pourquoi des personnages comme ceux de Disney ou Marvel déclenchent des blocages, et vous maîtriserez les méthodes pour utiliser les API de génération d'images en toute conformité.

Analyse de l'erreur finishReason OTHER
Lorsque vous recevez la réponse suivante, cela signifie que la génération d'image a été interceptée par le système de modération de contenu de Google :
{
"candidates": [
{
"content": {
"parts": null
},
"finishReason": "OTHER",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 306,
"candidatesTokenCount": 0,
"totalTokenCount": 478,
"thoughtsTokenCount": 172
},
"modelVersion": "gemini-3-pro-image-preview"
}
| Champ | Signification | Explication |
|---|---|---|
finishReason: "OTHER" |
Raison de fin non standard | N'appartient pas à STOP/SAFETY/MAX_TOKENS |
content.parts: null |
Aucun contenu renvoyé | L'image est interceptée, elle ne sera pas générée |
candidatesTokenCount: 0 |
Token de sortie à 0 | Confirmation qu'aucun contenu n'a été généré |
thoughtsTokenCount: 172 |
Tokens de pensée consommés | Le modèle a tenté de générer mais a été bloqué |
Pourquoi OTHER et non SAFETY ?
L'API Gemini possède plusieurs valeurs pour finishReason :
| finishReason | Scénario de déclenchement |
|---|---|
STOP |
Génération terminée normalement |
SAFETY |
Filtre de sécurité déclenché (pornographie/violence/haine, etc.) |
MAX_TOKENS |
Limite maximale de tokens atteinte |
RECITATION |
Détection de répétition de contenu sous copyright |
OTHER |
Modération de contenu liée aux droits d'auteur/marques/non classée |
finishReason: OTHER signifie généralement qu'un contrôle des risques lié aux droits d'auteur ou aux marques a été déclenché, plutôt qu'un filtrage de contenu sécuritaire traditionnel.

Pourquoi les personnages Disney sont-ils bloqués ?
Étude de cas : Échec de l'extraction d'image de Zootopie
Un utilisateur a tenté de traiter une image de personnage du film Zootopie avec l'invite suivante :
"Extrais strictement les motifs de l'image fournie, identifie avec précision et restaure intégralement les motifs, textures et autres éléments de design, en veillant à ce qu'il n'y ait aucune omission ou distorsion. Supprime les plis. Restaure l'image sous forme d'impression à plat remplissant tout l'écran."
Résultat : finishReason: OTHER, la génération de l'image a échoué.
Analyse des causes
| Cause | Explication |
|---|---|
| Identification de personnages sous copyright | Gemini identifie les personnages d'IP célèbres comme Disney, Marvel, Pixar, etc. |
| Protection des marques déposées | Nick Wilde et Judy Hopps sont des marques déposées par Disney. |
| Évitement des risques juridiques | En décembre 2025, Disney a envoyé une mise en demeure à Google pour violation de droits d'auteur. |
| Mécanisme de filtrage multicouche | Même si l'invite passe, l'interception peut survenir durant le processus de génération. |
Le litige de droits d'auteur Disney vs Google
Le 10 décembre 2025, Disney a envoyé une mise en demeure à Google, accusant l'IA Gemini de violation massive des droits d'auteur de Disney :
- Cela concerne des personnages d'IA comme Avengers, Star Wars, etc.
- Disney a fourni des images de personnages comme Dark Vador générées par Gemini comme preuves.
- Google a par la suite renforcé le contrôle des risques pour les personnages d'IP célèbres.
C'est pourquoi le traitement d'images impliquant des personnages de Disney, Marvel ou Pixar est désormais fréquemment intercepté.
Le mécanisme de modération de contenu multicouche de l'API Gemini
La génération d'images de Gemini utilise un mécanisme de filtrage à plusieurs niveaux ; le déclenchement de n'importe quel niveau entraîne l'échec de la requête :
Niveau 1 : Pré-vérification de l'invite
Avant d'appeler le modèle, le système vérifie si l'invite contient :
- Des mots-clés sensibles (pornographie, violence, haine)
- Des noms de personnages sous copyright (Disney, Marvel, etc.)
- Des mots-clés de marques déposées
Niveau 2 : Analyse de l'image d'entrée
Si une image de référence est téléchargée, le système analyse son contenu :
- Identification des personnages sous copyright dans l'image
- Détection des logos de marques
- Jugement pour déterminer s'il s'agit d'une œuvre d'art protégée
Niveau 3 : Surveillance du processus de génération
Même si les deux premiers niveaux sont validés, la surveillance continue pendant la génération :
- Si la sortie intermédiaire contient du contenu sensible, elle est immédiatement interrompue
- Si la sortie ressemble trop à une œuvre protégée connue, le retour est refusé
Niveau 4 : Audit de la sortie
Une fois la génération terminée, il reste un dernier audit :
- Détection de copyright sur l'image générée
- Les images non conformes sont jetées, renvoyant un résultat vide

Quels contenus déclenchent facilement finishReason OTHER
Selon les retours des utilisateurs et les politiques officielles, les contenus suivants sont les plus susceptibles d'être interceptés :
| Catégorie | Exemples concrets | Niveau de risque |
|---|---|---|
| Personnages Disney | Mickey Mouse, Zootopie, La Reine des Neiges | 🔴 Très élevé |
| Personnages Marvel | Iron Man, Spider-Man, Captain America | 🔴 Très élevé |
| Personnages Pixar | Toy Story, Cars | 🔴 Très élevé |
| Star Wars | Dark Vador, Yoda, Stormtroopers | 🔴 Très élevé |
| Anime japonais | Certaines IP célèbres (selon le cas) | 🟡 Moyen |
| Portraits de célébrités | Stars, personnalités politiques | 🟡 Moyen |
| Logos de marques | Nike, Apple, Coca-Cola | 🟡 Moyen |
| Œuvres d'art originales | Reproduction d'œuvres de peintres célèbres | 🟡 Moyen |
Scénarios sujets aux faux positifs
Même sans intention malveillante, les scénarios suivants peuvent déclencher le contrôle des risques :
- Extraction de motifs : Extraire des motifs imprimés à partir de vêtements ou de produits dérivés.
- Transfert de style : Demander à une image d'adopter le style visuel d'une IP célèbre.
- Remplacement d'arrière-plan : Traiter une image de fond qui contient des personnages sous copyright.
- Retouche et embellissement : Ajuster des images contenant des personnages protégés.
5 solutions possibles
Solution 1 : Ajuster l'invite
Évitez de mentionner directement le nom des personnages sous copyright et utilisez des descriptions génériques :
# ❌ Risque d'interception
prompt = "Extraire le motif de Judy de Zootopie"
# ✅ Approche plus sûre
prompt = "Extraire le motif de lapin cartoon de l'image, le restituer en tant qu'image imprimée à plat"
Solution 2 : Éviter d'importer des images de personnages sous copyright
Si possible, utilisez des images ne contenant pas de personnages protégés de manière évidente pour vos tests.
Solution 3 : Utiliser des outils de traitement d'image généralistes
Pour des besoins tels que l'extraction de motifs ou la suppression de plis, vous pouvez envisager :
- Le remplissage d'après le contenu (Content-Aware Fill) d'Adobe Photoshop
- Des logiciels spécialisés dans l'extraction de motifs textiles
- Des outils généralistes de super-résolution d'image
Solution 4 : Ajuster les Safety Settings (efficacité limitée)
Bien que vous puissiez essayer de modifier les paramètres de sécurité, cela a un effet limité sur le contrôle des droits d'auteur :
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,
}
Note : Les blocages liés aux droits d'auteur ne peuvent pas être contournés via les Safety Settings, car il s'agit d'une restriction stricte.
Solution 5 : Utiliser l'API Gemini d'APIYI (Recommandé)
APIYI (apiyi.com) propose un relais pour toute la gamme d'API Gemini, offrant les mêmes capacités de modèle avec une expérience d'appel plus stable :
import openai
client = openai.OpenAI(
api_key="YOUR_APIYI_KEY",
base_url="https://vip.apiyi.com/v1"
)
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[
{
"role": "user",
"content": "Générer une scène de marché urbain de dessins animés originale, incluant des personnages de renard et de lapin"
}
]
)
Conseil : Passez par APIYI (apiyi.com) pour appeler l'API Gemini afin de bénéficier d'un service plus stable et d'un support technique dédié. Le prix n'est que de 20 % du tarif officiel (0,05 $ pour une image 4K), sans avoir à vous soucier des problèmes de liaison de carte bancaire.
Comment déterminer pourquoi une requête a été bloquée
Vérification des champs de réponse
def analyze_response(response):
candidate = response.candidates[0]
# Vérification de finishReason
finish_reason = candidate.finish_reason
# Vérification de la présence de contenu
has_content = candidate.content and candidate.content.parts
# Vérification de 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("⚠️ Risque potentiel de contrôle de droit d'auteur ou de marque déposée")
elif finish_reason == "SAFETY":
print("⚠️ Filtrage de contenu de sécurité activé")
Tableau de correspondance des codes d'erreur courants
| Caractéristiques de la réponse | Cause la plus probable | Action recommandée |
|---|---|---|
finishReason: OTHER, parts: null |
Contrôle de droit d'auteur / marque déposée | Changer d'image ou modifier l'invite |
finishReason: SAFETY |
Filtrage de sécurité du contenu | Ajuster les Safety Settings |
blockReason: PROHIBITED_CONTENT |
Violation explicite de la politique d'utilisation | Vérifier l'invite et l'image |
finishReason: RECITATION |
Détection de récitation de contenu protégé | Modifier la formulation de l'invite |
error 503: Model overloaded |
Service surchargé | Réessayer plus tard ou utiliser APIYI |
Questions Fréquentes (FAQ)
Q1 : Pourquoi la même requête réussit-elle parfois et échoue-t-elle d’autres fois ?
La modération du contenu de Gemini présente une certaine part d'aléa, qui peut s'expliquer par :
- Des mises à jour des versions du modèle entraînant des changements dans les politiques de modération.
- Des ajustements temporaires des règles de filtrage côté serveur.
- De subtiles différences dans l'image d'entrée menant à des jugements différents.
Il est conseillé de mettre en place un mécanisme de tentative (retry) pour gérer les échecs occasionnels.
Q2 : Je veux juste enlever les plis d’une image, pourquoi est-elle bloquée ?
Si l'image d'entrée contient des personnages sous droit d'auteur, même si votre intention de traitement est parfaitement légitime (comme supprimer des plis ou ajuster les couleurs), le contrôle des risques sera déclenché. En effet, le système analyse le contenu de l'image d'entrée, et pas seulement l'invite.
Il est recommandé d'utiliser des images ne contenant pas de personnages protégés, ou d'utiliser un logiciel de traitement d'image professionnel.
Q3 : L’API Gemini d’APIYI aura-t-elle les mêmes limitations ?
APIYI propose un service de relais pour l'API Gemini. Comme les modèles sous-jacents sont les mêmes, les mécanismes de contrôle liés au droit d'auteur sont identiques. Cependant, les avantages d'APIYI résident dans :
- Des tarifs plus bas (80 % de réduction par rapport au prix officiel)
- Pas besoin de lier une carte de crédit internationale
- Un support technique en chinois
- Une expérience de service plus stable
Visitez apiyi.com pour en savoir plus.
Résumé
Points clés concernant l'erreur finishReason: OTHER lors de la génération d'images avec l'API Gemini :
- Le contrôle des risques liés aux droits d'auteur est la cause principale : les personnages de licences célèbres (IP) comme Disney, Marvel ou Pixar déclenchent les filtres de sécurité.
- Mécanisme de filtrage multicouche : le processus est surveillé de l'invite jusqu'à la sortie ; n'importe quelle étape peut intercepter la requête.
- Impossible de contourner totalement : les
Safety Settingssont inefficaces contre les restrictions de droits d'auteur, car il s'agit d'une exigence de conformité légale. - Suggestions de résolution :
- Éviter de traiter des images contenant des personnages sous copyright.
- Modifier l'invite en utilisant des descriptions génériques.
- Utiliser APIYI (apiyi.com) pour bénéficier d'une expérience de service plus stable.
Pour les développeurs ayant besoin d'utiliser intensivement la génération d'images Gemini, nous recommandons de passer par APIYI (apiyi.com). Les images 4K ne coûtent que 0,05 $/image (soit 80 % de réduction par rapport au prix officiel), avec support pour Alipay/WeChat et une assistance technique en chinois.
📚 Ressources
-
Documentation Gemini API Safety Settings : Configuration des paramètres de sécurité
- Lien :
ai.google.dev/gemini-api/docs/safety-settings - Description : Explications officielles sur la configuration des filtres de sécurité.
- Lien :
-
Documentation de l'API de génération de contenu Gemini : Explication des valeurs de l'énumération
finishReason- Lien :
ai.google.dev/api/generate-content - Description : Signification des différentes valeurs de
finishReason.
- Lien :
-
Politique d'utilisation interdite de l'IA générative : Politique d'utilisation de Google
- Lien :
support.google.com/gemini/answer/16625148 - Description : Instructions détaillées sur les restrictions de contenu.
- Lien :
Auteur : Équipe technique
Échanges techniques : N'hésitez pas à discuter des problèmes d'utilisation de l'API Gemini dans l'espace commentaires. Pour plus de ressources, vous pouvez visiter la communauté technique d'APIYI (apiyi.com).
