Aller au contenu
en ce moment

Benchmarks

Le modèle refuse de lire le document : test chez trois fournisseurs

Un test de contexte a révélé un content_filter systématique pour tout document dépassant ~2000 tokens chez AWS, le producteur et Google. Même un texte sur les plantes.

Par 7 min de lecture
Le modèle refuse de lire le document : test chez trois fournisseurs

👁 119 lectures

Nous avons préparé un test de contexte pour modèles : un document contenant des informations cachées, des questions à leur sujet, puis vérification du nombre d’informations retrouvées. Le résultat était zéro, nous avons donc d’abord pensé que le modèle avait une mémoire faible. Après examen de la réponse brute de l’API, il s’est avéré que le modèle n’avait pas lu un seul mot - l’entrée avait été rejetée par la modération et était revenue avec content_filter et native_finish_reason: refusal.

Conclusion en un paragraphe

Zéro résultat dans un test de mémoire n’est pas toujours la preuve d’un contexte court. Dans notre mesure, le modèle renvoyait content_filter et native_finish_reason: refusal pour CHAQUE document dépassant environ 2000 tokens, et ce chez trois fournisseurs indépendants - AWS, l’API du producteur et Google. Le refus concernait même un texte sur les plantes, sans aucun contenu technique, nom d’outil ou quoi que ce soit pouvant être considéré comme sensible. Lorsque nous avons substitué un modèle de remplacement sur le même matériel et les mêmes questions, il a trouvé 6 informations cachées sur 6 en 2,3-4,9 s. La tâche était donc réalisable, et le résultat précédent mesurait la modération, pas la mémoire.

Comment s’est déroulé le test de contexte

Le schéma était simple et volontairement ennuyeux. Nous prenions un document, y insérions six informations spécifiques à différents endroits - au début, au milieu, près de la fin - puis posions six questions, une par information cachée. Nous comptions les résultats et le temps de réponse. Rien de plus.

Nous commencions le matériel de test par une version courte et augmentions progressivement. C’est important, car cette procédure a permis de voir où se situe la limite. En dessous d’environ 2000 tokens, les réponses arrivaient normalement. Au-dessus - content_filter, à chaque fois, sans exception.

Pour exclure le contenu comme cause, nous avons remplacé le document par un texte sur les plantes. Zéro terminologie technique, zéro code, rien de controversé. Refus identique.

Trois fournisseurs, même limite de contexte IA

La première pensée face à un refus est généralement : quelque chose dans la configuration de ce point d’accès spécifique. Nous avons donc répété le test sur trois chemins d’accès indépendants - AWS, directement chez le producteur du modèle et chez Google. Ce sont des infrastructures séparées, des panneaux séparés, des paramètres de sécurité séparés. Le comportement était identique.

C’est pour nous l’élément le plus fort de toute la mesure. Si le problème résidait dans notre code ou dans un seuil de modération mal configuré, il ne se serait pas reproduit sur trois plateformes simultanément.

Élément Avant diagnostic (modèle refusant) Après substitution (modèle de remplacement)
Résultats sur informations cachées 0 - pas de réponse de fond 6 sur 6
Temps de réponse sans objet - refus 2,3-4,9 s
Statut renvoyé content_filter, native_finish_reason: refusal fin normale
Seuils de refus chaque document au-dessus de ~2000 tokens aucun
Texte sur les plantes refus traité
Nombre de fournisseurs avec ce comportement 3 sur 3 (AWS, producteur, Google) 0

Pourquoi un refus du modèle se confond facilement avec une mémoire faible

La plupart des bibliothèques clientes et surcouches affichent un contenu de réponse vide ou un court message de remplacement. Le code de raison de fin est souvent caché un champ plus profond et personne ne le regarde si le script de test se contente de compter les résultats. Dans cette configuration, une chaîne vide ressemble exactement à « le modèle n’a pas trouvé l’information ».

L’effet est trompeur, car un résultat nul correspond à l’hypothèse intuitive. Nous nous attendons à ce qu’un long document charge la mémoire, donc un échec sur un long document semble confirmer cela. Or nous mesurons quelque chose de complètement différent : si le matériel est passé par le filtre d’entrée.

C’est notre opinion, mais nous pensons qu’une partie des comparaisons publiées sur les « limites de contexte IA » mesurent justement la modération. Nous n’avons pas de données là-dessus au-delà de notre propre mesure, donc nous traitons cela uniquement comme une hypothèse, pas comme un fait établi.

Ce qui a concrètement changé après substitution du modèle

Après le changement pour un autre modèle, nous n’avons touché à rien d’autre. Même document, mêmes six questions, même ordre, même infrastructure. Résultats : 6 sur 6. Temps : de 2,3 à 4,9 s, selon la profondeur de l’information recherchée dans le document.

La dispersion 2,3-4,9 s est aussi une information. Elle montre que le modèle parcourt réellement le matériel, et ne répond pas de mémoire à partir d’un modèle. S’il répondait par des généralités, les temps seraient plus uniformes.

Le plus important : puisque le second modèle a accompli la tâche entièrement, la tâche était réalisable. Le zéro précédent n’était pas une évaluation de la difficulté du test.

Quand suspecter la modération plutôt que le contexte

De notre mesure ressortent plusieurs signaux d’alerte. Premier : le résultat ne se dégrade pas progressivement, mais chute brutalement. Un vrai problème de mémoire donne généralement une transition douce - d’abord une information est perdue, puis une deuxième. Le filtre d’entrée bascule de manière binaire.

Deuxième signal : la limite tombe à une valeur ronde et basse. Environ 2000 tokens, c’est nettement trop peu pour parler d’épuisement de la fenêtre de contexte de n’importe quel modèle contemporain. Si le résultat s’effondre si tôt, ce n’est presque certainement pas le contexte qui est en cause.

Troisième : refus pour du contenu sûr. Un texte sur les plantes est un bon matériel de contrôle justement parce qu’il n’y a rien à bloquer. Si lui aussi revient avec un refus, la cause réside dans le volume ou dans la configuration, pas dans le sujet.

Comment vérifier chez vous

  1. Enregistrez les réponses API brutes complètes, pas seulement le champ de contenu. Ce qui vous intéresse, ce sont les codes de raison de fin - dans notre cas, c’étaient content_filter et native_finish_reason: refusal.
  2. Préparez un document avec six informations cachées réparties du début à la fin du texte. Notez où exactement chacune se trouve.
  3. Lancez le test sur une version courte, nettement en dessous de 2000 tokens. C’est votre point de référence - si ça ne fonctionne pas ici, le problème est dans le prompt, pas dans la longueur.
  4. Augmentez le volume du document par paliers et notez à quelle valeur apparaît le premier refus. Si la limite tombe brutalement et non progressivement, pensez au filtre.
  5. Substituez un matériel thématiquement neutre - chez nous, c’était un texte sur les plantes. Si lui aussi revient avec un refus, le contenu n’est pas la cause.
  6. Répétez chez un deuxième et un troisième fournisseur. Nous avons vérifié AWS, l’API du producteur et Google. La concordance du comportement sur trois plateformes exclut une erreur de configuration locale.
  7. Remplacez le modèle par un autre, sans rien changer d’autre. S’il trouve les six informations, vous avez la preuve que le test était réalisable, et que le zéro précédent mesurait autre chose.
  8. Enregistrez les temps de réponse séparément pour chaque question. La dispersion - chez nous 2,3-4,9 s - confirme que le modèle parcourt réellement le matériel.
Google · Vos sourcesPromptif plus haut dans Google - en un clicAjouter aux sources préférées →

D’où viennent ces chiffres

Toutes les valeurs proviennent de notre mesure effectuée avant le 21.09.2026. Nous avons testé un modèle via trois chemins d’accès indépendants : AWS, l’API directe du producteur et Google. Matériel de test : document avec six informations cachées, mis à l’échelle en volume, plus une version de contrôle sur les plantes sans contenu technique. Les refus avec codes content_filter et native_finish_reason: refusal sont survenus pour chaque document dépassant environ 2000 tokens chez les trois fournisseurs. Le modèle de remplacement sur le même ensemble de tâches a trouvé 6 informations cachées sur 6 en 2,3-4,9 s. Nous ne donnons pas les noms des modèles ni les seuils exacts de modération, car nous n’avons pas confirmation que les paramètres côté fournisseurs sont restés inchangés après la date de mesure. Les passages marqués comme opinion sont nos conclusions, pas des résultats de mesure.

Kinetyra

// read next

More on this from PROMPTIF

Promptif

Promptif

ADMINISTRATOR
à lire ensuitePNG transparent avec Qwen-Image-2.1 : test du canal alphaoutils d'iaPNG transparent avec Qwen-Image-2.1 : test du canal alpha22,7 % de pixels totalement transparents et une plage alpha complète de 0 à 255. Comment demander la transparence et ce qu'il faut surveiller.

Les plus lus

  1. 1Applications de génération vidéo IA : Kling, PixVerse et autres
  2. 2Calendrier IA 2026 : lancements de modèles, conférences et IA Act
  3. 3Affaire Thélyson Orélien : j’ai testé le roman avec trois détecteurs d’IA. Même paragraphe : 100 %, 85 % et 0 %
// plan du site

Cette page dans d’autres langues6

promptif en chiffres 0textes dans les archives0actus des 7 derniers jours0modèles vidéo dans l'observatoire
🎬 Studio Vidéo IA : Higgsfield AI DoP Presets Caméra & Calculateur • Code Promo Higgsfield AI -50% • Higgsfield vs Kling AI
× ‹ agrandissement ›