Skip to main content
IA dans l'éducation19 min de lecture

Un tuteur qui se souvient : une mémoire de sujet qui survit à la fenêtre de contexte

Un élève parle à un même sujet pendant des mois. Mettre davantage de tout cela dans le prompt ne tient pas à l'échelle et ne rend pas le tuteur honnête. Comment nous avons construit une mémoire qui classe le passé par pertinence, une carte conceptuelle du contenu, et des croyances sur l'élève qui portent leurs propres preuves : douze schémas, des exemples réels, et ce que rejouer des historiques réels nous a appris.

iTutor Team18 septembre 2026

Un élève parle à un même sujet pendant des mois : des milliers de messages, des dizaines de fichiers, des centaines de petits contrôles. Mettre davantage de tout cela dans le prompt ne tient pas à l'échelle et ne rend pas le tuteur honnête. Voici comment nous avons doté chaque sujet d'une mémoire qui classe le passé par pertinence, d'une carte conceptuelle du contenu, et de croyances sur l'élève qui portent leurs propres preuves, ainsi que ce que des historiques réels nous ont appris quand nous les avons rejoués. Aucun fournisseur n'est nommé, volontairement ; la méthode n'en dépend pas. Chaque chiffre ici a été mesuré, non estimé.

Ce que "se souvenir" doit vouloir dire

La réponse naïve à "le tuteur oublie" est une fenêtre plus large : garder davantage de la conversation dans le prompt, résumer le reste. Cela échoue de trois façons distinctes, et chacune est un problème produit avant d'être un problème technique.

  • Le temps. Un élève qui demande en septembre quelque chose vu en juillet a besoin de la séance de juillet, pas des quarante derniers messages. Un résumé de "ce qui s'est passé jusqu'ici" devient plus vague à mesure qu'il grossit ; le détail pertinent est exactement ce qu'un résumé abandonne.
  • Les fichiers. Un sujet contient des dizaines de documents. La recherche documentaire récupère les huit passages les plus proches de la question, ce qui convient pour des faits et ne sert à rien pour "comment ce chapitre se rattache-t-il à celui-là", la structure du contenu n'est jamais dans un seul passage.
  • L'honnêteté. Un tuteur qui affirme "vous comprenez l'osmose" doit pouvoir dire pourquoi : quel contrôle, quel jour, ce que l'élève a répondu. Un chiffre sans preuve est une estimation avec une virgule.

Nous avons donc posé trois promesses avant d'écrire une ligne : chaque tour devient un épisode durable et le rappel classe tout l'historique par pertinence, non par date ; les concepts sont extraits une fois par fichier et fusionnés dans une seule carte par sujet ; et la maîtrise n'est nourrie que par la preuve, un contrôle réussi, un quiz passé, une partie jouée, chaque croyance conservant sa preuve et son histoire. Et une quatrième promesse, plus discrète : quand le tuteur n'a aucun souvenir de quelque chose, il le dit, tout simplement.

La forme du système

Trois entrepôts, une lecture budgétée par tour, une boucle chaque nuit. Les fichiers alimentent la carte ; la conversation alimente le journal d'épisodes ; les contrôles alimentent les croyances. Chaque tour de conversation lit une tranche réduite et classée des trois et la place dans le prompt à l'intérieur d'un budget de jetons fixe. Rien dans le chemin de lecture n'appelle un modèle génératif. Le seul modèle qu'il appelle est l'embedding, une fois par tour, partagé par le routage et le rappel ; le seul passage génératif hors conversation est celui qui lit un nouveau fichier dans la carte.

Fich. lu une fois/fichier Conversation question, réponse Contr. verdict sur réponse Carte nœuds, liens, maturité Épisodes ajout seul, chaîné par hash Croyances remplacée, jamais éditée extr. + fusion deux épisodes fondu en croyance Un tour, ~2,000 jetons 1 router la question → concepts 2 brief : carte, focus d'abord 3 croyances sur ces concepts 4 épisodes qui ressemblent Emplacement mémoire avant les passages du contenu La nuit · condenser le jour · dégrader les croyances · calibrer · vérifier citations · rafraîchir l'auto-modèle retour dans les stocks
Figure 1. Trois entrepôts alimentés par trois types d'événements, une lecture budgétée par tour, une boucle chaque nuit. Le chemin de lecture n'est que recherches indexées, arithmétique et un embedding de la question ; le seul appel génératif hors conversation est celui qui lit un nouveau fichier.

Épisodes : un journal en ajout seul, chaîné par hash

Chaque événement devient un épisode : une question, une réponse, un contrôle avec son verdict, un résultat de quiz, un fichier qui arrive, quelque chose que l'élève a explicitement enseigné au tuteur. Un épisode porte un résumé d'une ligne, le texte complet, les concepts qu'il a touchés, un score de saillance fixé au moment de l'écriture, et sa preuve: pour une réponse, le fichier et la page cités, marqués de l'empreinte du fichier à cet instant. Les épisodes ne sont jamais modifiés. Chacun conserve le hash du précédent dans la même chaîne, si bien que le journal est recalculable et que toute altération, ou toute réécriture silencieuse par une migration bien intentionnée, se voit comme une rupture. C'est une preuve de falsification, pas une protection contre la falsification : une réécriture est détectée, jamais empêchée, et seulement tant que la chaîne, ou un point de contrôle de celle-ci, est conservé.

question · 12 juil "Cellules : on revoit ?" préc ∅ · hash 7e1c… rép. · 12 juil cite Ch.2 p.4 · empr. a91f préc 7e1c… · hash 03bd… ctr. · 12 juil juste · prévu 0.45 préc 03bd… · hash c4a0… ens. · 18 sept "on l'appelle la centrale" préc c4a0… · hash 9f27… hash = sha256(hash précédent · chaîne · horodatage · type · résumé), la chaîne suit l'ordre d'insertion, même quand un épisode rejoué garde sa date de juillet
Figure 2. La chaîne d'épisodes pour un élève sur un sujet. Un rejeu d'un ancien historique garde la date d'origine de chaque épisode dans l'historique, tandis que la chaîne elle-même suit l'ordre d'écriture des lignes ; les deux sont recalculables.

La saillance est fixée par ce qu'est un épisode, pas par une humeur : un contrôle raté (0.7) compte plus qu'un contrôle réussi (0.6), et ce que l'élève a enseigné au tuteur (0.85) compte le plus, car c'est le seul souvenir qu'une personne a explicitement demandé de garder. Une question reste à un modeste 0.35, la propre question d'un élève est un rappel juste et un rappel inutile, ce qui finira par compter pour le chemin "à quoi cela me fait-il penser" plus loin.

Rappel : la pertinence doit primer sur la récence

Le rappel est associatif, pas chronologique. Les candidats sont réunis depuis plusieurs bassins, chacun couvrant l'ensemble de l'historique, et notés seulement après : les cinq cents plus récents, chaque épisode contenant un mot distinctif de la question, chaque épisode touchant les concepts vers lesquels la question a été routée, et les voisins sémantiques d'un index vectoriel. Élargir d'abord et découper ensuite est la décision de conception la plus importante du module, la première version découpait d'abord ("les 500 plus récents") et ne pouvait rappeler un souvenir de mars parfaitement pertinent à quelque score que ce soit, car il était coupé avant d'être noté.

−0.1800.250.500.75 pertinence : 0.55, cosinus quand un embedding existe, chevauchement lexical sinon Pertin.0.55 concepts communs : +0.20 quand l'épisode touche un concept vers lequel la question a été routée concepts communs+0.20 récence : 0.15 avec décroissance exponentielle, constante de temps 30 jours récence (τ = 30 j)0.15 saillance : 0.12, fixée par le type de l'épisode au moment de l'écriture saillan.0.12 fréquence : 0.08, à quelle fréquence les concepts de l'épisode reviennent dans l'ensemble de candidats fréquence0.08 auto-écho : −0.18 pour les propres réponses du tuteur, −0.08 quand cette réponse citait un fichier auto-écho (réponses tuteur) −0.18 · −0.08 si fichier cité la partie pleine vaut toujours ; la partie claire s'ajoute si la réponse ne citait aucun fichier
Figure 3. Les poids du score. La pertinence domine ; le reste module. Les propres réponses passées du tuteur sont atténuées pour qu'il raisonne à partir de ce qui s'est passé, non de ce qu'il a dit, moins atténuées quand la réponse était ancrée dans le fichier de l'élève, car cette réponse est alors la trace de ce qui a été enseigné.

Les poids seuls ne suffisent pas. Quand la question porte sur quelque chose et que quoi que ce soit correspond, les épisodes qui ne correspondent à rien sont écartés plutôt que classés, une note récente hors sujet obtient 0.15 × 1.0 sur la seule récence, tandis qu'une concordance exacte vieille de 200 jours obtient 0.55 × 0.156, et aucune pondération qui laisse un non-correspondant dépasser un correspondant n'est juste, quel que soit le réglage. La récence tranche les égalités, elle ne classe pas. Deux questions qu'un lecteur devrait se poser à propos de ces chiffres : d'où ils viennent, et si nous les avons ajustés. Ils ont été fixés à la main, repris d'une mémoire antérieure que nous avions construite pour un autre produit, et ils n'ont été calés sur aucune des données de cet article. Rien ci-dessous n'a été balayé ni ajusté ; le seul changement que nous avons apporté au calcul du score provient d'un échec que nous pouvions nommer, pas d'une recherche systématique, et il a porté sur le filtre plutôt que sur une pondération. Le filtre a deux exemptions : aucune requête du tout (alors la récence est tout ce qu'il reste), et rien qui corresponde (alors le passé récent est la meilleure offre honnête).

00.250.50 note récente hors sujet : pertinence 0 · récence 1.0 → score 0.15 note fraîche, hors sujet 0.15 (pure récence) concordance exacte vieille de 200 jours : pertinence 0.53 · récence 0.001 → score 0.29 concordance exacte, 200 j 0.29 (pertinence) le filtre supprime la première ligne dès que la seconde existe score = 0.55·pertinence + 0.15·récence + 0.08·fréquence + 0.12·saillance + 0.20·concept − écho
Figure 4. Pourquoi la pertinence filtre plutôt que de simplement contribuer. Le bloc où atterrit un épisode rappelé est intitulé "ce dont vous vous souvenez" ; un épisode sans rapport y serait lu comme un contexte pertinent.

Deux choses que des historiques réels ont ajoutées

Les répétitions fusionnent. Sur un sujet réel, 161 questions d'élève se ramenaient à 56 phrases distinctes, "qu'est-ce qu'une cellule" posée neuf fois en trois mois. Neuf copies ne font qu'un souvenir, retenu neuf fois, si bien que le rappel fusionne les épisodes identiques et indique combien de fois le survivant en tient lieu. Le temps est un filtre, pas un indice. "Qu'avons-nous vu en juillet ?" s'analyse comme une fenêtre, et le rappel s'y exécute d'abord ; si la fenêtre est vide, le bloc le dit explicitement (voir § honnêteté). Les noms de mois fonctionnent dans les langues que nos élèves écrivent, tout comme "la semaine dernière" et "hier".

La carte conceptuelle

Les passages répondent à "que dit le fichier ici" ; une carte répond à "de quoi ce sujet est-il fait, et qu'est-ce qui s'appuie sur quoi". Chaque fichier est lu une seule fois par un passage modèle qui renvoie une liste bornée de concepts, nom, résumé en une phrase, une courte définition, les concepts sur lesquels il s'appuie depuis sa propre liste, les pages où le fichier l'explique. Les titres de section ("Introduction", "Erreurs fréquentes") sont rejetés par un validateur ; un nom qui est en réalité un titre de chapitre est le mobilier du fichier, pas les idées du sujet.

Les concepts fusionnent entre fichiers par une clé canonique (un nom normalisé, sensible à l'écriture) et par une similarité d'embedding supérieure à 0.86. La provenance s'accumule : un chapitre qui ré-explique l'osmose s'ajoute à un même nœud plutôt que d'en créer un second, et chaque fichier ayant contribué reste listé avec ses pages. Un prérequis que le fichier suppose sans jamais l'expliquer ne devient un nœud que si deux concepts le supposent, alors l'écart est réel et mérite d'être montré ; un cas isolé est noté sur le concept comme "supposé" et n'est dessiné nulle part. Le premier document de politique interne que nous avons lu a transformé 11 concepts en 34 nœuds avant que cette règle n'existe.

Cellules eucar. Membrane cell. Cytopl.plus central Paroi Noyau Chloroplastes Mitochondriesfaible · à revoir Ribosomes Endosymbiose basé sur relié compris en cours faible aucune preuve à revoir + grand = + central
Figure 5. Un extrait d'une carte réelle (biologie cellulaire, un fichier, 16 concepts). Les flèches partent d'un prérequis vers ce qui s'appuie sur lui ; la mise en page place les prérequis à gauche. Le niveau de l'élève est peint sur les nœuds atteints par les contrôles.

Trois chiffres dérivés sortent de la carte. La centralité est un PageRank pondéré sur les liens (un prérequis sur lequel tout s'appuie est un pivot). La maturité par concept suit quatre paliers, 0.35 simplement nommé, 0.60 expliqué par un fichier, 0.85 confirmé par un contrôle réussi, 1.0 enseigné par une personne, et la maturité du sujet est la moyenne pondérée par la centralité, si bien qu'un pivot que les fichiers n'expliquent pas coûte plus qu'une feuille. L'ordre d'enseignement est une stratification topologique : les prérequis d'abord, les pivots d'abord au sein d'un palier ; il a remplacé un appel modèle qui esquissait autrefois "quoi enseigner" à partir de quatorze passages.

Exemple · une carte de sujet rendue pour le prompt (≤ 700 jetons, concept focal d'abord)
SUBJECT MAP (16 concepts; the files explain 79% of it, this is about the material, NOT the student's mastery):
- Mitochondria: Mitochondria release energy from glucose. [taught: in our class we call the mitochondria the powerhouse of the cell] (builds on: Cytoplasm)
- Cytoplasm: Cytoplasm is the gel-like substance inside the cell membrane. (builds on: Cell Membrane)
- Chloroplasts: Chloroplasts are involved in photosynthesis. (builds on: Cell Wall)
- Endosymbiosis: Endosymbiosis explains the origin of mitochondria and chloroplasts. (builds on: Mitochondria, Chloroplasts)
…

Cette formulation d'en-tête a été une leçon à elle seule. La première version disait "79% compris", et un modèle qui la lisait a tranquillement dit à un élève "étant donné votre compréhension actuelle de 79%…". Un chiffre de maturité qui peut se lire comme la maîtrise de l'élève sera lu ainsi ; la ligne dit désormais de quoi elle parle.

Enseigner au sujet

Une personne peut enrichir la carte en lui parlant. "Retiens qu'en classe on appelle la mitochondrie la centrale de la cellule" attache une note enseignée au concept qu'elle nomme (routage par nom ; seule une correspondance exacte compte), fixe la maturité de ce concept à 1.0, écrit un épisode enseigné, et place la note dans le brief. Quand la phrase ne nomme aucun concept existant, un nouveau nœud est créé au palier enseigné avec un nom court, jamais la phrase entière. Les questions n'enseignent jamais ; seul un "retiens que", un "traite X comme", ou son équivalent dans la langue de l'élève, le fait.

Des croyances qui gardent leur histoire

Une croyance est ce que le tuteur pense actuellement de cet élève sur ce concept, "est faible en osmose", "comprend le cytoplasme", avec une confiance et les épisodes qui la soutiennent. La règle qui compte : une ligne n'est jamais mise à jour vers une autre affirmation. Quand le tuteur change d'avis, l'ancienne ligne reste exactement ce qu'elle était, une nouvelle ligne est insérée, et l'ancienne pointe vers la nouvelle. Le rappel ne lit que les lignes que rien ne remplace ; un rapport peut remonter la chaîne quand quelqu'un demande ce qui a changé et pourquoi. Rétention et actualité sont deux propriétés différentes, et une mémoire qui garde les deux est une mémoire sur laquelle un rapport peut se construire.

est faible en cytoplasme confiance 0.90 · après un contrôle raté preuve : contrôle c4a0 (faux) superseded_by → ligne 2 (révisée) est en cours sur cytoplasme confiance 0.50 · maîtrise 0.45 preuve : c4a0 (faux), d1e2 (juste) superseded_by → ligne 3 (révisée) comprend le cytoplasme confiance 0.72 · maîtrise 0.72 preuve : c4a0, d1e2, e7f8 (juste) actuelle, seule ligne lue au rappel la preuve suit lors d'une révision : l'erreur reste au dossier même si l'élève est ensuite jugé avoir compris
Figure 6. Trois lignes liées pour un concept. L'affirmation est une tranche de maîtrise (sous 0.3 faible, 0.3–0.6 en cours, 0.6 et plus comprend), si bien qu'une série de bonnes réponses traverse une tranche, et cela constitue un changement d'avis, enregistré, jamais écrasé. Un léger ajustement de confiance à l'intérieur d'une tranche ne fait que reformuler la même ligne.

Les croyances sont bon marché là où cela compte : environ vingt jetons chacune, et une seule tient lieu de dizaines d'épisodes. C'est ce ratio, et non une fenêtre plus large, qui donne son vrai sens à "se souvenir de plus que ce que le contexte peut contenir". Les épisodes ne sont pas abandonnés, c'est contre eux qu'une croyance est vérifiée, mais ils viennent en second, et l'appelant dépense sur eux le budget qui lui reste.

De quel sujet parle une croyance ?

C'est la partie que les données réelles ont cassée en premier. En mode enseignement, le "sujet" d'un contrôle avait été les mots mêmes de l'élève, si bien que des contrôles rejoués produisaient des croyances comme comprend ask me the questions et est faible en bueno ahora explícame todos los pasos. Désormais, le sujet d'un contrôle est routé vers un concept par son nom, et quand la chaîne de sujet est une phrase, par le texte d'évaluation du tuteur lui-même (qui nomme généralement le concept), sur une correspondance de nom exacte seulement. Un sujet qui ne correspond à rien et se lit comme un énoncé, mots interrogatifs, verbes de demande, pronoms, mots de remplissage, dans les langues que nos élèves utilisent, est conservé comme preuve mais ne devient jamais une croyance. Un tel changement de règle demande un moyen de re-dériver : retirer les croyances actuelles (jamais les supprimer), rejouer les contrôles enregistrés sous les règles d'aujourd'hui, ne toucher à aucun épisode.

Un tour, dans un budget

Chaque tour de conversation demande au cerveau un bloc, construit hors du chemin de requête avec un plafond de temps strict. Sur 155 tours, le bloc a pris 295 ms à la médiane, 403 ms au 90e centile et 445 ms au 95e, avec une construction à plus d'une seconde et aucune au-delà du plafond de 2.5 s, au-delà duquel le lot est abandonné plutôt qu'attendu, pour qu'une mémoire lente ne se place jamais devant le premier jeton. Un seul embedding de la question sert à la fois au routage et au rappel. Le bloc se place dans l'emplacement mémoire déjà existant du prompt, avant les passages du contenu, et rien d'autre dans le prompt ne change.

budget : 2,000 jetons · un tour type sur un sujet réel en a utilisé 720–1,030 brief (la carte, priorité au focus) : ~380 jetons 380 croyances sur les concepts en jeu : ~100 jetons (≈ 20 chacune) 100 épisodes rappelés, du plus ancien au plus récent : ~380 jetons épisodes 380 comment l'utiliser, et la ligne d'absence d'historique quand une période est vide : ~60 jetons marge ≈ 1,080 jetons 01,0002,000 carte, priorité au concept et à ses voisins croy. épisodes consignes
Figure 7. Où vont les jetons. La carte est rendue par ordre de pertinence dans 700 jetons ; les croyances sont la représentation la moins chère et viennent ensuite ; les épisodes remplissent ce qui reste, du plus ancien au plus récent, car une chronologie se lit mieux qu'un classement.
Exemple · le bloc pour "Qu'avons-nous vu en juillet sur les cellules eucaryotes ?" (abrégé)
===== YOUR MEMORY OF THIS STUDENT AND SUBJECT =====
THE STUDENT IS ASKING ABOUT THEIR OWN RECORD. Answer from the beliefs and the earlier work listed here …
WHAT YOU CURRENTLY BELIEVE ABOUT THIS STUDENT (from their checks; confidence 0–1):
- understands cytoplasm (0.72)
- understands eukaryotic cells (0.72)
EARLIER WORK WITH THIS STUDENT (oldest first):
- 12 Jul · you were asked: Can we go over Eukaryotic Cells today? I keep mixing it up.
- 12 Jul · you answered: Of course. Eukaryotic Cells: Eukaryotic cells contain a nucleus and organelles. We worked through two examples and you got the second one right.
- 18 Sep · the student taught you: Taught: in our class we call the mitochondria the powerhouse of the cell
- 18 Sep · check: Check on cytoplasm: right (and 3 more times like it)
SUBJECT MAP (16 concepts; the files explain 79% of it, …)
…
HOW TO USE THIS: it is your own memory of past work with this student, not their material. When you rely on it, say when it happened ("in July we…"). Never claim a memory that is not listed here. …
===== END OF MEMORY =====

L'ordre à l'intérieur du bloc s'est révélé compter autant que le contenu. Pour une question ordinaire, la carte vient d'abord. Pour une question sur l'historique: "qu'est-ce que je me suis trompé jusqu'ici", "qu'avons-nous étudié", "ماذا أخطأت", les croyances et le travail antérieur viennent d'abord et la carte en dernier, avec une première ligne explicite disant que l'élève interroge sur son propre historique. Nous l'avons appris d'un échec : le prompt portait aussi une section héritée "résultats d'évaluation" qui commence par "AUCUNE TENTATIVE DE QUIZ enregistrée", et le modèle a répondu à un élève qui avait répondu à vingt-huit contrôles en conversation par "vous n'avez encore tenté aucun quiz". Un modèle lit la première affirmation qui fait autorité sur un historique et s'arrête là. Le bloc mémoire précède désormais cette section, une note de transition relie les deux, et une section d'évaluation qui dit seulement "rien d'enregistré" est supprimée quand le bloc mémoire existe.

Exemple · après la correction, la même question sur un historique réel

Élève : Qu'est-ce que je me suis trompé sur les contrôles jusqu'ici, et que devrais-je revoir ?

Tuteur : Ce que vous avez manqué sur les contrôles: 1. Contrôle sur ce qu'est une cellule : partiellement correct, vous l'avez décrite comme "c'est comme un petit truc ?", ce qui est incomplet. Réponses incorrectes : vous avez répondu "oui" et "eauu" à des occasions séparées, marquées comme fausses. 2. Contrôle sur les enzymes : vous avez correctement énoncé que les enzymes sont des "protéines qui décomposent la nourriture pour une digestion plus facile". Révisions suggérées: étant donné vos difficultés sur ce qu'est une cellule : structure cellulaire (procaryote contre eucaryote)… composants d'une cellule… par exemple, les mitochondries libèrent de l'énergie à partir du glucose, ce que vous avez appris en classe.

Dire "je n'ai aucun historique"

L'échec le plus instructif de tout le projet fut un scénario que nous avions écrit pour qu'il passe : semer une conversation de juillet, demander "qu'avons-nous vu en juillet sur X", vérifier la réponse. La réponse commençait par "En juillet, nous avons vu X…" et était fluide, ancrée dans le fichier, et entièrement fabriquée, le souvenir de juillet n'avait pas atteint le prompt, et le modèle a narré juillet à partir du cadrage de la question. Deux causes. Le mode question-sur-l'historique n'avait gardé que les contrôles et les quiz et avait abandonné la conversation qui était l'historique ; et les propres narrations antérieures du tuteur ("En juillet nous avons vu…", stockées comme des épisodes de réponse) étaient rappelées comme s'il s'agissait de souvenirs de juillet, le cerveau se souvenant qu'il se souvenait.

06070809auj "en juillet" → fenêtre · priorité 12 juil question 12 juil. réponse (cite Ch.2) juin : rien 18 sept "en juillet on a vu…" marqué historique · jamais rappelé en mémoire une fenêtre vide affiche une ligne, "VOUS N'AVEZ AUCUN SOUVENIR DE JUIN 2026 AVEC CET ÉLÈVE", rien qui évoque juin
Figure 8. Le temps comme filtre. Une question sur une période rappelle d'abord à l'intérieur de cette période ; les propres narrations de l'historique par le tuteur sont marquées au moment de l'écriture et exclues ; une période vide produit une ligne explicite et supprime tout ce qui pourrait être pris pour elle, y compris la carte, qu'un modèle résumerait sinon "comme vu en juin".
Exemple · le scénario, avant et après

avant "En juin, nous avons vu le sujet de la membrane cellulaire, qui se décrit ainsi : la membrane cellulaire est une double couche de phospholipides…"

après "Je n'ai aucun historique de ce que nous avons vu précisément en juin sur la membrane cellulaire. Cependant, je peux vous donner des informations sur la membrane cellulaire à partir des supports dont nous disposons…"

Les deux cas sont désormais des scénarios dans un lanceur reproductible : celui de juillet ne passe que si les souvenirs de juillet sont dans le prompt (vérifié sur les identifiants de mémoire stockés du message, pas sur la formulation de la réponse), et celui du mois vide ne passe que si la réponse dit qu'elle n'a aucun historique et ne décrit aucune séance.

La mémoire comme citation

Notre conversation avait déjà un panneau de provenance : chaque affirmation d'une réponse est reliée à une ligne des fichiers de l'élève, et une réponse avec trop peu d'affirmations reliées est marquée comme largement non ancrée. Ce traceur ne connaissait que les fichiers. Une affirmation correcte comme "en juillet nous avons vu X, et vous avez réussi le second exemple" se lisait donc comme absente de vos notes: la fonctionnalité qualifiant de fausse une affirmation vraie. Les souvenirs dont le tuteur s'est rappelé sont donc désormais stockés sur la réponse, et le traceur traite chaque épisode rappelé comme une source de plus, étiquetée par le moment où il a eu lieu.

Réponse, ligne par ligne "Sur le contrôle vous avez dit 'vers le côté doux'" "L'osmose déplace l'eau vers le sel" "Mitochondries : deux membranes" "Voulez-vous approfondir ce point ?" (pas assertion, ignoré) Votre travail · 12 juil "contrôle osmose : faux, 'le côté doux'" Notes bio cellulaire · p. 4 "…vers la concentration en soluté élevée…" ancré 3 sur 3 · le badge sous la réponse compte une ligne appuyée par la mémoire comme étayée
Figure 9. Deux types de sources dans un même panneau. Une ligne appuyée par un souvenir rappelé est étiquetée par date plutôt que par page, et l'avertissement "largement non ancré" ne se déclenche plus sur un souvenir véridique.

Ce même résultat d'ancrage donne à chaque épisode de réponse un statut: répondu, partiel, ou impossible, stocké après coup. C'est ainsi que le rapport apprend quelles questions les fichiers n'ont pas pu répondre, sans second appel modèle et sans ligne "cadre" cachée dans le flux, ce que nous avons essayé puis rejeté : en mode réponse simple, rien ne filtre le flux, donc une ligne cachée aurait atteint l'élève.

Une mémoire qui se vérifie elle-même

Une mémoire qui ne peut pas se vérifier elle-même devient plus confiante et moins juste avec le temps. Comme la preuve d'une réponse enregistre l'empreinte du fichier au moment considéré, la vérification est une recherche, pas un appel modèle : tient: le fichier cité est toujours là, inchangé ; modifié: il a été remplacé ou supprimé, et la note dit lequel des deux ; invérifiable: le souvenir ne cite aucun fichier (une conversation, un contrôle). Cette troisième réponse est un résultat à part entière, pas une erreur ; signaler un souvenir conversationnel comme "tient" serait le vrai défaut. Un épisode rappelé arrive au prompt déjà étiqueté : "[note : le fichier cité ici a été remplacé ou supprimé depuis]".

tient cite Ch.2 p.4 · empreinte a91f fichier auj. · empreinte a91f "la citation est toujours là inchangée" modifié cite Ch.2 p.4 · empreinte a91f fichier auj. · empreinte 5c02 (renvoyé) "Chapitre 2" remplacé → maturité en baisse invérifiable contrôle, question, ou note enseignée rien ici ne cite de fichier une réponse honnête, pas un échec seules les trois colonnes de vérification sont écrites ; la preuve et la chaîne de hash restent intacts
Figure 10. Vérification par rapport à l'empreinte du fichier. Quand un fichier est supprimé, tous les souvenirs du sujet qui le citent sont revérifiés d'un coup, les concepts qu'il expliquait perdent cette provenance, la maturité baisse et le brief est re-rendu, et le rapport le dit.

La boucle nocturne

Une fois par nuit, pour chaque paire élève-sujet active durant le dernier jour, un cycle déterministe s'exécute sans aucun appel modèle : condenser la journée en un épisode de consolidation (comptes par type, le décompte des contrôles, les sujets, les cinq titres les plus saillants ; une journée calme n'écrit rien, et la note ne résume jamais son propre genre) ; dégrader toute croyance intouchée depuis 45 jours de 15 % et la marquer pour que le prochain contrôle la confirme ; calibrer la maîtrise que le tuteur avait prédite avant chaque contrôle par rapport au verdict ; vérifier un lot borné de citations, les jamais-vérifiées d'abord ; reconstruire le petit ensemble de travail ; recomposer l'auto-modèle.

condens.jour → une note dégrader45j ×0.85 · marq. calibrerprévu vs verdict vérif.40 citations, du + ancien auto-modèleses limites chaque paire active des 26 dernières heures · aucun appel modèle · chaque paire est son unité de travail
Figure 11. Le cycle de consolidation. Il s'exécute depuis une minuterie planifiée, une paire à la fois ; un échec est journalisé et le balayage continue.

La calibration est le contrôle d'honnêteté sur la confiance du tuteur : avant chaque contrôle, nous savons quelle maîtrise il avait prédite ; après, nous savons le verdict. Regroupée en tranches, cela donne une courbe de fiabilité et une erreur de calibration attendue, et l'auto-modèle ne se déclare "calibré" qu'à partir de cinq contrôles avec une prédiction. Avant cela, ses limites le disent, traiter la confiance comme un classement, pas comme une probabilité.

00.51.0 00.51.0 maîtrise prévue avant le contrôle taux de réussite calibration parfaite (diagonale) tranche 0.0–0.2 : prédit 0.10 · réalisé 0.50 · n = 2 n=2 tranche 0.2–0.4 : prédit 0.30 · réalisé 0.60 · n = 5 n=5 tranche 0.4–0.8 : prédit 0.60 · réalisé 0.80 · n = 5 n=5 tranche 0.8–1.0 : prédit 0.90 · réalisé 1.00 · n = 2 n=2 points au-dessus de la ligne : le tuteur sous-estime cet élève
Figure 12. Une courbe de fiabilité tirée de quatorze contrôles sur un sujet (tranches illustratives). L'écart entre les valeurs prédite et réalisée d'une tranche, pondéré par sa taille, est l'erreur de calibration attendue que rapporte l'auto-modèle ; au-delà de 25 points, elle devient une limite déclarée.

Ce que des historiques réels nous ont appris

Les scénarios prouvent des mécanismes ; ils ne prouvent pas que la chose fonctionne sur la manière dont les gens parlent réellement. Nous avons donc construit un rejeu : prendre les historiques élève-sujet réels les plus riches, en lecture seule, reconstruire chacun dans une copie isolée de la plateforme, y construire le cerveau, et poser trois questions à forme réelle par le vrai point d'entrée de conversation, en tant que cet utilisateur. Six paires, 65–142 messages chacune, 13–32 verdicts en mode enseignement chacune, une en espagnol. Ils ne constituent pas un échantillon aléatoire et ne doivent pas être lus comme tel. Nous avons retenu des historiques d'au moins quarante messages, au maximum deux par élève, comptes de test et internes exclus, en privilégiant ceux avec le plus de réponses notées, car un historique vide n'exerce rien. Cela biaise chaque chiffre présenté ici en faveur des utilisateurs assidus. Le sujet d'un utilisateur occasionnel donnerait à la mémoire moins à se rappeler et moins de risques de se tromper.

9–42 spour lire les fichiers d'un sujet dans sa carte
15–23 spour rejouer 33–49 tours d'historique
700–1,030jetons de mémoire par tour
2.0–3.8 sjusqu'au premier jeton, mémoire incluse
5 sur 6"qu'est-ce que j'ai raté" répondu à partir des contrôles réels
6 sur 6questions de concept routées vers le bon concept

Il a aussi produit les trois corrections décrites plus haut : des croyances sur des phrases d'élève, l'historique répondu depuis la carte au lieu de l'historique lui-même, la ligne héritée "aucune tentative de quiz" prenant le pas sur les réponses, et une confirmation que nous étions heureux de voir : une consolidation a signalé onze souvenirs dont le fichier cité n'existait plus. Le vérificateur qui faisait son travail.

Sujet (réel, rejoué)MessagesContrôlesConceptsCroyances après re-dérivationMaturité de la carte
Module d'algèbre14232160, chaque sujet de contrôle était une phrase et aucune évaluation ne nommait un concept ; les contrôles restent dans l'historique et le rapport le dit0.60
Unité de littérature9714103, toutes indexées par concept0.68
Informatique et résolution de problèmes912974, toutes indexées par concept0.60 → 0.81
Biología (espagnol)8831156 (5 indexées par concept), surtout "est faible en…" après une série de réponses fausses0.62
Sciences (triple)7513162, toutes deux indexées par concept0.64
Cahier de religion6518126 (5 indexées par concept)0.72

La ligne d'algèbre est la plus honnête. Trente-deux contrôles et aucune croyance, car aucun n'a pu être relié à un concept : l'élève répondait par de l'arithmétique, les réponses du tuteur ne nommaient jamais les concepts du chapitre, et un énoncé n'est pas un sujet. Le rapport pour cet élève dit "32 contrôles sont enregistrés dans l'historique, mais aucun n'a encore pu être relié à un concept de la carte" plutôt que "aucun contrôle encore". Rien n'est inventé, pas même la maîtrise.

Un benchmark, pas une démo

Tout ce qui précède est une mesure ou un échantillon : la durée des opérations, ce que le rejeu a produit, des réponses qui nous ont plu. Rien de tout cela ne prouve que la mémoire mérite sa place, car rien n'a été comparé au même tuteur sans elle. Nous avons donc fait la comparaison. Un jeu de questions pré-enregistré, quatre versions du même tuteur qui ne diffèrent que par ce qui atteint le prompt, et des correcteurs qui sont des comparaisons de chaînes et d'identifiants plutôt que des opinions, de sorte que la même réponse obtient toujours le même score.

Les questions sont générées par matière à partir des propres données enregistrées de cette matière, ce qui permet de les noter : une question sur ce que l'élève a raté est vérifiée par rapport aux contrôles réellement enregistrés, une question sur un prérequis par rapport à une arête réelle de la carte, une question sur un mois par rapport aux mois où cette matière a réellement été active. Lorsqu'une matière permet plusieurs occurrences, elle en reçoit plusieurs, donc trois concepts et trois mois vides plutôt qu'un de chaque. Six catégories, 420 questions notées par version, sur 45 historiques réels d'élèves rejoués dans une copie isolée de la plateforme et posées via le point de terminaison de chat habituel, en tant que cet élève.

Quatre versions

Les quatre exécutent la même récupération sur les mêmes fichiers. Récupération simple est le tuteur sans aucune mémoire. Fenêtre est la réponse à laquelle la plupart des gens pensent en premier : les vingt derniers tours de conversation, insérés sans classement. Épisodes est le rappel classé du seul journal d'épisodes, sans carte conceptuelle, sans croyances et sans traitement particulier des questions sur l'historique. Mémoire totale est tout ce que cet article décrit.

ce que j'ai raté, 32 questions : récupération simple 3, fenêtre 5, épisodes 24, mémoire totale 30 ce que j'ai raté n = 32 30 ce qui a été étudié, 42 questions : récupération simple 28, fenêtre 31, épisodes 31, mémoire totale 37 ce qui a été étudié n = 42 37 expliquer un concept, 124 questions : récupération simple 66, fenêtre 95, épisodes 100, mémoire totale 100 expliquer un concept n = 124 100 quoi réviser en premier, 46 questions : récupération simple 26, fenêtre 25, épisodes 25, mémoire totale 44 quoi réviser en premier n = 46 44 mois avec activité, 44 questions : chaque version 44 sur 44 mois avec activité n = 44, les quatre 44 mois sans activité, 132 questions : récupération simple 1, fenêtre 73, épisodes 126, mémoire totale 128 mois sans activité n = 132 1 128 025% 50%75% 100% récupération simple fenêtre 20 tours épisodes classés mémoire totale
Figure 13. Quatre versions, les mêmes questions, les mêmes 45 matières, 420 questions notées chacune. Totaux : 168, 273, 350 et 383. La mémoire mérite sa place, tout comme chacune de ses parties, mais pas de façon égale ni partout.

Ce que dit le tableau

Dans l'ensemble, le tuteur passe de 168 sur 420 à 383, soit 40 % contre 91. La moyenne est le chiffre le moins intéressant ici ; la forme de la différence est le résultat qui compte.

Une fenêtre plus grande ne suffit pas. Ajouter les vingt derniers tours dans le prompt fait passer le score de 40 % à 65, et c'est tout ce que cela apporte. Cela répond correctement à 5 sur 32 questions sur ce que l'élève a raté, parce que vingt tours de discussion ne sont pas l'endroit où cette information se trouve, et le système se trompe encore sur un mois vide plus souvent qu'autrement. C'est la réponse du type « il suffit de mettre plus de conversation dedans », mesurée plutôt qu'affirmée.

Le rappel classé fait l'essentiel. Le journal d'épisodes à lui seul atteint 83 %. Si vous ne devez construire qu'une seule chose, construisez celle-ci : un journal en ajout seul, noté par pertinence, représente l'essentiel de la valeur de cet article.

La carte et les croyances valent les 33 autres questions, et elles les méritent dans deux endroits précis plutôt que partout. Interrogées sur quoi réviser avant un sujet, les versions sans carte conceptuelle répondent correctement environ 55 % du temps contre 96 pour la mémoire totale, parce que les prérequis sont des arêtes et qu'un journal d'épisodes n'en a aucune. Interrogé sur ce que l'élève a raté, les croyances et la branche liée à l'historique font passer le score de 24 sur 32 à 30. Interrogée pour expliquer un concept, la carte n'apporte rien du tout : 100 dans les deux cas.

Les deux extrêmes, même jeu de questions

récupération simple, un mois sans activité 1 réponse correcte sur 132. Interrogé sur ce qui a été couvert durant un mois où l'élève n'a jamais été actif, il décrit le contenu et lui attribue ce mois, presque à chaque fois.

mémoire totale, même question 128 sur 132. Il indique qu'il n'a aucun historique de cette période et propose ce dont il dispose.

Ce que cet achat a coûté

+0.36 sdélai médian avant le premier jeton, 1.62 s à 1.98 s
750nombre médian de jetons de mémoire ajoutés au prompt
+51 ptsau total, de 40 % à 91
10%des réponses obtiennent un score différent lorsqu'on repose la question

Ce que ce benchmark ne montre pas

Le dernier de ces chiffres est celui à garder en tête pour la suite. Nous avons posé à la mémoire totale les 420 questions identiques une seconde fois, et 44 d'entre elles ont obtenu un score différent. Le bruit d'une exécution à l'autre est donc d'environ un dixième, l'écart de 33 questions entre les deux meilleures versions le dépasse largement, mais l'écart de 2 questions entre elles sur le mois vide non : sur cette catégorie, elles sont à égalité et nous ne prétendrons pas le contraire.

Une catégorie s'est révélée sans valeur, et nous la laissons dans le graphique plutôt que de la retirer discrètement. Un mois où l'élève était actif obtient 44 sur 44 pour chaque version, y compris celle qui n'a aucune mémoire. Il ne peut pas distinguer un rappel ancré dans les faits d'une description plausible qui tombe juste sur le bon mois, ce qui est exactement l'échec que sa catégorie jumelle permet de repérer. Un test que tout le monde réussit ne mesure rien.

Les correcteurs sont des comparaisons de chaînes écrites par les mêmes personnes qui ont construit la fonctionnalité. Ils récompensent une réponse qui reprend les mots enregistrés et ne peuvent pas reconnaître une bonne réponse formulée tout autrement, et cela nous a coûté cher une fois : les questions sur les prérequis avaient été générées avec le sens de l'arête inversé, si bien que pendant longtemps cette catégorie est apparue comme la plus faible de la mémoire, alors que le tuteur donnait la propre réponse de la carte et se voyait marqué comme ayant tort. C'est en réalité la catégorie la plus forte de la carte. Nous l'avons découvert en lisant les échecs plutôt que les totaux, ce qui est le seul moyen de faire remonter ce genre d'erreurs.

Et la population n'est pas aléatoire. Il s'agit de 45 historiques réels choisis parce qu'ils contiennent quelque chose : au moins quinze messages, des fichiers joints, et pour les catégories qui nécessitent des réponses notées, au moins cinq d'entre elles. Un élève qui a à peine commencé exercerait beaucoup moins tout cela, et verrait beaucoup moins la différence.

Ce que ceci n'est pas

Quatre choses avec lesquelles on le confond, et ce qu'il est à la place.

  • Pas une fenêtre de contexte plus grande. Le coût par tour est borné et ne croît pas avec l'historique. Le benchmark chiffre la différence : la fenêtre naïve a répondu correctement à 65 % des 420 questions là où la mémoire a répondu à 91.
  • Pas un résumé. Rien n'est réécrit. Les épisodes sont immuables, une correction est une nouvelle ligne qui pointe vers l'ancienne, et la croyance de mars reste lisible après que celle d'août l'a remplacée.
  • Pas une recherche vectorielle dans le journal de conversation. L'index vectoriel n'est que l'un des quatre réservoirs, et le classement filtre d'abord sur la pertinence avant que la récence, la saillance ou la fréquence n'aient leur mot à dire.
  • Pas un profil de l'élève rédigé par un modèle. Aucun passage sur l'historique ne produit de description de l'apprenant. Chaque croyance est une fourchette calculée à partir de réponses notées, avec les identifiants de preuve associés et une chaîne de remplacement derrière elle.

Ce qu'il est : une lecture bornée sur un journal immuable, un graphe du contenu extrait une fois par fichier, et des croyances qui portent leur propre preuve.

Les principes que nous avons gardés

  • Rien n'est inventé. La maîtrise ne vient que des contrôles, des quiz et des parties ; un concept n'existe que parce qu'un fichier l'a expliqué ou qu'une personne l'a enseigné ; une période vide le dit.
  • La preuve, ou cela n'a pas eu lieu. Chaque croyance, chaque ligne de rapport, chaque lacune porte les identifiants de ce sur quoi elle repose, et le panneau de citation montre les souvenirs à côté des pages.
  • La rétention n'est pas l'actualité. Garder la croyance de mars pour toujours ; ne jamais s'y ancrer une fois qu'août l'a remplacée. Une correction est une nouvelle ligne avec un lien, jamais une modification.
  • La pertinence prime sur la récence. Élargir avant de découper ; filtrer, pas seulement pondérer.
  • La propre narration du tuteur n'est pas une mémoire. Une réponse qui relate l'historique est marquée au moment de l'écriture et jamais rappelée comme un souvenir du sujet.
  • L'ordre est un contenu. Un modèle lit la première affirmation qui fait autorité sur un historique et s'arrête là ; placer l'historique avant tout ce qui pourrait être pris pour lui.
  • Un énoncé est une preuve, jamais un sujet. "Ask me the questions" peut être juste ou faux ; personne ne le comprend.
  • Une mémoire doit pouvoir se vérifier elle-même. Enregistrer l'empreinte à l'instant considéré ; vérifier par recherche ; traiter "invérifiable" comme une réponse à part entière.

L'ensemble tient en quelques milliers de lignes, pour la plupart ordinaires : un registre, un graphe, une fonction de score, un moteur de rendu avec un budget, et une tâche nocturne. La partie difficile n'était pas le code, mais de décider, chaque fois que le modèle disait quelque chose de fluide et de faux, que la correction appartenait à la mémoire, pas au ton de voix du prompt.