
Mon IA de rédaction a inventé une citation que la maire n'a jamais dite. L'attraper avant les lecteurs, c'est tout le produit.
La première fois que j'ai vu mon propre répondeur mettre des mots dans la bouche d'un maire, j'ai ressenti ce froid particulier qui vient quand on réalise qu'on a construit la chose dont on avait peur.
Je lui avais posé une question de lecteur toute simple : Que promettait la maire Reyes aux promoteurs concernant la parcelle du front de rivière ? L'archive qu'il lisait, une série synthétique de 13 ans d'un journal fictif que j'appelle The Riverbend Ledger, n'enregistre aucune promesse de ce genre. Un article note même que la parcelle « n'était pas à l'ordre du jour. » Rien de tout cela n'a arrêté le modèle de langage. Il a renvoyé une phrase fluide et assurée, avec un guillemet dedans : « Nous nous engageons à faire avancer la parcelle du front de rivière pour les promoteurs. » La maire Elena Reyes, une personne qui n'existe pas, venait d'être amenée à promettre quelque chose qu'elle n'avait jamais dit, dans une prose assez propre pour être publiée sous un titre de presse. Je veux le voir, décider, et retenir ce qui échoue, sur veriprajna.com/fr/demos/ia-conversationnelle-pour-les-editeurs-the-standards-desk.
Cet essai porte sur l'hypothèse avec laquelle j'ai commencé, que partagent encore la plupart des gens qui construisent de l'IA pour les rédactions en ce moment, et sur la manière lente dont la construction de cette démo l'a démontée. L'hypothèse, c'est que le problème de fabrication se résout avec un meilleur modèle. Je ne le crois plus, et ce n'est pas parce que je doute que les modèles continueront de s'améliorer.
J'avais un vrai échec devant moi avant de commencer, et il n'était pas synthétique. Fin 2025, le Washington Post a déployé avec « Ask The Post AI » un podcast généré par l'IA qui inventait des citations, attribuait mal des sources et insérait des commentaires comme s'il s'agissait de la position éditoriale du journal. Cela a émergé comme ces choses émergent, quand le Slack du rédacteur en chef des standards a fuité (Semafor, 11 déc. 2025). L'échec technique sous-jacent à l'embarras était petit et précis : une étape de vérification des citations manquante. Je ne voulais pas construire un animateur de podcast plus intelligent. Je voulais construire l'étape qui manquait.
La semaine où j'ai essayé d'empêcher le modèle de mentir
J'ai passé environ une semaine à essayer de rendre le répondeur lui-même digne de confiance, et je veux être honnête : c'était la mauvaise semaine.
Le raisonnement me semblait étanche à l'époque. Si le modèle fabrique une citation, resserrez le modèle. De meilleurs prompts d'ancrage, une température plus basse, des instructions plus sévères pour n'utiliser que les passages récupérés, une passe d'auto-vérification où le modèle relit sa propre réponse et note si chaque phrase est étayée. J'ai tout construit. Cela a aidé à la marge et a échoué au centre, parce que l'échec qui m'importait n'était pas le modèle négligent. C'était le modèle confiant et fluide dans l'erreur, dans l'exact registre auquel un pupitre de rédaction fait confiance. La citation de Reyes ne se lisait pas comme une hallucination. Elle se lisait comme du reportage.
La passe d'auto-vérification a été le moment où l'approche est morte pour moi. Je demandais au même modèle qui avait écrit la citation fabriquée de me dire si la citation fabriquée était réelle, et une fraction significative du temps il disait oui, ça tient. Bien sûr que oui. Il n'avait aucun accès indépendant au texte de l'archive à ce moment-là. Il avait sa propre confiance, qui est la seule chose dont on ne peut pas se servir pour s'auditer soi-même.
Je demandais à un système probabiliste de certifier la sortie d'un système probabiliste, et j'appelais le résultat vérification. Ce n'est pas de la vérification. Ce sont deux conjectures qui sont d'accord.
Et les enjeux ne sont pas académiques, parce qu'un éditeur n'a pas l'échappatoire habituelle d'Internet. Il n'y a pas de bouclier Section 230 pour le contenu que votre propre système génère à partir de votre propre archive. Dès l'instant où vous répondez à la question d'un lecteur sous votre nom, vous êtes propriétaire de la réponse, citation comprise. Un plaignant en diffamation ne demandera pas à quel point votre modèle était confiant. Il demandera si la citation était réelle et si l'archive le disait réellement. Ce sont deux questions, et je les avais traitées comme un seul problème à faire résoudre par le modèle.
La raison pour laquelle tout cela compte commercialement, c'est que les éditeurs y sont poussés qu'ils le veuillent ou non. Les AI Overviews apparaissent désormais sur 48 % des recherches Google (theStacc / Search Engine Land, mars 2026). Le trafic de recherche des éditeurs a chuté de 33 % d'une année sur l'autre jusqu'en novembre 2025, avec un nouveau déclin d'environ 43 % attendu d'ici 2029 (Reuters Institute Trends 2026). Lorsqu'un AI Overview apparaissait au-dessus du lien, le Daily Mail a vu son taux de clics sur ordinateur chuter de 89 %. Le trafic qui venait autrefois de lecteurs trouvant votre archive disparaît, donc la pression pour laisser les lecteurs interroger votre archive directement est énorme. Le piège, c'est que la première chose honnête qui arrive quand on le fait, c'est la citation de Reyes.
La réponse qu'un simple widget ne peut pas écrire
Je veux d'abord être juste envers l'ambition, parce que la raison pour laquelle une rédaction veut cela est réelle, et une boîte de recherche ne peut pas le faire.
Demandez à The Standards Desk la version dure et longitudinale d'une question de lecteur, Comment la position de la maire Reyes sur l'ordonnance de densité du centre-ville a-t-elle évolué de 2014 à 2025 ?, et un planificateur temporel découpe d'abord la décennie en fenêtres (2014-2017, 2018-2021, 2022-2025), récupère dans chacune, et assemble un récit chronologique. Il marche de 2014, « Je ne troquerai pas le caractère de Riverbend contre des tours, » à 2025, « Je le referais, » avec un marqueur en ligne [S#] sur chaque clause qui, au survol, mène au vrai passage d'archive derrière. C'est la réponse qu'un widget RAG vectoriel basique ne peut pas produire, parce que ce n'est pas une seule recherche. C'est une synthèse planifiée à travers le temps, ancrée phrase par phrase.

Cette bannière verte est la partie séduisante, et c'est là que j'ai failli perdre le fil une deuxième fois. Quand le pipeline fonctionne, il fonctionne magnifiquement, et une belle démo donne envie de faire confiance au moteur qui l'a produite. Mais la bannière verte n'est pas le produit. Ce qui décide si une bannière a le droit d'être verte, c'est le produit. La réponse longitudinale passe parce que chaque affirmation était ancrée et chaque citation vérifiée mot pour mot. La réponse sur le front de rivière, écrite par le même moteur quelques minutes plus tôt, n'est pas passée. La différence entre elles n'est pas la qualité du modèle. C'est une porte.
La citation que la maire Reyes n'a jamais donnée
Je reviens sans cesse à la réponse sur le front de rivière parce que c'est celle qui m'a appris ce que je construisais réellement.
Voici ce que la porte en fait, et rien de tout cela n'est le modèle qui se note lui-même. La réponse est décomposée en affirmations atomiques. Chaque affirmation est ancrée contre un passage récupéré spécifique. Chaque chaîne citée est vérifiée, caractère par caractère, contre le texte source qu'elle cite. Sur la réponse du front de rivière, la couverture est revenue à 50 %, une affirmation sur deux étayée, et le passage cité, cette ligne d'engagement à faire avancer la parcelle, n'a été trouvé mot pour mot dans aucune source citée. Une porte de politique déterministe a lu ces faits et a acheminé toute la réponse vers HELD FOR STANDARDS-DESK REVIEW. Elle n'a jamais été montrée à un lecteur.

Le langage de la bannière compte pour moi plus qu'il ne le devrait probablement. Il ne dit pas « faible confiance » ou « veuillez réviser. » Il dit retenue, et non montrée aux lecteurs, et elle le pense, parce que le widget lecteur ne reçoit littéralement jamais le brouillon retenu. C'est toute la différence entre la fabrication de Reyes et celle de Ask The Post AI. Le moteur du Post a produit une fausse citation et un lecteur l'a entendue. Le mien a produit une citation tout aussi fausse et un lecteur ne l'entendra jamais, parce que la fabrication et la publication sont deux événements séparés et que j'ai mis un mur entre eux.

Le répondeur a confabulé exactement comme le ferait un widget sans garde-fou. La seule chose qui a changé le résultat était un contrôle qui ne fait pas confiance au répondeur.
J'ai cessé d'essayer d'empêcher le modèle de confabuler à peu près à ce moment-là. Il peut, il l'a fait, il le fera. La valeur n'a jamais été un modèle qui ne ment jamais. C'était d'attraper le mensonge avant qu'un lecteur ne le voie. C'est une affirmation plus petite et plus honnête que « notre IA n'hallucine pas, » et c'est la seule que je sois prêt à défendre, parce que j'ai vu le modèle échouer et j'ai vu la porte retenir dans la même session.
Pourquoi la sûreté de publication ne peut pas vivre à l'intérieur du modèle
J'ai pris tôt une décision d'architecture et c'est celle que je défendrais le plus fermement : la part qui décide de ce qui est sûr à publier vit entièrement en dehors des modèles de langage.
Il y a trois agents dans le pipeline, et ils sont réellement utiles. Un planificateur temporel, un répondeur, un auditeur de provenance, interchangeables selon le fournisseur et par défaut sur claude-opus-4-8. Ils conseillent. Mais la règle de citation mot pour mot, une correspondance exacte de chaînes de chaque passage cité contre sa source citée, et la porte de politique qui lit la couverture et achemine la réponse, sont du Python simple. Pas de prompt, pas de température, pas d'auto-rapport du modèle. Je me le répète constamment en construisant : les agents conseillent, le code décide. Si la raison pour laquelle vous avez besoin d'un contrôle est que la sortie du modèle ne peut pas être crue au pied de la lettre, le contrôle ne peut pas être une autre chose que ce que le modèle dit de lui-même.
C'est pourquoi la règle mot pour mot est déterministe à dessein. « Cette chaîne citée exacte est-elle apparue dans le passage qu'elle cite » n'est pas un jugement. C'est de l'arithmétique contre le texte source, et elle renvoie le même verdict à chaque exécution. Cette reproductibilité est ce qui rend le reçu d'audit digne de quelque chose. Un clic exporte un reçu JSON par réponse : la requête, les sous-questions décomposées, les sources récupérées avec dates et ids, la réponse publiée, un verdict par affirmation avec le passage de preuve, un résultat mot pour mot par citation, la décision de la porte et sa raison, le moteur et le modèle, et un horodatage UTC. Vous pouvez le relancer et obtenir le reçu identique. Un juge fondé sur un modèle, aussi bon soit-il, ne peut pas vous promettre cela, et j'ai vécu la version où la même entrée me donnait trois réponses différentes.
Je veux être précis sur ce qui est réel ici et ce qui est mis en scène, parce que l'honnêteté est la marque. Le tout tourne hors ligne via un stub déterministe ou un pont Claude local sans clé, donc la démo est reproductible. Certaines parties dures sont délibérément différées et je ne ferai pas semblant du contraire : la résolution d'entités en production est une fixture pré-résolue, le graphe de connaissances temporel est démontré via des balises de date et d'entité plus le planificateur plutôt qu'un Neo4j live, la sync CMS est une fixture Arc XP, et le kill switch s'appuie sur un drapeau local. Ce qui est réel, c'est le mécanisme : l'ancrage, la vérification mot pour mot, la porte déterministe, et le reçu.
Ce que « 10 sur 10 » a le droit de signifier
Je m'impose une règle sur les chiffres, parce que j'ai nommé l'entreprise Veriprajna, vraie sagesse, et un nom comme celui-là est une invitation permanente à trop revendiquer.
Voici donc exactement ce que dit le benchmark et exactement ce qu'il ne dit pas. Sur un jeu d'éval étiqueté de 10 requêtes, chaque requête atterrit dans sa catégorie de porte attendue, 10 sur 10. Six de ces dix ont été publiées sans intervention humaine : trois auto-autorisées proprement, trois publiées après qu'une phrase non étayée ait été élaguée et que le reste ait passé. Deux ont été acheminées vers la révision du standards desk, les deux cas de piège à citation, la soupape de sécurité fonctionnant visiblement. Deux étaient d'honnêtes abstentions « hors couverture », où la récupération n'a rien passé au-dessus du plancher de score et où le système a refusé de deviner plutôt que de confabuler un chiffre. Treize tests unitaires passent. Le corpus compte 200 articles synthétiques de 2014 à 2025.
Ce sont les chiffres de la démo construite sur dix cas réellement durs plantés à travers quatre catégories. Ils ne constituent pas une garantie de précision en monde ouvert, et je ne les gonflerai pas pour en faire une. Le split 60/20/20 est le résultat de ce jeu d'éval, pas une promesse sur votre archive. La seule affirmation que je poserai platement est celle déterministe, parce que c'est un invariant testé unitairement plutôt qu'un espoir : aucune réponse avec une citation invérifiable ou une affirmation non étayée n'est jamais auto-autorisée. Contre une baseline RAG vectorielle basique sans garde, le genre de widget de chat SaaS qu'un éditeur achèterait réellement, il y avait cinq réponses qu'elle aurait publiées avec un passage fabriqué ou une affirmation non étayée que cette porte a retenues. Cinq est un petit nombre. Cinq mauvaises citations sous votre titre de presse, non.
Une réponse confiante est bon marché. Une réponse prouvable, avec un reçu que vous pouvez relancer et remettre à un avocat, c'est exactement ce pour quoi vous payez réellement.
Retenir la réponse, n'est-ce pas juste la machine qui esquive le choix difficile ?
J'entends une version de cette question dans presque chaque conversation, et ma réponse est devenue plus courte et plus certaine.
Non. Retenir la réponse est le choix difficile, fait honnêtement, et livrer une conjecture confiante est l'esquive. L'alternative séduisante est un widget qui renvoie toujours une réponse nette et publiable à chaque lecteur, parce que cela démontre magnifiquement et ne rend jamais la journée d'un rédacteur des standards plus dure. C'est aussi l'Ask The Post AI architecture, et elle échoue exactement de la façon dont celle-là a échoué. Un système qui ne peut pas dire « je ne peux pas vérifier ceci, retenez-le » est un système qui fabrique une certitude qu'il n'a pas. Et une rédaction, de toutes les institutions, sait que la volonté de ne pas publier quelque chose est tout le métier d'un standards desk.

C'est pourquoi je pense que ce travail survit à la génération actuelle de modèles. Accordez tout ce que promettent les optimistes : un plus grand modèle, un entraînement plus propre, un taux de fabrication plus bas. Un modèle parfait qui n'invente jamais une citation attribuera quand même joyeusement une vraie à la mauvaise personne ou à la mauvaise année, parce que depuis l'intérieur du brouillon cette phrase se lit comme vraie et exactement ce qui a été demandé. « Sûr à publier sous votre titre de presse » n'est pas une capacité que l'on attend que le modèle grandisse pour acquérir. C'est une propriété de gouvernance du système que vous construisez autour de lui, et il n'y a pas de bouclier Section 230 qui vous rende le jour où vous publiez la citation de Reyes. Le corollaire inconfortable sur lequel je retombe sans cesse, c'est que l'IA la plus précieuse qu'une rédaction puisse faire tourner est la part qui est prête à dire je ne peux pas vérifier ceci, retenez-le pour le standards desk. Si vous voulez le regarder décider, retenir la fabrication, et exporter le reçu, c'est ici : veriprajna.com/fr/demos/ia-conversationnelle-pour-les-editeurs-the-standards-desk.
Et si vous préférez le regarder plutôt que de lire ma description, voici le tout qui tourne de bout en bout.
Alors la question que je laisserais à un éditeur est celle qui a réorganisé toute ma construction. Quand votre archive répond à un lecteur en votre nom, et que la réponse est fluide et propre et cite quelqu'un, avez-vous une couche prête à prouver que la citation était réelle avant que le lecteur ne la voie jamais ? Parce que le modèle sonnera toujours sûr. Le reçu est la seule chose qui l'est.


