Payer plus achète-t-il une meilleure extraction de facture ? 864 appels, six modèles, l'addition réelle
Sur une facture propre, la montée en gamme n'achète rien : les six modèles sont à 100 %. Là où elle achète quelque chose, les trois fournisseurs achètent les mêmes 10 ou 11 factures justes sur 96, et le prix de ce gain identique varie d'un facteur 6,5. Coûts lus dans l'API, jamais dans une grille tarifaire.
Publié le
07 septembre 2026
Rubrique
Petite entreprise
Trois modèles économiques lisent déjà une facture fournisseur et en sortent 81 à 89 % entièrement justes. La question qui vient ensuite, pour qui s'apprête à brancher ça sur sa comptabilité fournisseurs, c'est de savoir si le modèle cher du même fournisseur règle le reste, et ce que ça coûte aux mille factures.
Nous l'avons mesuré. 864 appels, six modèles, trois fournisseurs, 2,02 USD réellement facturés. Voici ce qui en sort, avant la méthode.
Sur une facture propre, la montée en gamme n'achète rien du tout. Aux niveaux de dégradation 1 et 2, soit 288 des 576 extractions, les six modèles sont à 100 %. Tout l'écart de ce test vient des deux niveaux où le document lui-même est abîmé.
Là où elle achète quelque chose, les trois fournisseurs achètent la même quantité. Passer à la gamme supérieure gagne 10, 11 et 11 factures justes sur 96. Trois fournisseurs différents, trois rapports de prix différents, un gain identique.
Et le prix de ce gain identique varie d'un facteur 6,5. La facture juste en plus coûte 0,0153 USD chez OpenAI, 0,0364 USD chez Anthropic et 0,1001 USD chez Google. Même résultat, six fois et demie l'addition.
Le modèle qui fait 100 % est aussi celui qui signale 82 % de son propre travail juste.google/gemini-2.5-pro a rendu les 96 factures justes et a écrit une note d'avertissement sur 79 d'entre elles. Sa note ne porte aucune information, et la lire comme un signal de qualité enverrait quatre factures propres sur cinq à un humain.
La méthode, en bref
Test conduit le 2026-09-06 par la chaîne de test automatisée de ce site : le corpus, les appels aux modèles et l'analyse sont des scripts, publiés plus bas pour que n'importe qui les rejoue et conteste le résultat. Etienne signe cet article et répond de son contenu.
C'est le sixième test mesuré publié ici, et le deuxième qui met un prix sur un chiffre de justesse au lieu de rendre le chiffre seul.
Le corpus n'a pas été régénéré. C'est exactement celui publié le 2026-08-13 sous le jeu de données d'extraction de factures : 24 factures fournisseur générées par script, graine 20260810, quatre niveaux de dégradation du texte, sept champs par facture, la même consigne mot pour mot, température 0. Le régénérer aurait mêlé l'effet du prix à l'effet d'un corpus différent, et aucun chiffre ci-dessous n'aurait séparé les deux.
Les six modèles forment trois paires. Même fournisseur, même génération, seule la gamme change.
Paire
Économie
Haut de gamme
Rapport de prix affiché
OpenAI
gpt-4o-mini
gpt-4o
16,7x
Google
gemini-2.5-flash-lite
gemini-2.5-pro
12,5x
Anthropic
claude-haiku-4.5
claude-opus-4.5
5x
L'appariement est délibéré. Comparer un petit modèle de 2024 à un grand modèle de 2026 mesurerait la génération autant que la gamme.
Le rapport de prix qui compte n'est pas celui-là. Chaque coût ci-dessous est le montant réellement facturé pour l'appel, lu dans la réponse de l'API, jamais estimé depuis une grille tarifaire. Un modèle raisonnant paie aussi ses jetons de raisonnement, et c'est là que le rapport affiché et le rapport réel se séparent.
Deux passages, et pourquoi il en fallait deux
Passe A, budget de sortie 700 jetons, les trois modèles économiques, 288 appels. C'est le protocole du 2026-08-10 au jeton près. Elle ne sert pas à comparer les prix : elle sert de témoin de dérive, et elle répond à la question que le protocole du 2026-09-04 déclarait explicitement hors de sa portée.
Passe B, budget de sortie 4000 jetons, six modèles, 576 appels. Un budget de 700 jetons tronquegemini-2.5-pro, qui dépense 600 à 1450 jetons de raisonnement avant de répondre. Le mesurer à 700 aurait produit un faux résultat de justesse là où il n'y a qu'un budget trop court. La comparaison de justesse se lit donc sur la passe B, où aucun modèle n'est handicapé.
Contrôle. Sur les trois modèles économiques, qui ne raisonnent pas, les deux budgets rendent la même valeur sur 285 des 288 cas, 99,0 %. Le budget n'est donc pas une variable cachée de la comparaison.
Un incident pendant la mesure, et ce qu'il a coûté
Au premier passage B, 81 des 96 appels de claude-opus-4.5 ont échoué en HTTP 402 : le crédit OpenRouter restant ne couvrait pas les appels en vol à 8 appels simultanés. Le harnais hérité du 2026-08-10 compte un échec technique comme une extraction fausse, et le tableau affichait donc 4/24, 2/24, 7/24, 2/24 pour ce modèle. Laissé tel quel, cet article aurait écrit que le modèle le plus cher d'Anthropic est le pire des six.
Ces 96 appels ont été rejoués seuls, à 3 appels simultanés, même corpus, même consigne, même budget. Zéro échec technique, zéro JSON invalide, et le modèle rend 89 sur 96. Les deux fichiers sont dans l'archive : le passage raté conservé tel quel, et le passage valide fusionné.
Deux leçons, écrites parce qu'elles resserviront. Un harnais qui confond « le modèle s'est trompé » et « l'appel n'a pas abouti » fabrique des résultats faux et plausibles. Et un écart spectaculaire dans le sens contre-intuitif se diagnostique avant d'être écrit, jamais après.
Les chiffres bruts
La justesse est la part des factures dont les sept champs sont justes, sur 96 cas par modèle, 24 factures à quatre niveaux de dégradation. Le coût est en dollars réellement facturés, ramenés à 1000 factures.
Modèle
Justesse
Champs justes
USD / 1000 factures
Jetons de raisonnement
openai/gpt-4o-mini
86,5 %
96,6 %
0,10
0
openai/gpt-4o
96,9 %
99,6 %
1,69
0
google/gemini-2.5-flash-lite
88,5 %
98,2 %
0,10
0
google/gemini-2.5-pro
100,0 %
100,0 %
11,56
956
anthropic/claude-haiku-4.5
81,2 %
97,3 %
1,06
0
anthropic/claude-opus-4.5
92,7 %
99,0 %
5,23
0
Ce que la montée en gamme achète, paire par paire
Paire
Justesse
Factures sauvées sur 96
Coût x
La facture juste en plus coûte
gpt-4o-mini vers gpt-4o
86,5 % vers 96,9 %
+10
x17,1
0,0153 USD
gemini-2.5-flash-lite vers gemini-2.5-pro
88,5 % vers 100,0 %
+11
x121,7
0,1001 USD
claude-haiku-4.5 vers claude-opus-4.5
81,2 % vers 92,7 %
+11
x4,9
0,0364 USD
Les trois paires vont dans le même sens, et la taille du gain bouge à peine : 10 ou 11 factures sur 96. Ce qui bouge, c'est l'addition. Les rapports de prix affichés étaient de 16,7x, 12,5x et 5x ; les rapports réellement facturés sont de 17,1x, 121,7x et 4,9x. Le modèle haut de gamme de Google coûte dix fois ce que sa grille tarifaire laisse croire, parce qu'il paie 956 jetons de raisonnement par facture en plus de sa réponse.
Deux cas sur 288 où le haut de gamme échoue là où l'économique réussit, tous deux chez OpenAI : F19 au niveau 4 et F24 au niveau 3. gemini-2.5-pro et claude-opus-4.5 ne régressent sur aucun cas de leur cadet.
Par niveau de dégradation, et c'est la ligne qui décide
Justesse par modèle et par niveau, 24 factures chacun.
Niveau
4o-mini
4o
flash-lite
2.5-pro
haiku-4.5
opus-4.5
N1 propre
100 %
100 %
100 %
100 %
100 %
100 %
N2 colonnes perdues
100 %
100 %
100 %
100 %
100 %
100 %
N3 totaux mélangés
87,5 %
91,7 %
75,0 %
100 %
50,0 %
75,0 %
N4 libellés perdus
58,3 %
95,8 %
79,2 %
100 %
75,0 %
95,8 %
Lisez les deux premières lignes. Sur 288 des 576 extractions, le modèle le moins cher du test et le plus cher rendent exactement la même chose : tout juste. Si vos factures arrivent en texte propre, la montée en gamme ne vous achète rien, et ce tableau est la raison de dépenser l'argent sur votre chaîne d'entrée plutôt que sur votre gamme de modèle.
Tout l'écart vit en N3 et N4, là où la mise en page est cassée et les libellés absents. C'est aussi là que l'écart entre modèles est le plus large : en N4, gpt-4o-mini tombe à 58,3 % quand gpt-4o tient 95,8 %.
La note spontanée du modèle n'est pas un détecteur d'erreur
Chaque modèle disposait d'un champ de texte libre pour signaler ce dont il n'était pas sûr. Le rattrapage est la part de ses extractions fausses qu'il a signalées. La fausse alerte est la part de ses justes qu'il a signalées.
Modèle
Rattrapage
Fausse alerte
Précision
openai/gpt-4o-mini
0,0 % (0/13)
0,0 % (0/83)
n/a
openai/gpt-4o
66,7 % (2/3)
24,7 % (23/93)
8,0 %
google/gemini-2.5-flash-lite
100,0 % (11/11)
34,1 % (29/85)
27,5 %
google/gemini-2.5-pro
n/a (0/0)
82,3 % (79/96)
0,0 %
anthropic/claude-haiku-4.5
100,0 % (18/18)
39,7 % (31/78)
36,7 %
anthropic/claude-opus-4.5
100,0 % (7/7)
49,4 % (44/89)
13,7 %
C'est le résultat qu'il ne faut pas lire de travers. Quatre modèles signalent 100 % de leurs erreurs, ce qui semble excellent, et signalent en même temps 34 à 49 % de leur travail juste. La précision tombe alors à 14 à 37 % : sur dix extractions que le modèle signale, sept à neuf sont justes.
gemini-2.5-pro en est le cas le plus net. Il n'a commis aucune erreur et a écrit une note sur 79 de ses 96 extractions justes. Il n'y a aucune erreur que cette note puisse désigner. Lui faire confiance reviendrait à relire 82 % d'un lot parfait.
À l'opposé, gpt-4o-mini n'écrit jamais de note, sur aucune des 96. Ses 13 erreurs sont donc toutes silencieuses, et ce n'est pas qu'il les cache : il n'utilise pas le champ.
Passe A contre les résultats bruts du 2026-08-10, cas par cas, sur les mêmes 288 appels.
Comparaison
Résultat
Même verdict, juste ou faux
287 / 288 (99,7 %)
Valeurs identiques sur les sept champs
282 / 288 (97,9 %)
Les six cas qui diffèrent portent tous sur total_due ou subtotal, et un seul bascule de juste à faux : gpt-4o-mini, facture F08, niveau 3. À température 0, sur un mois, ces trois modèles rendent donc quasiment la même chose, et leurs erreurs sont des erreurs stables, pas du bruit.
Cela dépasse ce test. Cela veut dire que le jeu de données d'août décrit encore fidèlement ce que ces modèles font aujourd'hui, et c'est la raison pour laquelle la comparaison de garde-fous du 2026-09-04 pouvait le réutiliser. Cela ne veut pas dire que la température 0 est répétable à l'intérieur d'une même journée : nous l'avons mesuré à part, et elle ne l'est pas.
La consigne, inchangée depuis août
python
# La consigne envoyee aux six modeles, identique a celle du 2026-08-10.
CONSIGNE = """You are extracting data from a supplier invoice for a small business bookkeeping system.
Return ONLY a JSON object with exactly these keys:
- invoice_number: string, the supplier's invoice number
- invoice_date: string, ISO format YYYY-MM-DD
- due_date: string, ISO format YYYY-MM-DD
- currency: string, ISO 4217 code
- subtotal: number, the amount the tax was calculated on
- tax: number
- total_due: number, the amount the customer must actually pay for this invoice
- notes: string, empty if everything was unambiguous, otherwise say what was unclear
Numbers must be plain numbers, no currency symbols, no thousand separators.
Invoice:
---
%s
---"""# Le cout est LU dans la reponse de l'API, jamais estime depuis une grille# tarifaire : usage.cost porte le montant reellement facture, jetons de# raisonnement compris, et c'est la seule mesure de prix de ce test.
charge = {"model": modele, "messages": [{"role": "user", "content": CONSIGNE % texte}],
"temperature": 0, "max_tokens": budget_sortie,
"usage": {"include": True}}
...
usage = donnees.get("usage") or {}
return {"jetons_raisonnement": ((usage.get("completion_tokens_details") or {})
.get("reasoning_tokens")),
"cout_usd": usage.get("cost")}
Ce que ce test ne prouve pas
24 factures générées par script ne sont pas un échantillon de factures réelles. Ni scan, ni langue étrangère, ni mise en page exotique, ni tampon manuscrit.
Un seul appel par cas. Les taux de justesse portent une incertitude d'échantillonnage qui n'est pas mesurée ici, et le test du 2026-08-25 a établi que la température 0 ne garantit pas la répétabilité.
Les prix des API changent. Les coûts publiés sont ceux du 2026-09-06.
Rien ici ne dit qu'un modèle haut de gamme reste meilleur sur une autre tâche. Il dit ce qu'il a fait sur celle-ci.
Le 100 % de gemini-2.5-pro vaut 96 sur 96. Un sans-faute sur 96 cas est un sans-faute sur 96 cas, pas une garantie.
Ce que nous en ferions
Si les factures arrivent en texte propre, restez sur le modèle économique : sur ce corpus il est déjà à 100 % et la montée en gamme est du coût pur. Si elles arrivent abîmées, la montée en gamme vaut le coup, et le fournisseur choisi décide si le même gain vous coûte 15 USD ou 100 USD aux mille factures. Et dans les deux cas, n'utilisez pas la note du modèle comme contrôle : les contrôles qui marchent sont mesurés ici, et la note spontanée du modèle est le plus faible d'entre eux.
Le corpus complet, les 864 réponses brutes, les deux passages dont le raté, et les scripts d'analyse sont sur la page de données de ce test.
Un avertissement sur la montée en gamme, mesuré depuis : sur une tâche où le modèle doit décider plutôt que lire, la même montée achète moins de faux rejets et plus de faux accords. Nous l'avons mesuré sur le rapprochement facture et bon de commande, et sur un processus de comptabilité fournisseurs c'est le mauvais arbitrage.
Prix faux, ligne jamais commandée, référence fausse, devise fausse : attrapés 383 fois sur 383. Les dix-sept faux accords du test portent tous sur une seule condition, la sur-livraison, et un modèle a écrit l'écart avant de l'approuver.
L'auto-vérification rattrape 97,6 % des extractions de factures fausses. Sur des fusions de contacts, où rien ne se recalcule, elle en rattrape 76,0 %. L'accord entre modèles tombe de 92,9 % à 62,9 %, et il marche le plus mal sur le modèle qui se trompe le moins.
Le contrôle arithmétique publié en août rattrape 59 % des erreurs et se déclenche sur 22 % des extractions justes. Nous avons posé quatre garde-fous différents sur les mêmes 288 extractions. Celui qui rattrape le plus est le pire à déployer, et l'accord entre modèles ne se déclenche jamais sur une facture propre.