
Je voulais construire un détecteur de deepfake pour les sinistres auto. Une photo réelle, non retouchée, l'a battu.
L'après-midi où une photo authentique a traversé mon détecteur sans encombre
J'ai d'abord construit le signal de forensique pixel, parce que c'était la partie qui ressemblait à de l'ingénierie vraie, et j'en étais discrètement fier. Il raisonne sur le bruit du capteur et les artefacts du domaine fréquentiel, les indices qu'un modèle de diffusion laisse derrière lui quand il hallucine un pare-chocs enfoncé. Dans la démo, ce signal est étiqueté simulé, un substitut pour un modèle d'artefacts génératifs appris que je n'ai pas encore entraîné, et je tiens à le dire clairement avant toute autre chose. Mais la logique autour de lui était la mienne, et elle fonctionnait. Je lui ai soumis un pare-chocs falsifié par diffusion et il s'est allumé exactement comme je le voulais.
Puis je lui ai soumis un sinistre mis en scène que j'avais étiqueté CLM-C-1044, une collision par l'arrière à Raleigh, et il a fait passer la photo sans réserve. Cohérent. Aucun artefact. Bruit du capteur présent. C'était la bonne réponse, et c'est précisément ce qui m'a troublé, parce que CLM-C est une fraude. La photo est une image authentique d'appareil photo. Dans le scénario, elle avait été prélevée sur un sinistre antérieur réglé et resoumise contre un nouveau sinistre. Mon meilleur signal n'était pas faible. Il était pointé sur la mauvaise question. Il demandait « cette image est-elle fausse », et pour une photo réelle recyclée la réponse honnête est non.
Une photo réelle recyclée passe tous les tests d'authenticité du monde, parce qu'elle est réelle.
C'est cet après-midi-là qui explique pourquoi ce que j'ai fini par construire n'est pas un détecteur du tout. Vous pouvez router vous-même les quatre mêmes sinistres dans la démo qui tourne. Chaque sinistre, image, assureur et dossier historique y est synthétique, donc rien n'y est un véritable assuré ni une véritable perte. Mais l'échec qu'elle dramatise n'est pas inventé. C'est l'échec dans lequel je suis tombé.
Pourquoi une photo réelle est-elle la fraude la plus difficile à attraper ?
Je reviens sans cesse à l'asymétrie qui a brisé ma première conception. Toute la course à l'armement contre la fraude à l'assurance est cadrée comme « construire un meilleur détecteur de deepfake », et je pense désormais que ce cadrage est le piège. Un seul classificateur d'authenticité échoue dans deux directions à la fois. Il devient obsolète dès que les générateurs d'images s'améliorent, et il est structurellement aveugle à la plus vieille fraude du manuel, une photo réelle recyclée d'un sinistre antérieur, parce que cette photo passe tous les tests d'authenticité en étant authentique.
La pression derrière tout cela est réelle même si mes sinistres sont synthétiques. 98 % des assureurs signalent une hausse des médias manipulés et seuls 32 % se disent « très confiants » pour détecter les deepfakes (Verisk, 2026 State of Insurance Fraud). 36 % des consommateurs dans la même enquête disent qu'ils modifieraient l'image d'un sinistre. Les tentatives de fraude par deepfake ont augmenté de 2 137 % en trois ans (Facia.ai), et un assureur automobile britannique a vu une hausse de 300 % des images de véhicules manipulées par IA en une seule année (The Guardian / Milliman). Le réflexe de l'industrie a été de greffer un détecteur tiers à la soumission. 65 % des assureurs en font désormais tourner un (Verisk, 2026). Ce réflexe attrape les faux évidents et laisse passer la photo réelle recyclée tout droit jusqu'au paiement.

La phrase que je n'arrêtais pas d'écrire sur le tableau blanc, c'était que l'authentification doit être une porte, pas un rapport. Un rapport est lu après que l'argent a bougé. Une porte s'exécute avant. Et une porte ne peut pas reposer sur un seul signal qu'une photo authentique bat par définition.
Les agents conseillent, le code décide
J'ai pris tôt une décision d'architecture que je défendrais devant un régulateur sans ciller : l'appel de routage n'appartient pas au modèle de langage. Une équipe forensique de quatre analystes plus un Challenger adversaire enquête sur un sinistre et produit des verdicts typés. Puis une porte de politique déterministe, du code ordinaire situé hors des agents, agrège ces verdicts et les signaux bruts contre les seuils de l'assureur et émet une seule décision de routage reproductible. AUTO-PROCEED, SIU-REFERRAL, HUMAN-REVIEW ou ABSTAIN. La frontière de confiance est le code, jamais une auto-déclaration de LLM.
Les deux rôles de raisonnement, Narrative-Consistency et le Challenger adversaire, passent par un adaptateur interchangeable de fournisseur qui utilise par défaut claude-opus-4-8, et sans clé API configurée toute la porte bascule sur un stub hors ligne déterministe et tourne quand même de bout en bout. J'ai aimé cette propriété de plus en plus à mesure que j'y réfléchissais, parce que la reproductibilité est ce dont un responsable de la conformité a réellement besoin. Posez deux fois la même question à la porte et elle répond de la même façon, et elle peut montrer son travail.
Les agents conseillent. Le code décide. Un régulateur peut auditer une règle. Personne ne peut auditer une vibe.
Ce n'est pas une préférence abstraite en 2026. Un Model Bulletin de la NAIC sur l'IA a été adopté par 24 États, l'AI Act du Colorado entre en vigueur le 30 juin 2026, et l'échéance à haut risque de l'EU AI Act tombe en août 2026 avec des pénalités pouvant atteindre 35 M€ ou 7 % du chiffre d'affaires mondial. Externaliser le modèle n'externalise pas la responsabilité. Si un assureur automatise une décision de sinistre, il doit pouvoir défendre cette décision, et « le modèle était confiant » n'est pas une défense.
Que signifie réellement « attrapé » ici ?
Quand j'ai enfin vu CLM-C se faire attraper, j'ai voulu savoir exactement quel signal avait fait le travail, parce que je ne faisais plus confiance à ma propre intuition à ce sujet. J'ai donc ouvert l'analyse de décision et l'ai lue ligne par ligne. L'analyste de provenance a validé le sinistre : GPS de capture à moins de 1,1 km du lieu de perte déclaré, date de capture cohérente avec la date de perte. L'analyste de forensique pixel, celui dont j'avais été si fier, l'a aussi validé, étiqueté simulé à l'écran, artifact_score 0.06, bruit du capteur présent. Les deux signaux « est-ce faux » l'ont fait passer, exactement comme ils le devaient, parce que la photo est réelle.

L'attrapage est venu des deux autres. L'analyste de réutilisation a confronté le hash perceptuel 256 bits de la photo à un index historique de sinistres et a trouvé un sinistre antérieur réglé, HIST-4019, à distance de Hamming 0, un jumeau pixel pour pixel déposé des mois plus tôt. L'analyste de cohérence narrative a lu le texte FNOL contre l'image et a signalé une contradiction : le récit décrit un accrochage latéral alors que la photo montre des dommages arrière. Puis le Challenger adversaire, un sceptique que j'instruis spécifiquement à réfuter chaque signalement et à tenter de disculper le demandeur, a testé les deux signalements et a rapporté que les deux tenaient. Ce n'est qu'alors que la porte de politique déterministe a routé le sinistre vers le SIU comme preuve recyclée.

Le détail sur lequel j'insiste auprès de tout le monde est celui-ci : l'attrapage ne dépend absolument pas du signal de forensique pixel simulé. Les deux agents construits pour répondre « est-ce faux » ont tous deux fait passer ce sinistre. Les deux qui ont demandé « avons-nous déjà vu exactement cette image, et le récit tient-il » sont ce qui l'a arrêté. C'est tout l'argument pour une équipe plutôt qu'un classificateur, et CLM-C en est la plus petite version vraie que j'ai pu construire.
Les signaux que j'ai construits pour repérer un faux l'ont tous deux fait passer. Ceux qui l'ont attrapé ont demandé si nous avions déjà payé une fois pour cette photo.
Le chiffre que je refuse de mettre en avant
J'ai un résultat de benchmark très facile à mal utiliser, et je préfère le désamorcer moi-même plutôt que de voir quelqu'un me le citer dépouillé de son périmètre. Sur un jeu synthétique étiqueté de 120 sinistres (47 propres, 25 faux-diffusion, 20 réels-recyclés, 13 ambigus, 15 métadonnées-usurpées), la porte route chaque sinistre correctement et affiche un bilan impeccable : 100 % de traitement direct sur les sinistres propres, 0 % de fausse accusation, 100 % des décisions portant un dossier d'audit vérifiable, rappel 1,0 contre les étiquettes. Ces chiffres sont réels, et ce sont aussi des propriétés d'un jeu construit dont les classes de fraude portent des signatures détectables par conception. Ce n'est pas une garantie en monde ouvert, et je le dis à chaque fois.
Le chiffre que je mets réellement en avant, c'est l'écart de couverture. Sur les 35 fraudes de ce jeu qui ne portent aucun artefact d'authenticité — les 20 sinistres réels-recyclés et les 15 à métadonnées usurpées —, une baseline d'authenticité à signal unique attrape 0 sur 35. La porte multi-signaux attrape 35 sur 35. Cet écart est le vrai titre, parce qu'il mesure ce que l'approche en place ne peut pas faire plutôt que de flatter ce que mon jeu construit rend facile.

Je connais la différence entre un chiffre impressionnant et un chiffre durable. L'affirmation durable, c'est la forme de l'écart, pas la taille du pourcentage.
La spoliation est désormais une ligne rouge à l'écran
Je ne m'attendais pas à ce que le volet chaîne de traçabilité devienne ce vers quoi les acheteurs se tournent, mais c'est arrivé, et je comprends pourquoi une fois que je l'ai vu échouer volontairement. Chaque décision lie le SHA-256 de l'image originale à un registre append-only à chaîne de hash. L'étape verify-chain recalcule chaque lien et re-hashe chaque original encore présent sur le disque. Si une « amélioration » GenAI ou un sur-échantillonnage écrase l'image originale du sinistre, l'assureur se retrouve soudain exposé à la spoliation, la destruction de preuves, dans tout contentieux qui suit.

J'ai cliqué sur « altérer l'original sélectionné », lancé verify, et une ligne est passée au rouge : Altéré, spoliation détectée. C'est toute la valeur rendue littérale. La chaîne de traçabilité cesse d'être une phrase dans un deck de conformité et devient un état à l'écran qu'un pipeline automatisé peut faire respecter et qu'un avocat peut lire. L'original n'est jamais muté en fonctionnement normal, seulement des artefacts sidecar, donc le jour où quelqu'un l'édite, le registre le sait déjà.
Ce que je ne sais toujours pas
Je ne pense pas que cette porte soit terminée, et la capacité dont je suis le moins certain est aussi celle dont je suis le plus fier : le chemin d'abstention. Quand un sinistre est véritablement ambigu, basse résolution, métadonnées partielles, rien de concluant dans un sens ou dans l'autre, le CLM-D-1045 de la démo route vers ABSTAIN puis vers HUMAN-REVIEW au lieu de forcer un verdict. Il s'abstient plutôt que de bluffer un passage ou une accusation, et le Challenger adversaire existe précisément pour qu'un demandeur légitime ne soit pas jeté au SIU sur un signal mince. Sur le jeu synthétique, cette discipline est ce qui maintient la fausse accusation à 0 %. Dans le monde réel, je ne sais pas encore où doit se situer le seuil d'abstention, et prétendre le savoir serait sa propre forme de fraude.
Il y a beaucoup de choses que j'ai délibérément laissées en stub. Les connecteurs Guidewire ClaimCenter et Duck Creek, le SDK mobile de capture guidée, un vrai vérificateur C2PA, et une vraie base d'empreintes caméra PRNU sont tous reportés. Le score de gravité Tractable ou CCC de l'assureur est accepté comme champ d'entrée, pas calculé ici, parce que cette porte s'exécute avant l'évaluation des dommages et authentifie ce que ces systèmes évaluent ensuite. Elle ne les remplace pas, et je ne prétendrais pas le contraire.
Les quatre sinistres mis en scène sont tous là dans la démo si vous voulez les faire passer dans le pipeline et lire les reçus vous-même. Ce que je veux que vous emportiez n'est pas la démo pour autant. C'est la question qui a réorganisé ma propre pensée cet après-midi-là à Raleigh, devant une photo réelle que mon meilleur détecteur venait d'approuver.
Et si vous préférez le regarder plutôt que de lire ma description, voici toute la porte qui tourne de bout en bout.
Alors voici celle que je continue de poser aux responsables des sinistres et du SIU : si la fraude par image la plus coûteuse à laquelle vous faites face est une photo authentique pour laquelle vous avez déjà payé un sinistre une fois, que détecte réellement votre détecteur ?


