En construisant Attest, une IA d'apprentissage adaptatif pour la formation conformité, j'ai appris que le fossé n'est pas le modèle mais la porte déterministe qui ne certifie que la maîtrise prouvée.
Knowledge TracingMachine LearningCorporate Training

Mon IA de traçage des connaissances voulait certifier un apprenant qui avait truqué le cours. Le code que j'ai écrit a refusé.

Ashutosh SinghalAshutosh Singhal4 juillet 202613 min

Deux employés, deux coches vertes identiques, et l'une d'elles est un mensonge

La première fois que j'ai mis les deux dossiers côte à côte, les coches avaient l'air identiques, et c'était tout le problème. Une analyste BSA senior avec huit ans dans le poste et un directeur d'agence six mois après son transfert venaient tous deux de « terminer » la même recertification de quatre heures en lutte contre le blanchiment d'argent. Leur LMS rapportait la même chose pour chacun : une coche verte, « SCORM Completed », terminé. L'une pouvait mener une enquête sur une activité suspecte les yeux fermés. L'autre avait de véritables lacunes exactement dans les concepts qui intéressent un régulateur. Le système qui était censé les certifier pour le travail de conformité ne pouvait pas les distinguer, parce qu'il ne mesurait jamais ce qu'ils savaient. Il mesurait si la vidéo avait fini de se lire.

Cet écart n'est pas académique, et construire cette démo m'a forcé à garder les enjeux devant moi. Les entreprises américaines dépensent environ 102,8 milliards de dollars par an en formation d'entreprise, soit environ 874 dollars par apprenant (Training Magazine, 2025), et un quart complet des dirigeants L&D disent qu'ils ne peuvent pas mesurer si quoi que ce soit a fonctionné. Dans le travail réglementé, l'écart a un prix au registre public. TD Bank a absorbé une sanction LBA de 3,1 milliards de dollars liée en partie à un programme de formation inadéquat. À partir du 2 août 2026, l'article 4 de la loi européenne sur l'IA commence à faire appliquer la maîtrise de l'IA basée sur le rôle, avec des sanctions allant jusqu'à 35 millions d'euros ou 7 % du chiffre d'affaires mondial. Dans chacun de ces cas, le dossier « Terminé » ne vaut rien comme preuve, parce que l'achèvement n'a jamais été la compétence.

Le système ne mesurait pas s'ils avaient appris. Il mesurait si la vidéo avait fini de se lire.

J'ai construit une démo appelée Attest pour voir si je pouvais combler cet écart honnêtement. Vous pouvez la lancer sur veriprajna.com/fr/demos/attest-l-ia-d-apprentissage-adaptatif-qui-certifie-la-competence-pas-l-achevement. Cet essai porte sur la partie de sa construction qui m'a véritablement surpris, et ce n'était pas le modèle.

Tableau de bord Attest montrant une analyste BSA senior et un directeur d'agence qui ont tous deux terminé le même cours LBA avec la même coche SCORM Completed, au-dessus de la ligne « même cours, même coche, mais la même compétence ? »
Deux apprenants, le même cours, la même coche verte. Le LMS les lit comme identiques. Attest lit la maîtrise au niveau du concept en dessous et obtient une réponse différente.

Ce que je voulais réellement construire, c'était un modèle qui savait ce que chaque personne savait

J'ai commencé là où commence chaque argumentaire d'« apprentissage adaptatif », puis j'ai jeté l'essentiel. La plupart des produits qui se disent adaptatifs font du filtrage collaboratif en dessous : « les gens comme vous ont suivi le cours X ensuite. » C'est un moteur de recommandation vêtu d'une toge de diplôme. Il sait ce qu'ont fait des apprenants similaires. Il n'a aucune idée de ce que vous, précisément, comprenez. Cornerstone a livré un « Adaptive Learning Agent » en mars 2026 qui fonctionne encore ainsi. Je ne voulais pas un meilleur moteur de recommandation. Je voulais un modèle qui lit le flux d'interactions brutes d'une seule personne et infère, concept par concept, ce qu'elle a réellement maîtrisé.

C'est un vrai et vieux problème de recherche appelé traçage des connaissances, et sa version honnête est un transformer, pas une moyenne de quiz. J'ai entraîné un modèle de traçage des connaissances à auto-attention, SAKT, environ 119 809 paramètres, assez petit pour s'entraîner sur un CPU en quatre-vingt-dix secondes et se mettre en cache ensuite. Il rejoue la séquence d'interactions de chaque apprenant et produit une probabilité de maîtrise pour chacun des dix-huit concepts du cours. Sur notre banc d'essai synthétique de traçage des connaissances amorcé, il a atteint une AUC en hold-out de 0,8315, avec une précision au pas suivant de 0,771. Les données du banc d'essai sont générées par une famille de modèles complètement différente (Performance Factors Analysis, un modèle logistique classique), donc le transformer ne note pas ses propres hypothèses. Pour un contexte externe, les résultats SAKT publiés sur le jeu de données public ASSISTments se situent autour de 0,80 (Pandey et Karypis, 2019). Le mien était dans le même voisinage.

J'étais fier de ce chiffre. Je pensais que le chiffre était le produit. Il a suffi d'exactement un apprenant pour me montrer que ce n'était pas le cas.

Puis je lui ai présenté quelqu'un qui avait truqué tout le cours

L'apprenant qui a brisé ma confiance était le troisième de la cohorte, un associé des opérations qui avait utilisé un assistant IA pour répondre automatiquement à tout le module. Regardez ce que mon modèle a fait de lui. Concept après concept, l'inférence SAKT revenait élevée : 0,927 sur l'identification des signaux d'alerte SAR, 0,95 sur le blanchiment d'argent basé sur le commerce, 0,992 sur le risque de banques correspondantes, 0,994 sur les déclencheurs de diligence renforcée. Quasi parfait partout. Si j'avais fait confiance au modèle, j'aurais certifié les dix-huit concepts et remis à cette personne un dossier de conformité propre et signé.

Le problème, c'est que la maîtrise était fausse. Les réponses étaient rapides et parfaites sur dix-huit concepts sans rapport, une distribution des temps de réponse incompatible avec un véritable rappel. Un vrai expert est rapide sur certaines choses et lent sur d'autres. Ce motif était plat et impossiblement rapide partout, la signature d'un corrigé, pas d'une mémoire. Mon modèle soigné à AUC de 0,83 a regardé un corrigé et y a vu un élève modèle.

Mon modèle n'a pas seulement manqué la triche. Il était le plus confiant exactement là où il avait le plus tort.
Pipeline en direct Attest pour l'associé des opérations montrant des scores de maîtrise SAKT élevés, puis la porte de compétence signalant les preuves et le titre WITHHELD à zéro sur dix-huit certifiés
L'exécution en direct. SAKT infère une maîtrise élevée (0,927, 0,95, 0,992), puis la porte de compétence signale « précision quasi parfaite à des temps de réponse invraisemblablement rapides sur 18 concepts sans rapport », et le titre est retenu : 0 sur 18 certifiés.

C'était le moment où cet essai est devenu vrai pour moi. Un meilleur modèle ne m'aurait pas sauvé ici. Un transformer plus précis entraîné sur des données plus propres aurait regardé les mêmes réponses rapides et parfaites et aurait été encore plus certain que cette personne avait tout maîtrisé. L'échec n'était pas un manque de précision. C'était que j'avais laissé un modèle probabiliste prendre une décision qu'un modèle ne devrait jamais être autorisé à prendre seul.

Pourquoi ne pas simplement entraîner le modèle à le détecter ?

Mon premier instinct était le mauvais, et je veux être honnête sur la journée que j'y ai perdue. J'ai essayé de rendre le modèle lui-même robuste à la triche. Ajouter des caractéristiques de temps de réponse, l'entraîner à se méfier des séquences invraisemblablement rapides, apprendre au transformer à être suspicieux. C'est un plan séduisant parce qu'il garde tout à l'intérieur d'un seul système élégant, et j'aime les systèmes élégants. Cela ne fonctionne pas non plus, pour une raison que j'ai mis plus de temps à accepter qu'il n'aurait fallu. Tout ce que vous apprenez à un modèle à détecter, vous lui avez aussi appris à se tromper avec assurance dans les cas que vous n'avez pas anticipés. Tout le travail d'un modèle est de généraliser et de lisser. Une décision de gouvernance a besoin du contraire : elle doit être cassante exactement au bon endroit, et refuser.

Alors je me suis arrêté, et j'ai entièrement sorti la décision du modèle. Le modèle conseille. Du code déterministe pur décide. Après que l'inférence SAKT a tourné, un morceau de logique en Python pur que j'appelle la porte de compétence prend l'appel certifier-ou-non, et le modèle ne peut pas le contourner. La porte certifie un concept seulement si trois conditions sont toutes vraies à la fois : la maîtrise est égale ou supérieure à 0,747, il y a au moins trois interactions réelles de preuve derrière, et le motif de réponse n'est pas anormal. Échouer à l'une des trois et le concept n'est pas certifié. Il est marqué « NEEDS PROOF », et l'apprenant reçoit un défi de vérification au lieu d'une coche.

Quand la porte a regardé l'associé des opérations, elle a fait ce que mon modèle ne pouvait pas. Elle a signalé les preuves comme anormales, a refusé chaque concept, et a certifié zéro sur dix-huit. Temps de présence retenu, en attente de vérification.

Tableau détaillé de la porte de compétence pour l'apprenant qui a truqué avec l'IA, chacun des dix-huit concepts marqué NEEDS PROOF malgré des probabilités de maîtrise proches de 0,98 et 0,99, avec la base notant des preuves signalées comme incompatibles avec un véritable rappel
Le verdict de la porte, concept par concept. Chaque ligne montre une maîtrise P élevée (0,98, 0,99) et chaque ligne lit encore NEEDS PROOF, parce que les preuves ont été signalées. Le modèle a conseillé de certifier ; le code a refusé.

Je veux être prudent sur la façon dont je cadre cela, parce que le brief que je me suis écrit est prudent à ce sujet. Ce n'est pas un détecteur de tricheurs avec un taux de détection, et je ne le présente jamais comme tel. C'est un résultat de gouvernance sur un apprenant illustratif : des concepts retenus parce que les preuves n'étaient pas assez bonnes pour certifier. Le point n'est pas « je t'ai eu, tu as triché ». Le point, c'est que Attest ne certifie que ce qu'il peut prouver, et reste honnête sur le reste.

Les agents conseillent, le code décide, et cette ligne s'est révélée structurante

Je reviens sans cesse à cette division du travail parce que, au moment où j'ai fini, c'était toute l'architecture plutôt qu'un slogan. Il y a exactement deux endroits dans Attest où quelque chose d'intelligent et de probabiliste tourne, et tous les deux ne font que conseiller. Un agent LLM (construit sur Pydantic AI, par défaut claude-opus-4-8) fait le balisage des concepts, décomposant un cours plat « AML Training » en une taxonomie de dix-huit concepts : CDD, récit SAR, détection des transactions structurées, filtrage OFAC, et le reste. Cette étape de balisage est la chose que le terrain vous dira être la plus grande raison pour laquelle les projets d'apprentissage adaptatif meurent, et c'est véritablement difficile, mais c'est consultatif. Le modèle SAKT infère la maîtrise, également consultatif. Chaque décision qui compte vraiment, quel parcours un apprenant emprunte et ce qui est certifié, est prise par du code déterministe qu'aucun modèle ne peut contourner à force de persuasion.

Le séquenceur est l'autre moitié de ce code, et c'est là que se cache l'argent. Par concept : si la maîtrise est égale ou supérieure à 0,67, l'apprenant saute ou vérifie simplement ; entre 0,38 et 0,67, il reste dans la zone de flux ; en dessous de 0,38, il reçoit un étayage. Ces seuils ne sont pas des chiffres que j'ai choisis au feeling. Ils sont validés croisés contre la cohorte étiquetée, et le dépôt livre un test A/B en cinq plis montrant qu'ils battent le repli réglé à la main tout en laissant inchangé le sens de la décision. Faites tourner cette logique sur l'analyste senior et elle saute presque tout ce qu'elle sait déjà : seize sur dix-huit concepts certifiés, le temps de présence passant de 240 minutes à 47,3, une réduction de 80,3 %. Faites tourner le code identique sur le directeur d'agence qui a de véritables lacunes, et il refuse de lui accorder la même remise : dix sur dix-huit certifiés, seulement 38,9 % d'économie, parce qu'il a véritablement besoin de la formation.

Le même code remet à l'expert un cours de 47 minutes et au novice un vrai. Aucun des deux ne peut le contester.

Cette asymétrie est tout l'enjeu. Un système qui fait gagner le même temps à tout le monde n'est qu'un cours plus court avec un meilleur branding. Un système qui fait gagner du temps en stricte proportion de ce que chaque personne peut prouver savoir fait du traçage des connaissances, et il le fait dans un code que je peux lire ligne par ligne.

Ce que vous remettez à un régulateur à la place d'une coche

L'artefact dont je suis le plus fier est celui qu'une coche verte ne peut jamais produire. Quand la porte a fini, Attest exporte un certificat de compétence signé, et j'en garde deux vrais échantillons sur disque. Pour l'analyste senior, il liste les dix-huit concepts, chacun avec sa probabilité de maîtrise, le nombre d'interactions derrière cette estimation, le statut certifier-ou-NEEDS-PROOF, et la réglementation précise à laquelle il correspond (31 CFR 1020.220, FATF Rec. 12, 31 USC 5318, et le reste). Il enregistre le nom du modèle, sa version, et l'AUC du banc d'essai. Il porte un pied de page de limitation honnête notant que l'AUC mesure la prédiction de l'item suivant plutôt que la rétention à long terme, parce qu'une probabilité de maîtrise est une preuve, pas une garantie. Et le document entier est signé avec une signature HMAC-SHA256 afin qu'il ne puisse pas être discrètement modifié après coup.

Le certificat de compétence signé pour l'analyste BSA senior : 16 sur 18 concepts certifiés, réduction du temps de présence de 80,3 %, AUC en hold-out du modèle 0,8315, maîtrise par concept et correspondance réglementaire, avec deux concepts honnêtement marqués NEEDS PROOF
Le certificat pour l'analyste : 16 sur 18 certifiés, 80,3 % de temps de présence économisé, AUC 0,8315 déclarée en face, et deux concepts (signal d'alerte SAR à 0,73 et TBML à 0,59) honnêtement maintenus sous la ligne 0,747 et marqués NEEDS PROOF.

C'est la réponse durable à la vraie question de l'auditeur, qui n'est jamais « ont-ils terminé ? » C'est « prouvez quelles interactions ont étayé quelle affirmation de maîtrise. » Une coche ne peut pas y répondre. Un meilleur modèle de base non plus, aussi bon soit-il, parce que la précision n'est pas la provenance. Un modèle plus précis ne peut toujours pas montrer à un auditeur la piste de preuves derrière une décision qu'il a prise. Cette piste doit être construite comme un artefact, exprès, hors du modèle. C'est ce qu'est le certificat, et c'est la chose qui m'a fait cesser de penser au modèle comme au produit.

La précision n'est pas la provenance. Un meilleur modèle ne peut toujours pas prouver quelles interactions ont étayé quelle affirmation.

Vous pouvez inspecter tout cela dans la démo en cours sur veriprajna.com/fr/demos/attest-l-ia-d-apprentissage-adaptatif-qui-certifie-la-competence-pas-l-achevement, y compris les deux concepts que le certificat refuse de certifier pour l'analyste, où sa maîtrise se situe honnêtement sous la ligne 0,747.

La partie qui survit à un meilleur modèle

J'ai construit cela en m'attendant à ce que le modèle soit la partie difficile, et me tromper à ce sujet a changé ma façon de penser toute la catégorie. Le modèle était la partie traitable : quatre-vingt-dix secondes sur un CPU et une AUC respectable. La partie difficile, celle qui rend vraiment la sortie digne de confiance, c'était tout ce que j'ai mis autour du modèle pour l'empêcher de prendre des décisions qu'il n'avait pas à prendre : la porte déterministe, la règle de suffisance des preuves, le refus d'anomalie, la piste signée.

C'est aussi la partie qui ne vieillit pas. Quand je montre les chiffres de la cohorte (environ 51,9 % de réduction du temps de présence sur une cohorte de recertification simulée de 500 personnes, environ 77 872 dollars récupérés sur ce seul module, un chiffre annualisé près de 389 362 dollars que l'application étiquette comme projection à l'écran), le titre n'est délibérément pas l'AUC. L'AUC prouve seulement que c'est un vrai modèle de traçage des connaissances et pas un carnet de notes. Le titre, c'est le pourcentage de temps de présence économisé et le pourcentage de concepts auto-certifiés versus orientés vers la preuve, et ces deux-là tiennent peu importe la qualité du modèle sous-jacent. Un transformer plus intelligent l'année prochaine ne change pas le fait que la décision, et le reçu, vivent dans un code que vous pouvez auditer.

Et si vous préférez le voir plutôt que de me lire le décrire, voici le tout qui tourne de bout en bout.

Voici donc la question que je rumine, et celle que je poserais à quiconque construit dans cet espace. Si la sortie la plus importante de votre système est une décision sur laquelle un régulateur s'appuiera, voulez-vous que cette décision soit prise par le modèle, ou par quelque chose que le modèle n'est autorisé qu'à conseiller ? Je l'avais à l'envers pendant une journée. Puis un faux élève modèle, rapide et parfait sur dix-huit choses qu'il ne connaissait pas, est entré et m'a remis d'aplomb.

Recherche associée

Également publié sur

Développez votre IA en toute confiance.

Collaborez avec une équipe forte d'une solide expérience dans la conception de la prochaine génération d'IA d'entreprise. Nous vous aidons à concevoir, développer et déployer une stratégie d'IA digne de confiance.

Veriprajna société de conseil en Deep Tech est spécialisée dans la conception de systèmes d'IA critiques pour la sûreté destinés aux secteurs de la santé, de la finance et de la réglementation. Nos architectures sont validées au regard de protocoles établis et accompagnées d'une documentation de conformité complète.