Jeu de données

Dédoublonnage de contacts par trois modèles économiques

96 réponses brutes de modèles, 8 carnets générés par script avec leur vérité terrain, quatre niveaux de désordre. Test conduit le 2026-08-17.

Cette page décrit un jeu de données, publié en entier. C'est la matière première de notre mesure des fusions fausses en dédoublonnage de contacts : 8 carnets, quatre niveaux de désordre, trois modèles économiques, et les 96 réponses que ces modèles ont réellement rendues.

Tout ce qui est sur cette page vient de cette seule exécution. Rien n'est estimé.

Ce qu'il mesure, et ce qu'il ne prouve pas

Il mesure une chose précisément : combien de fois un modèle fusionne deux personnes différentes, et combien de fois il le fait sans rien qui enverrait un opérateur vérifier cette paire. Fusionner n'est pas lire une valeur : c'est trancher une identité. Un doublon oublié laisse deux lignes dans un fichier. Une fusion fausse détruit une ligne, et le fichier qui revient ne le dit pas.

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 :

  • Les carnets font 12 lignes chacun et tiennent entièrement dans la fenêtre du modèle. Un fichier de 5000 lignes impose un découpage, un blocage et une stratégie de comparaison, dont rien n'est mesuré ici.
  • Le corpus est construit par script, pas collecté. Aucune personne réelle, aucune société réelle, aucune adresse réelle. Les numéros sont pris dans la plage 555-01xx, réservée à la fiction, et les domaines de courriel sont sous le TLD réservé .example.
  • 96 lignes dans 8 carnets. Un test sur 8 carnets est un test sur 8 carnets.
  • Une seule exécution par couple, à température 0. Des écarts de quelques points entre modèles ne sont pas significatifs ici. C'est la forme des erreurs qui tient.
  • Une seule langue, l'anglais, et des noms latins uniquement. Les noms translittérés et les sociétés réellement homonymes sont un cas difficile connu, que ce corpus ne contient pas.
  • Trois modèles d'entrée de gamme. Rien ici ne dit ce que feraient les plus chers.

Le corpus est construit, et voici ce que cela veut dire

Les 8 carnets ont été générés par script avec la graine fixe 20260817. C'est un choix assumé, et il coupe dans les deux sens.

Ce qu'il achète : la vérité terrain d'un dédoublonnage est une partition, et elle n'est indiscutable que si c'est nous qui l'avons posée. N'importe qui peut régénérer exactement le même corpus et contester notre lecture. Ce qu'il coûte : ce ne sont pas de vrais contacts, et un vrai carnet porte des désordres que nous n'avons pas pensé à inventer.

Chaque carnet contient 3 paires de doublons à fusionner, 2 paires ressemblantes à laisser tranquilles, et 2 lignes seules. Toute paire de doublons partage au moins une clé forte, le courriel ou le téléphone, pour qu'il existe une seule bonne réponse défendable. Toute paire piège se distingue par au moins deux attributs dérivables du carnet lui-même. Un script de contrôle vérifie ces deux invariants, et l'absence de collision accidentelle, avant le moindre appel.

Test conduit le 2026-08-17. Cette page a été publiée le 2026-08-17. Les passes de dédoublonnage ont été conduites par la chaîne de test automatisée de ce site : le corpus, les appels aux modèles et l'analyse sont des scripts, et ils sont tous dans l'archive ci-dessous.

Chiffres bruts

Doublons retrouvés, et personnes fusionnées à tort

Modèle Doublons retrouvés Pièges fusionnés à tort Fusions fausses dont silencieuses
openai/gpt-4o-mini 87/96 43/64 46 33
google/gemini-2.5-flash-lite 92/96 31/64 32 25
anthropic/claude-haiku-4.5 92/96 19/64 19 10
Tous confondus 271/288 93/192 97 68

Par niveau de désordre

Niveau Doublons retrouvés Pièges fusionnés à tort
N1 propre 64/72 16/48, soit 33,3 pour cent
N2 casse et espaces 69/72 26/48, soit 54,2 pour cent
N3 formats de téléphone mélangés 71/72 32/48, soit 66,7 pour cent
N4 colonnes fusionnées 67/72 19/48, soit 39,6 pour cent

Les quatre degrés du silence

Degré Ce que la note donne à un opérateur Nombre
1. aucune note le champ notes est vide 9
2. paire non nommée une note existe mais ne cite pas les deux lignes fusionnées à tort 17
3. nommée mais affirmée la note cite les deux lignes sans la moindre réserve 42
4. réellement signalée la note cite les deux lignes et porte une marque de doute 29

Les degrés 1, 2 et 3 sont comptés comme silencieux : 68 sur 97. Le lexique du doute est publié en entier dans analyser.py et repris dans chiffres.json. Il est volontairement généreux.

Quelle famille de pièges tombe

Piège Ce qui les rapproche Fusionnés à tort
T1 prénom et nom exactement identiques, deux sociétés 43/72, soit 60 pour cent
T2 même nom de famille, même société, même numéro de standard 27/60, soit 45 pour cent
T3 courriels presque identiques sur le même domaine 23/60, soit 38 pour cent

Deux homonymes exacts dans deux sociétés différentes pourraient être une seule personne ayant changé d'employeur, et le carnet ne tranche pas à cent pour cent. Sans cette famille : 50 fusions fausses sur 120, soit 41,7 pour cent.

La règle des clés fortes

Refuser toute fusion dont les deux lignes n'ont ni le même courriel, casse ignorée, ni le même numéro, chiffres seuls.

Grandeur Valeur
Fusions fausses bloquées 70 sur 97
Fusions fausses laissées passer 27, toutes de la famille au standard partagé
Fusions justes bloquées 0 sur 271, vrai par construction de ce corpus

Totaux de l'exécution

Grandeur Valeur
Passes de dédoublonnage 96
Échecs techniques 0
Réponses JSON invalides 0
Coût total des appels 0,06647 USD
Fusions fausses silencieuses 68

Ce que contient l'archive

Sept fichiers, 309781 octets décompressés. L'inventaire est ici pour que vous sachiez ce que vous téléchargez avant de le télécharger.

Fichier Ce qu'il contient Taille
generer-corpus.py le générateur du corpus, graine fixe 20260817 13,4 Kio
corpus.json les 8 carnets, leur vérité terrain, et la raison d'être de chaque paire 40,6 Kio
degrader.py les quatre niveaux de présentation 3,6 Kio
conduire-test.py les appels aux modèles et la comparaison de partitions 8,1 Kio
resultats-bruts.json les 96 réponses, brutes, avec la consigne employée 213,3 Kio
analyser.py le calcul de chacun des chiffres de cette page 13,6 Kio
chiffres.json les chiffres calculés 10,0 Kio

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.

Rejouez-le

Le générateur emploie une graine fixe, donc le corpus que vous produisez est celui que nous avons employé.

bash
unzip 2026-08-contact-deduplication.zip
cd 2026-08-contact-deduplication
python3 generer-corpus.py --graine 20260817 --sortie corpus.json
python3 conduire-test.py --corpus corpus.json --sortie resultats-bruts.json \
    --niveaux 1 2 3 4 \
    --modeles openai/gpt-4o-mini google/gemini-2.5-flash-lite anthropic/claude-haiku-4.5
python3 analyser.py --corpus corpus.json --resultats resultats-bruts.json \
    --sortie chiffres.json

Chaque réponse brute est une entrée de resultats-bruts.json, avec les paires que le modèle a rendues, lesquelles étaient justes, lesquelles étaient fausses, et ce que sa note citait réellement :

json
{"modele": "openai/gpt-4o-mini", "carnet": "carnet-01", "niveau": 4,
 "json_valide": true, "fusions_justes": [[3, 8], [6, 9], [7, 11]],
 "fusions_manquees": [], "fusions_fausses": [[4, 5]],
 "pieges_tombes": [[4, 5]], "note_vide": false,
 "lignes_citees_par_la_note": [3, 4, 5, 6, 7, 8, 9, 11]}

Vérifiez ce que vous avez téléchargé avant de lui faire confiance :

bash
shasum -a 256 2026-08-contact-deduplication.zip
# 8c720688e23190aeeec361d6c25f6337c34c6d52f17e0891044d885bf055044e

Comment citer ce jeu de données

Copiez l'une des deux formes ci-dessous. La référence pointe vers cette page, qui est l'adresse stable de ce jeu de données ; l'archive est ce que cette adresse sert.

citation
Think AI First (2026). Dédoublonnage de contacts par trois modèles économiques, 96 réponses brutes.
Think AI First. Test conduit le 2026-08-17, publié le 2026-08-17.
https://think-ai-first.com/fr/donnees/dedoublonnage-contacts-2026-08. Sous licence CC BY 4.0.
bibtex
@dataset{thinkaifirst2026dedoublonnage,
  author    = {{Think AI First}},
  title     = {Dédoublonnage de contacts par trois modèles économiques, 96 réponses brutes},
  year      = {2026},
  publisher = {Think AI First},
  url       = {https://think-ai-first.com/fr/donnees/dedoublonnage-contacts-2026-08},
  note      = {Test conduit le 2026-08-17. Sous licence CC BY 4.0. SHA-256 de l'archive 8c720688e23190aeeec361d6c25f6337c34c6d52f17e0891044d885bf055044e}
}

Licence et réutilisation

Publié sous CC BY 4.0. Servez-vous-en, 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, 34,6 Kio, 7 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.