Jeu de données
Prix contre justesse en extraction de factures, six modèles
Les 24 factures déjà publiées ici, lues par six modèles formant trois paires économie et haut de gamme, avec le coût réellement facturé pour chacun des 864 appels. Test conduit le 2026-09-06.
Cette page décrit un jeu de données, publié en entier. C'est la matière première de notre mesure du prix contre la justesse en extraction de factures : 864 appels, six modèles appariés par fournisseur et par génération, le coût réellement facturé pour chaque appel, et les deux passages qu'il a fallu pour obtenir une comparaison honnête.
Tout ce qui est sur cette page vient de ce seul passage. Rien n'est estimé.
Ce qu'il mesure, et ce qu'il ne prouve PAS
Il mesure une chose : ce que la montée en gamme achète, et ce qu'elle coûte, sur une tâche que trois modèles économiques font déjà correctement. Six modèles, trois fournisseurs, trois paires. À l'intérieur d'une paire, le fournisseur et la génération sont tenus constants et seule la gamme change, si bien que l'écart ne peut pas se lire comme un écart de génération.
Le chiffre de prix ne sort pas d'une grille tarifaire. C'est le montant réellement facturé pour l'appel, lu dans la réponse de l'API, jetons de raisonnement compris. Cette distinction est tout l'objet du test : l'un des trois modèles haut de gamme coûte dix fois ce que son rapport affiché laisse croire.
Ce qu'il ne prouve pas, dit franchement, parce qu'un jeu de données cité sans ses limites fait plus de mal que pas de jeu de données du tout :
- 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 notre propre 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 sont ceux du 2026-09-06 et d'aucun autre jour.
- Un sans-faute vaut 96 sur 96, pas une garantie. Un modèle a rendu toutes les factures justes sur ce corpus. C'est un fait qui porte sur 96 cas.
- Rien ici ne dit qu'un modèle haut de gamme reste meilleur sur une autre tâche.
Le corpus est réutilisé, et voici ce que ça veut dire
Les 24 factures, leurs quatre niveaux de dégradation et leur vérité terrain sont
exactement ceux publiés ici le 2026-08-13, sous
le jeu de données d'extraction de factures,
générés par script avec la graine fixe 20260810. Ils n'ont pas été régénérés, et la
consigne envoyée aux modèles est celle d'août mot pour mot, à température 0.
Ce choix est délibéré et c'est ce qui donne un sens à la comparaison : les six modèles jugent un jeu de documents identique. Régénérer aurait mêlé l'effet de la gamme à l'effet d'un corpus différent, et aucun chiffre n'aurait séparé les deux.
Cela permet aussi à ce jeu de données de répondre à une question laissée ouverte par les précédents. La passe A rejoue le protocole d'août au jeton près, 27 jours plus tard, sur les trois modèles économiques : même verdict sur 287 des 288 cas, valeurs identiques sur 282. Le jeu de données d'août décrit encore fidèlement ce que ces modèles font.
Deux passages, et un raté conservé tel quel
Passe A, budget de sortie 700 jetons, trois modèles économiques, 288 appels. Témoin de dérive.
Passe B, budget de sortie 4000 jetons, six modèles, 576 appels. La comparaison de justesse se lit ici. Un budget de 700 jetons tronque un modèle raisonnant, ce qui aurait produit un faux résultat de justesse là où il n'y avait qu'un budget trop court.
Au premier passage B, 81 des 96 appels de claude-opus-4.5 ont échoué en HTTP 402 :
le crédit restant ne couvrait pas les appels en vol. Le harnais compte un échec
technique comme une extraction fausse, et le modèle semblait donc le pire des six. Ces
96 appels ont été rejoués seuls, et le modèle rend 89 sur 96.
Les deux fichiers sont dans l'archive. passeB-six-modeles-budget4000.json porte
le passage raté exactement tel qu'il s'est produit, passeB-opus45-budget4000.json le
rejeu, et passeB-fusionnee.json le passage valide fusionné avec sa note de fusion.
Un test qui cache sa mesure ratée vaut moins qu'un test qui la montre.
Les chiffres bruts
La justesse est la part des factures dont les sept champs sont justes, sur 96 cas par modèle. 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 | Factures sauvées sur 96 | Rapport affiché | Rapport facturé | La facture juste en plus coûte |
|---|---|---|---|---|
gpt-4o-mini vers gpt-4o |
+10 | 16,7x | 17,1x | 0,0153 USD |
gemini-2.5-flash-lite vers gemini-2.5-pro |
+11 | 12,5x | 121,7x | 0,1001 USD |
claude-haiku-4.5 vers claude-opus-4.5 |
+11 | 5x | 4,9x | 0,0364 USD |
Justesse par modèle et par niveau de dégradation, 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 % |
La note spontanée du modèle, notée sur ses deux taux.
| 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 % |
Dérive à 27 jours, passe A contre les résultats bruts d'août 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 %) |
| Effet du budget de sortie sur les modèles économiques | 285 / 288 identiques (99,0 %) |
Ce que contient l'archive
Dix fichiers, 2,0 Mo décompressés. Dans l'ordre de lecture : ce qui construit le corpus, ce qui appelle les modèles, ce que ces modèles ont réellement rendu, et ce qui l'analyse. Le corpus est livré avec l'archive plutôt que référencé, pour que cette archive tienne debout seule sans aller en chercher une autre.
Les scripts et leurs commentaires sont en français, qui est la langue de travail derrière ce site. La clé d'API est lue dans une variable d'environnement et n'apparaît dans aucun de ces fichiers.
Le rejouer
L'analyse n'appelle aucun modèle : elle se rejoue à coût nul sur les réponses brutes
livrées dans l'archive. Seul conduire-test.py dépense quelque chose.
unzip 2026-09-invoice-price-accuracy.zip
python3 analyser.py --passeB passeB-fusionnee.json \
--passeA passeA-economie-budget700.json --sortie chiffres.jsonChaque réponse brute est une entrée des fichiers de passe, exactement telle que le modèle l'a rendue, avec le coût que l'API a facturé pour elle. Celle-ci est le modèle raisonnant sur une facture propre, et c'est la forme de la fausse alerte comptée dans le tableau ci-dessus : les sept champs justes, 1206 jetons de raisonnement payés, et une note qui rapporte deux faits sur le document sans affirmer qu'un champ est faux. Comptée comme un signalement, elle coûte à un humain une relecture pour rien.
{
"modele": "google/gemini-2.5-pro",
"facture": "F01",
"niveau": 1,
"lu": true,
"json_valide": true,
"tous_les_champs_justes": true,
"jetons_raisonnement": 1206,
"cout_usd": 0.014135,
"note_du_modele": "The first two line items have the same description but a significant difference in unit price ($5.57 vs $144.51). The currency '$' was assumed to be USD."
}Vérifiez ce que vous avez téléchargé avant de lui faire confiance :
shasum -a 256 2026-09-invoice-price-accuracy.zip
# 80bb17e8c06d57cb4ba3e6152a9fb4bb417ec298b3ce346d2f614f81f872acbbComment citer ce jeu de données
Copiez l'une des deux formes ci-dessous. La référence pointe sur cette page, qui est l'adresse stable de ce jeu de données ; l'archive est ce que cette adresse sert.
Think AI First (2026). Prix contre justesse en extraction de factures, six modèles, 864 réponses brutes avec leur coût facturé.
Think AI First. Test conduit le 2026-09-06, publié le 2026-09-07.
https://think-ai-first.com/fr/donnees/prix-justesse-factures-2026-09. Sous licence CC BY 4.0.@dataset{thinkaifirst2026prixjustesse,
author = {{Think AI First}},
title = {Prix contre justesse en extraction de factures, six modeles, 864 reponses brutes avec leur cout facture},
year = {2026},
publisher = {Think AI First},
url = {https://think-ai-first.com/fr/donnees/prix-justesse-factures-2026-09},
note = {Test conduit le 2026-09-06. Sous licence CC BY 4.0. Somme SHA-256 de l'archive 80bb17e8c06d57cb4ba3e6152a9fb4bb417ec298b3ce346d2f614f81f872acbb}
}Licence et réutilisation
Publié sous CC BY 4.0. Utilisez-le, citez-le, contredisez-le. Si vous le rejouez et obtenez autre chose, dites-le-nous par le formulaire de contact : les corrections sont publiées sur l'article lui-même, datées.
Télécharger le jeu de données (zip, 109,8 Kio, 10 fichiers)
Les autres jeux de données publiés ici
Chacun est un test distinct, avec son corpus, ses réponses brutes et son archive. Celui-ci réutilise le corpus du premier et met un prix sur ce que la montée en gamme y achète.
- Extraction de factures par trois modèles économiques, 288 réponses brutes, test conduit le 2026-08-10.
- Dédoublonnage de contacts par trois modèles économiques, 96 réponses brutes, test conduit le 2026-08-17.
- Extraction des actions d'un compte rendu par trois modèles économiques, 96 réponses brutes, test conduit le 2026-08-18.
- Répétabilité d'une étape LLM à température 0, 360 réponses brutes, test conduit le 2026-08-25.
- Quatre garde-fous de détection d'erreur sur 288 extractions de factures, 288 réponses brutes d'auto-vérification, test conduit le 2026-09-04.
- Deux garde-fous de détection d'erreur sur 368 fusions de contacts proposées, 96 réponses brutes d'auto-vérification, test conduit le 2026-09-12.
- Rapprochement facture et bon de commande par quatre modèles, 672 décisions brutes, test conduit le 2026-09-14.