Methode et chiffres mesures

Aucun detecteur de texte IA ne publie son taux de fausses alertes. Voici le notre, avec le corpus qui a servi a le mesurer et les cas ou notre outil echoue completement.

Le principe

Un modele de langue attribue a chaque mot d'un texte une probabilite, compte tenu des mots precedents. Un texte produit par une machine est en moyenne plus previsible qu'un texte humain. C'est l'idee derriere la plupart des detecteurs, et prise seule elle ne marche plus : un texte humain technique, administratif ou scolaire est previsible lui aussi, et se fait accuser a tort.

Nous utilisons une methode qui corrige ce defaut, publiee en 2024 sous le nom de Binoculars. Elle fait lire le texte par deux modeles de la meme famille, un modele brut et sa version entrainee a suivre des instructions, puis divise la surprise du premier par le desaccord entre les deux. Ce rapport annule la difficulte propre au texte : un passage ardu surprend les deux modeles de la meme facon, et le rapport reste stable. Ce qui subsiste est la regularite propre a la machine.

Un score bas signale un texte suspect. Le seuil qui separe les deux cas n'a rien d'universel : il depend de la langue, des modeles utilises et du materiel. Nous l'avons donc mesure nous-memes, sur du francais.

Ce que nous faisons tourner

Les deux modeles sont CroissantLLM, un modele franco-anglais ouvert de 1,3 milliard de parametres, dans ses versions Base et Chat. Nous les executons en precision 16 bits avec llama.cpp, sur notre propre serveur. Aucun texte n'est envoye a une API exterieure, ni a OpenAI, ni a Mistral, ni a personne.

L'analyse porte sur les 512 premiers jetons, soit environ 380 mots. Les textes plus longs sont tronques. Nous avons verifie qu'aller jusqu'a 1024 jetons n'apportait rien de mesurable.

Le corpus humain

1800 textes francais, tous ecrits avant 2022, donc avant que la redaction assistee ne se repande. Ils sont tires de projets encyclopediques libres, dans leurs versions archivees de cette periode, et repartis en six genres de 300 textes chacun, de 150 a 600 mots.

GenreCe qu'il represente
Encyclopedieprose documentaire soignee et relue
Discussionfrancais spontane, argumentatif, non relu
Pedagogiecours et manuels, proche de l'ecrit scolaire
Vulgarisationphrases courtes, vocabulaire simple
Voyageprose pratique et descriptive
Actualiteecriture journalistique breve

Ce dernier point compte : le genre vulgarisation a ete inclus volontairement parce que l'ecriture simple est celle que les detecteurs accusent le plus souvent a tort. C'est le cas des eleves et des personnes dont le francais n'est pas la langue maternelle.

Le corpus IA

554 textes produits en septembre 2026 par quatre modeles : Mistral Small, GPT-4.1-mini, GPT-5.6 et GPT-6. Chaque texte porte sur le meme theme et vise la meme longueur qu'un texte humain du corpus, dans le meme registre documentaire. Sans cet appariement, un detecteur apprend a reconnaitre des sujets plutot que des machines, et le resultat est flatteur mais faux.

Quatre facons de produire ont ete testees, a parts egales : redaction directe, redaction avec consigne d'ecrire comme un humain, reecriture par l'IA d'un texte humain existant, et traduction depuis l'anglais.

Le reglage du seuil

Un detecteur se regle sur un arbitrage : plus il signale, plus il se trompe. Nous avons choisi le reglage le plus prudent mesurable sur notre corpus.

Fausses alertes tolereesTextes IA retrouves
10 %54,7 %
5 %48,6 %
2 %43,9 %
1 %41,5 %
0,5 %39,2 %
0,1 % (retenu)34,8 %

Passer de 10 % a 0,1 % de fausses alertes ne coute que vingt points de detection, et divise par cent le risque d'accuser quelqu'un a tort. L'arbitrage n'etait pas difficile.

Les fausses alertes, genre par genre

Sur les 1800 textes humains, deux ont ete signales a tort, soit 0,111 %. L'intervalle de confiance a 95 % va de 0,03 % a 0,40 %, ce qui nous autorise a annoncer moins de 0,5 %.

GenreTextesFausses alertes
Encyclopedie3001 (0,33 %)
Pedagogie3001 (0,33 %)
Actualite3000
Discussion3000
Voyage3000
Vulgarisation3000

Avec 300 textes par genre, un taux nul ne prouve pas l'absence totale de fausses alertes : il garantit seulement qu'elles restent sous environ 1,3 % pour ce genre. Nous preferons l'ecrire plutot que de laisser croire a un zero absolu.

Ce que nous detectons, et ce que nous ne detectons pas

C'est ici que notre outil se distingue de ce que vous lirez ailleurs, parce que nous publions aussi les chiffres qui nous desservent.

Modele ayant ecrit le texteTextesRetrouves
GPT-4.1-mini16065,0 %
Mistral Small16055,0 %
GPT-5.61740,6 %
GPT-6600,0 %

Lisez bien la derniere ligne. Sur 60 textes ecrits par le modele le plus recent, nous n'en avons retrouve aucun. Sur 174 textes de la generation precedente, un seul.

Autrement dit, notre outil sait reconnaitre les textes produits par les modeles d'il y a un an ou deux, ceux des offres gratuites et des integrations anciennes. Il est aveugle aux modeles actuels. Tout detecteur qui vous promet le contraire aujourd'hui vous dit quelque chose qu'il n'a pas mesure.

Maniere de produire le texteTextesRetrouves
Traduit depuis l'anglais13951,8 %
Redige directement13849,3 %
Redige avec consigne de style humain13838,4 %
Texte humain reecrit par l'IA1390,0 %

La derniere ligne est un mur, pas un reglage a ameliorer. Quand une IA reformule un texte ecrit par une personne, le resultat garde la structure, le rythme et les choix de l'auteur d'origine. Il n'y a presque rien a mesurer. Demander une reformulation suffit donc a passer notre outil, et tous les autres.

La longueur du texte compte

LongueurTextes IA retrouves
Moins de 200 mots30,4 %
200 a 350 mots33,7 %
350 a 600 mots35,8 %
Plus de 600 mots40,7 %

C'est pourquoi nous exigeons 150 mots au minimum. En dessous, la mesure n'a pas assez de matiere.

Comment nous avons verifie notre propre code

Un calcul faux peut produire des chiffres credibles. Nous avons donc mesure deux fois, avec deux implementations independantes : une premiere en PyTorch sur carte graphique, une seconde avec llama.cpp sur processeur, celle qui sert reellement vos analyses. Sur les memes textes, la correlation entre les deux series de scores est de 0,9995, et les resultats finaux coincident : aire sous la courbe de 0,792 contre 0,793, detection de 35,0 % contre 34,8 %.

Le seuil publie ici a ete calcule sur la seconde implementation, celle qui tourne en production. Calibrer un chemin de calcul et en deployer un autre reviendrait a annoncer un taux d'erreur qui ne serait pas celui que vous obtenez.

Nos limites, en clair

Notre corpus humain provient de projets encyclopediques libres. Il couvre six genres, mais pas tous les francais possibles : il manque notamment du texte ecrit par des personnes dont le francais n'est pas la langue maternelle, population precisement la plus exposee aux fausses accusations. Nous ne savons pas mesurer ce cas aujourd'hui, et nous ne pretendrons pas le contraire.

Nos chiffres datent de septembre 2026. Chaque nouvelle generation de modeles les degrade. Nous les remesurerons, et nous les republierons ici, y compris s'ils empirent.

Enfin, ces taux valent pour un corpus, pas pour votre texte. Un resultat individuel reste un indice.

Reference

La methode est decrite dans Hans et al., Spotting LLMs With Binoculars: Zero-Shot Detection of Machine-Generated Text, 2024, disponible sur arXiv. Le modele CroissantLLM est publie par son equipe sur Hugging Face.

Une question sur ces mesures, ou un desaccord argumente : ecrivez-nous.