Skip to main content
IA nell'Istruzione19 min di lettura

Un tutor che ricorda: una memoria per materia che sopravvive alla finestra di contesto

Uno studente parla con la stessa materia per mesi. Inserire sempre più di questo nel prompt non è scalabile e non rende il tutor onesto. Come abbiamo costruito una memoria che classifica il passato per pertinenza, una mappa concettuale del materiale, e convinzioni sullo studente che portano le proprie prove: dodici diagrammi, esempi reali, e cosa ci hanno insegnato le cronologie reali riprodotte.

iTutor Team18 settembre 2026

Uno studente parla con la stessa materia per mesi: migliaia di messaggi, decine di file, centinaia di piccole verifiche. Inserire sempre più di questo nel prompt non è scalabile e non rende il tutor onesto. Ecco come abbiamo dato a ogni materia una memoria che classifica il passato per pertinenza, una mappa concettuale del materiale e convinzioni sullo studente che portano con sé le proprie prove, e cosa ci hanno insegnato le cronologie reali quando le abbiamo riprodotte. Nessun fornitore viene nominato di proposito: il metodo non ne dipende. Ogni numero qui riportato è stato misurato, non stimato.

Cosa deve significare "ricordare"

La risposta ingenua a «il tutor dimentica» è una finestra più grande: tenere più conversazione nel prompt e riassumere il resto. Fallisce in tre modi distinti, e ognuno è un problema di prodotto prima di essere un problema tecnico.

  • Il tempo. Uno studente che chiede a settembre di qualcosa trattato a luglio ha bisogno della sessione di luglio, non degli ultimi quaranta messaggi. Un riassunto di «cosa è successo finora» diventa più vago man mano che cresce; il dettaglio rilevante è esattamente ciò che un riassunto elimina.
  • I file. Una materia contiene decine di documenti. Il recupero individua gli otto passaggi più vicini alla domanda, il che va bene per i fatti ed è inutile per «come si collega questo capitolo a quello», la struttura del materiale non sta mai in un singolo passaggio.
  • L'onestà. Un tutor che dichiara «hai capito l'osmosi» deve poter dire perché: quale verifica, in quale giorno, cosa ha risposto lo studente. Un numero senza prove è una supposizione con la virgola.

Così, prima di scrivere una riga, abbiamo fissato tre promesse: ogni turno diventa un episodio duraturo e il richiamo classifica l'intera cronologia per pertinenza, non per data; i concetti vengono estratti una sola volta per file e uniti in un'unica mappa per materia; e la padronanza è alimentata solo da prove, una verifica risposta, un quiz svolto, una partita giocata, e ogni convinzione conserva le proprie prove e la propria storia. E una quarta promessa, più discreta: quando il tutor non ha memoria di qualcosa, lo dice chiaramente.

La forma del sistema

Tre archivi, una lettura a budget per ogni turno, un ciclo ogni notte. I file alimentano la mappa; la conversazione alimenta il registro degli episodi; le verifiche alimentano le convinzioni. Ogni turno di chat legge una piccola porzione classificata di tutti e tre e la inserisce nel prompt entro un budget fisso di token. Nulla, nel percorso di lettura, chiama un modello generativo. L'unico modello che chiama è l'embedding, una volta per turno, condiviso da instradamento e richiamo; l'unico passaggio generativo fuori dalla chat è quello che legge un nuovo file nella mappa.

File una lettura per file Conversazione domanda, risposta Verif. esito di una risposta Mappa conc. nodi, archi, preparazione Reg. episodi a sola aggiunta, con hash Reg. conv. sostituite, mai modificate estrai e unisci due episodi in convinzione Un turno, ~2,000 token 1 instrada la domanda → concetti 2 sintesi: mappa, focus prima 3 convinzioni sui concetti 4 episodi simili alla domanda Slot memoria prompt prima dei passaggi materiale Notturno · comprimi il giorno · decadono conv. obsolete · calibra · verifica citazioni · aggiorna modello di sé di nuovo negli archivi
Figura 1. Tre archivi alimentati da tre tipi di evento, una lettura a budget per ogni turno, un ciclo ogni notte. Il percorso di lettura è ricerche, aritmetica e un embedding della domanda; l'unica chiamata generativa fuori dalla chat è quella che legge un nuovo file.

Episodi: un registro a sola aggiunta e concatenato con hash

Ogni evento diventa un episodio: una domanda, una risposta, una verifica con il suo esito, il risultato di un quiz, l'arrivo di un file, qualcosa che lo studente ha esplicitamente insegnato al tutor. Un episodio contiene un riassunto di una riga, il testo completo, i concetti toccati, un punteggio di salienza fissato al momento della scrittura, e le sue prove: per una risposta, il file e la pagina citati, con l'impronta del file in quel momento. Gli episodi non vengono mai modificati. Ciascuno conserva l'hash di quello precedente nella stessa catena, così il registro è ricalcolabile e qualsiasi manomissione, o qualsiasi riscrittura silenziosa dovuta a una migrazione bene intenzionata, si manifesta come un'interruzione. È un indizio di manomissione, non una garanzia contro le manomissioni: una riscrittura viene rilevata, mai impedita, e solo finché la catena, o un suo checkpoint, viene conservata.

domanda · 12 lug "Rivediamo le cellule?" prev ∅ · hash 7e1c… risposta · 12 lug cita Cap.2 p.4 · impr. a91f prev 7e1c… · hash 03bd… Verif. · 12 lug corretto · previsto 0.45 prev 03bd… · hash c4a0… insegn. · 18 set "la centrale energetica" prev c4a0… · hash 9f27… hash = sha256(hash precedente · catena · data · tipo · riassunto), la catena segue l'ordine di inserimento anche se un episodio riprodotto conserva la data di luglio
Figura 2. La catena degli episodi per uno studente in una materia. Una riproduzione di una vecchia cronologia mantiene nello storico l'orario originale di ogni episodio, mentre la catena stessa segue l'ordine in cui le righe sono state scritte; entrambe sono ricalcolabili.

La salienza è fissata da cosa è un episodio, non da un umore: una verifica sbagliata (0.7) conta più di una superata (0.6), e qualcosa che lo studente ha insegnato al tutor (0.85) conta più di tutto, perché è l'unico ricordo che una persona ha chiesto esplicitamente di conservare. Una domanda vale un modesto 0.35, la domanda di uno studente è un richiamo corretto ma un ricordo inutile, cosa che si rivela importante più avanti nel percorso «a cosa mi fa pensare questo».

Richiamo: la pertinenza deve prevalere sulla recenza

Il richiamo è associativo, non cronologico. I candidati vengono raccolti da diversi insiemi, ciascuno che raggiunge l'intera cronologia, e solo dopo vengono valutati: i cinquecento più recenti, ogni episodio che contiene una parola distintiva della domanda, ogni episodio che tocca i concetti a cui la domanda è stata instradata, e i vicini semantici dell'indice vettoriale. Allargare prima e restringere dopo è la decisione di progettazione più importante del modulo, la prima versione restringeva prima ("i 500 più recenti") e non riusciva a richiamare, a nessun livello di pertinenza, un ricordo di marzo perfettamente pertinente, perché veniva tagliato prima di essere valutato.

−0.1800.250.500.75 pertinenza: 0.55, coseno quando c'è un embedding, sovrapposizione lessicale altrimenti pertinenza0.55 sovrapposizione di concetti: +0.20 quando l'episodio tocca un concetto a cui la domanda è stata instradata sovrapposizione+0.20 recenza: 0.15 con decadimento esponenziale, costante di tempo 30 giorni recenza (τ = 30 g)0.15 salienza: 0.12, fissata dal tipo dell'episodio al momento della scrittura salienza0.12 frequenza: 0.08, quanto spesso i concetti dell'episodio ricorrono nell'insieme dei candidati frequenza0.08 eco di sé: −0.18 per le risposte del tutor stesso, −0.08 quando quella risposta citava un file eco di sé (risp. del tutor) −0.18 · −0.08 se citava un file la parte piena si applica sempre; la parte più chiara è la penalità extra quando la risposta non citava nessun file
Figura 3. I pesi del punteggio. La pertinenza domina; il resto modula. Le risposte passate del tutor stesso sono attenuate così che ragioni da ciò che è accaduto, non da ciò che ha detto, un po' meno quando la risposta era ancorata al file dello studente, perché quella risposta è un ricordo di ciò che è stato insegnato.

I pesi da soli non bastano. Quando la domanda riguarda qualcosa e qualcosa corrisponde, gli episodi che non corrispondono a nulla vengono scartati invece che classificati, una nota irrilevante ma recente ottiene 0.15 × 1.0 solo per la recenza, mentre una corrispondenza esatta di 200 giorni prima ottiene 0.55 × 0.156, e nessuna ponderazione che permetta a una non-corrispondenza di superare una corrispondenza è corretta, a qualsiasi impostazione. La recenza spareggia, non classifica. Due domande che chi legge dovrebbe porsi su questi numeri: da dove vengono, e se li abbiamo tarati sui dati. Sono stati impostati a mano, ereditati da una versione precedente della nostra memoria costruita per un prodotto diverso, e non sono stati tarati su nessuno dei dati di questo articolo. Nulla, qui sotto, è stato ottimizzato per tentativi o tarato sui dati; l'unica modifica che abbiamo apportato al punteggio è nata da un errore che potevamo individuare con precisione, non da una ricerca, ed è stata il filtro, non un peso. Il filtro ha due eccezioni: nessuna domanda (allora la recenza è tutto ciò che resta), e nessuna corrispondenza (allora il passato recente è l'offerta onesta migliore).

00.250.50 nota irrilevante ma recente: pertinenza 0 · recenza 1.0 → punteggio 0.15 nota recente, nulla combacia 0.15 (solo recenza) corrispondenza esatta di 200 giorni prima: pertinenza 0.53 · recenza 0.001 → punteggio 0.29 corrispondenza a 200 gg 0.29 (pertinenza) il filtro rimuove del tutto la prima riga quando esiste la seconda punteggio = 0.55·pertinenza + 0.15·recenza + 0.08·frequenza + 0.12·salienza + 0.20·concetto − eco
Figura 4. Perché la pertinenza filtra invece di limitarsi a contribuire. Il blocco in cui finisce un episodio richiamato è intitolato «cosa ricordi»; un episodio non correlato lì viene letto come contesto pertinente.

Due cose che le cronologie reali hanno aggiunto

Le ripetizioni collassano. In una materia reale, 161 domande degli studenti erano 56 frasi distinte, «cos'è una cellula» chiesto nove volte in tre mesi. Nove copie sono un solo ricordo, ricordato nove volte, quindi il richiamo unisce gli episodi identici e riporta per quanti sta il superstite. Il tempo è un filtro, non un indizio. «Cosa abbiamo trattato a luglio?» viene analizzato come una finestra temporale e il richiamo agisce prima al suo interno; se la finestra è vuota, il blocco lo dichiara esplicitamente (vedi § onestà). I nomi dei mesi funzionano nelle lingue in cui scrivono i nostri studenti, così come «la settimana scorsa» e «ieri».

La mappa concettuale

I passaggi rispondono a «cosa dice il file qui»; una mappa risponde a «di cosa è fatta questa materia, e cosa si basa su cosa». Ogni file viene letto una sola volta da un passaggio del modello che restituisce un elenco limitato di concetti, nome, sintesi in una frase, una breve definizione, i concetti su cui si basa dalla sua stessa lista, le pagine in cui il file lo spiega. I titoli delle sezioni ("Introduzione", "Errori comuni") vengono rifiutati da un validatore; un nome che in realtà è un titolo di capitolo è l'arredamento del file, non le idee della materia.

I concetti si uniscono tra i file tramite una chiave canonica (un nome normalizzato, che tiene conto della scrittura) e tramite una similarità di embedding sopra 0.86. La provenienza si accumula: un capitolo che rispiega l'osmosi si aggiunge a un unico nodo invece di crearne un secondo, e ogni file che ha contribuito resta elencato con le sue pagine. Un prerequisito che il file presuppone ma non spiega mai diventa un nodo solo quando due concetti lo presuppongono, allora la lacuna è reale e vale la pena mostrarla; un caso isolato viene registrato sul concetto come "presupposto" e non viene disegnato in nessun punto. Il primo documento normativo che abbiamo letto ha trasformato 11 concetti in 34 nodi, prima che questa regola esistesse.

Cellule eucariote Membrana cell. Citoplasmapiù centrale Parete Nucleo Cloroplasti Mitocondridebole · rivedi Ribosomi Endosimbiosi deriva da affine compreso in apprendim. difficoltà nessuna prova da rivedere grande = centrale
Figura 5. Una porzione di una mappa reale (biologia cellulare, un file, 16 concetti). Le frecce vanno da un prerequisito a ciò che si basa su di esso; il layout mette i prerequisiti a sinistra. La posizione dello studente è dipinta sui nodi raggiunti dalle verifiche.

Dalla mappa derivano tre numeri. La centralità è un PageRank pesato sugli archi (un prerequisito su cui tutto si basa è un nodo cardine). La preparazione per concetto segue quattro fasce, 0.35 solo nominato, 0.60 spiegato da un file, 0.85 confermato da una verifica superata, 1.0 insegnato da una persona, e la preparazione della materia è la media pesata per centralità, quindi un nodo cardine che i file non spiegano costa più di una foglia. L'ordine di insegnamento è una stratificazione topologica: prima i prerequisiti, prima i nodi cardine all'interno di ogni livello; ha sostituito una chiamata al modello che prima delineava «cosa insegnare» a partire da quattordici passaggi.

Esempio · una mappa della materia resa per il prompt (≤ 700 token, prima il concetto in focus)
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)
…

Il testo dell'intestazione è stato di per sé una lezione. La prima versione diceva «79% compreso», e un modello che la leggeva diceva tranquillamente a uno studente «dato il tuo livello di comprensione attuale del 79%…». Un numero di preparazione che può essere letto come la padronanza dello studente verrà letto così; la riga ora dice di cosa parla.

Insegnare la materia

Una persona può aggiungere alla mappa parlandole. «Ricorda che nella nostra classe chiamiamo i mitocondri la centrale energetica della cellula» allega una nota d'insegnamento al concetto che nomina (instradamento per nome, solo con corrispondenza esatta), porta la preparazione di quel concetto a 1.0, scrive un episodio d'insegnamento e inserisce la nota nella sintesi. Quando la frase non nomina nessun concetto esistente, viene creato un nuovo nodo al livello d'insegnamento con un nome breve, mai l'intera frase. Le domande non insegnano mai; solo un esplicito «ricorda che», «considera X come», o il suo equivalente nella lingua dello studente, lo fa.

Convinzioni che conservano la propria storia

Una convinzione è ciò che il tutor pensa attualmente di questo studente su questo concetto, «ha difficoltà con l'osmosi», «comprende il citoplasma», con una confidenza e gli episodi che la sostengono. La regola che conta: le righe non vengono mai aggiornate per diventare un'affermazione diversa. Quando il tutor cambia idea, la vecchia riga resta esattamente com'era, ne viene inserita una nuova, e quella vecchia punta a quella nuova. Il richiamo legge solo le righe che nulla ha sostituito; un rapporto può risalire la catena quando qualcuno chiede cosa è cambiato e perché. Conservazione e attualità sono proprietà diverse, e una memoria che mantiene entrambe è una su cui si può costruire un rapporto.

difficoltà: citoplasma confidenza 0.90 · verifica sbagliata prova: verif. c4a0 (sbagl.) superseded_by → riga 2 (rivista) ancora imparando: citoplasma confidenza 0.50 · padronanza 0.45 prove: c4a0 (sbagl.), d1e2 (corr.) superseded_by → riga 3 (rivista) comprende il citoplasma confidenza 0.72 · padronanza 0.72 prove: c4a0, d1e2, e7f8 (corretta) attuale, l'unica letta dal richiamo le prove passano avanti a ogni revisione: l'errore resta a verbale anche quando lo studente viene poi giudicato aver capito
Figura 6. Tre righe collegate per un concetto. L'affermazione è una fascia di padronanza (sotto 0.3 difficoltà, 0.3–0.6 ancora in apprendimento, 0.6 e oltre comprensione), quindi una serie di risposte corrette attraversa una fascia e quello è un cambiamento di idea, registrato, mai sovrascritto. Un piccolo aggiustamento di confidenza all'interno di una fascia riformula la stessa riga.

Le convinzioni sono economiche dove conta: circa venti token ciascuna, e una vale per decine di episodi. È questo rapporto, non una finestra più grande, il vero significato di «ricordare più di quanto entri nel contesto». Gli episodi non vengono scartati, sono ciò con cui una convinzione viene verificata, ma arrivano secondi e chi chiama spende su di loro il budget che resta.

A quale argomento si riferisce una convinzione?

Questa è stata la parte che i dati reali hanno rotto per prima. In modalità insegnamento, l'«argomento» di una verifica era le parole stesse dello studente, così le verifiche riprodotte generavano convinzioni come comprende ask me the questions e ha difficoltà con bueno ahora explícame todos los pasos. Ora l'argomento di una verifica viene instradato a un concetto per nome, e quando la stringa dell'argomento è una frase, tramite il testo di valutazione del tutor stesso (che di solito nomina il concetto), solo con corrispondenza esatta del nome. Un argomento che non corrisponde a nulla e si legge come un'espressione parlata, parole interrogative, verbi del chiedere, pronomi, riempitivi, nelle lingue usate dai nostri studenti, viene conservato come prova ma non diventa mai una convinzione. Un cambiamento di regola come questo richiede un modo per riderivare: ritirare le convinzioni attuali (mai eliminarle), riprodurre le verifiche registrate secondo le regole di oggi, senza toccare alcun episodio.

Un turno, dentro un budget

Ogni turno di chat chiede al "cervello" un blocco, costruito fuori dal percorso della richiesta con un tetto di tempo rigido. Su 155 turni il blocco ha impiegato 295 ms alla mediana, 403 ms al 90° percentile e 445 ms al 95°, con una sola costruzione oltre il secondo e nessuna oltre il tetto di 2.5 s, superato il quale il pacchetto viene scartato anziché atteso, così che una memoria lenta non si metta mai davanti al primo token. Un unico embedding della domanda serve sia per l'instradamento che per il richiamo. Il blocco entra nello slot di memoria già esistente nel prompt, prima dei passaggi del materiale, e nulla altro nel prompt cambia.

budget: 2,000 token · un turno tipico su una materia reale usava 720–1,030 sintesi (la mappa, focus prima): ~380 token mappa 380 convinzioni sui concetti in gioco: ~100 token (≈ 20 ciascuna) 100 episodi richiamati, dal più vecchio: ~380 token episodi 380 come usarlo, e la riga di assenza di ricordo quando un periodo è vuoto: ~60 token margine ≈ 1,080 token 01,0002,000 mappa, prima il concetto in focus e i vicini conv. episodi istruzioni
Figura 7. Dove vanno i token. La mappa viene resa a partire da ciò che è pertinente entro 700 token; le convinzioni sono la rappresentazione più economica e vengono dopo; gli episodi riempiono ciò che resta, dal più vecchio, perché una linea temporale si legge meglio di una classifica.
Esempio · il blocco per «Cosa abbiamo trattato a luglio sulle cellule eucariotiche?» (abbreviato)
===== 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'ordine all'interno del blocco si è rivelato importante quanto il contenuto. Per una domanda ordinaria la mappa viene prima. Per una domanda sullo storico: «cosa ho sbagliato finora», «cosa abbiamo studiato», «ماذا أخطأت», le convinzioni e il lavoro precedente vengono prima e la mappa per ultima, con una prima riga esplicita che dice che lo studente sta chiedendo del proprio storico. Lo abbiamo imparato da un fallimento: il prompt portava anche una sezione legacy «risultati delle valutazioni» che inizia con «NESSUN TENTATIVO DI QUIZ registrato», e il modello ha risposto a uno studente che aveva risposto a ventotto verifiche in conversazione con «non hai ancora tentato nessun quiz». Un modello legge la prima affermazione autorevole su uno storico e si ferma. Il blocco di memoria ora precede quella sezione, una nota di collegamento le unisce, e una sezione di valutazione che dice solo «niente registrato» viene eliminata quando il blocco di memoria esiste.

Esempio · dopo la correzione, la stessa domanda su una cronologia reale

Studente: Cosa ho sbagliato nelle verifiche finora, e cosa dovrei rivedere?

Tutor: Cosa hai sbagliato nelle verifiche: 1. Verifica su cos'è una cellula: parzialmente corretto, l'hai descritta come "è come una piccola cosa?", il che è incompleto. Risposte scorrette: hai risposto "sì" e "aqua" in occasioni separate, segnate come sbagliate. 2. Verifica sugli enzimi: hai affermato correttamente che gli enzimi sono "proteine che scompongono il cibo per facilitarne la digestione". Revisioni suggerite: data la tua difficoltà con cos'è una cellula: struttura cellulare (procariote vs eucariote)… componenti di una cellula… per esempio, i mitocondri rilasciano energia dal glucosio, cosa che hai imparato in classe.

Dire "non ne ho traccia"

Il fallimento più istruttivo di tutto il progetto è stato uno scenario che avevamo scritto per farlo passare: seminare una conversazione di luglio, chiedere «cosa abbiamo trattato a luglio su X», controllare la risposta. La risposta iniziava con «A luglio abbiamo trattato X…» ed era fluente, ancorata al file, e completamente inventata, la memoria di luglio non aveva raggiunto il prompt, e il modello aveva narrato luglio a partire dall'impostazione della domanda. Due cause. La modalità domanda-sullo-storico aveva conservato solo verifiche e quiz e aveva scartato la conversazione che era lo storico stesso; e le narrazioni precedenti del tutor stesso («A luglio abbiamo trattato…», salvate come episodi di risposta) venivano richiamate come se fossero ricordi di luglio, il cervello che si ricordava di aver ricordato.

giulugagosetora «luglio» → finestra, richiamata prima 12 lug domanda 12 lug risposta (cita Cap.2) Giugno: niente 18 set «A luglio abbiamo visto…» storico marcato · mai richiamato come memoria una finestra vuota mostra una riga, «NON HAI MEMORIA DI GIUGNO 2026 CON QUESTO STUDENTE», e nulla che possa essere letto come giugno
Figura 8. Il tempo come filtro. Una domanda su un periodo richiama prima dentro quel periodo; le narrazioni del tutor sullo storico vengono marcate al momento della scrittura ed escluse; un periodo vuoto produce una riga esplicita e sopprime tutto ciò che altrimenti potrebbe essere confuso con esso, inclusa la mappa, che un modello altrimenti riassumerebbe «come trattato a giugno».
Esempio · lo scenario, prima e dopo

prima "A giugno abbiamo trattato l'argomento della Membrana Cellulare, che viene descritta come segue: la membrana cellulare è un doppio strato di fosfolipidi…"

dopo "Non ho nessuna registrazione di ciò che abbiamo trattato specificamente a giugno riguardo alla membrana cellulare. Posso però fornirti informazioni sulla membrana cellulare a partire dai materiali che abbiamo…"

Entrambi i casi sono ora scenari in un esecutore ripetibile: quello di luglio passa solo se le memorie di luglio sono nel prompt (verificato sugli id di memoria salvati del messaggio, non sulla formulazione della risposta), e quello del mese vuoto passa solo se la risposta dichiara di non avere alcuna registrazione e non descrive una sessione.

La memoria come citazione

La nostra chat aveva già un pannello di provenienza: ogni affermazione in una risposta viene ricondotta a una riga nei file dello studente, e una risposta con troppe poche affermazioni ricondotte viene marcata come perlopiù non ancorata. Quel tracciatore conosceva solo i file. Un corretto «a luglio abbiamo trattato X, e hai fatto giusto il secondo esempio» sarebbe quindi risultato come non presente nei tuoi appunti: la funzione che definisce falsa un'affermazione vera. Così le memorie che sono state ricordate al tutor vengono salvate sulla risposta, e il tracciatore tratta ogni episodio richiamato come un'altra fonte, etichettata con il momento in cui è accaduto.

Risposta, per affermazione "Nella verifica hai detto 'verso il lato dolce'" "L'osmosi muove l'acqua verso il sale" "I mitocondri hanno due membrane" "Vuoi approfondire questo argomento?" (non affermaz., saltata) Lavoro precedente · 12 lug "osmosi: sbagliata, 'lato dolce'" Biologia Cellulare · pag. 4 "…verso la concentrazione di soluto più alta…" ancorate 3 di 3 · il badge sotto la risposta conta una riga supportata da una memoria come supportata
Figura 9. Due tipi di fonte in un unico pannello. Una riga supportata da una memoria richiamata è etichettata con una data invece che con una pagina, e l'avviso «perlopiù non ancorata» non scatta più su un ricordo veritiero.

Lo stesso risultato di ancoraggio assegna a ogni episodio di risposta uno stato: risposto, parziale, o impossibile, salvato a posteriori. È così che il rapporto scopre a quali domande i file non hanno potuto rispondere, senza una seconda chiamata al modello e senza una riga di controllo nascosta nello stream, cosa che abbiamo provato e scartato: nella modalità di risposta semplice nulla filtra lo stream, quindi una riga nascosta sarebbe arrivata allo studente.

Una memoria che si verifica da sola

Una memoria che non può verificare se stessa diventa più sicura e meno corretta col tempo. Poiché le prove di una risposta registrano l'impronta del file al momento, la verifica è una ricerca, non una chiamata al modello: regge: il file citato è ancora lì, invariato; mutata: è stato sostituito o rimosso, e la nota dice quale; non verificabile: la memoria non cita nessun file (una conversazione, una verifica). Questa terza risposta è un risultato di prima classe, non un errore; segnalare una memoria conversazionale come «regge» sarebbe il vero difetto. Un episodio richiamato arriva al prompt già etichettato: "[nota: il file citato qui è stato sostituito o rimosso da allora]".

regge cita Cap.2 p.4 · impronta a91f file oggi · impronta a91f "citazione ancora presente e invariata" mutata cita Cap.2 p.4 · impronta a91f file oggi · impronta 5c02 (ricaricato) 'Cap.2' sostituito → la preparazione scende non verif. verifica, domanda, insegnamento qui nulla cita un file risposta onesta, non un fallimento vengono scritte solo le tre colonne di verifica; le prove e la catena di hash non vengono mai toccate
Figura 10. Verifica rispetto all'impronta del file. Quando un file viene rimosso, ogni memoria della materia che lo cita viene riverificata subito, i concetti che spiegava perdono quella provenienza, la preparazione scende e la sintesi viene ricomposta, e il rapporto lo segnala.

Il ciclo notturno

Una volta a notte, per ogni coppia studente-materia attiva nell'ultimo giorno, viene eseguito un ciclo deterministico senza chiamate al modello: comprimere la giornata in un episodio di consolidamento (conteggi per tipo, il totale delle verifiche, gli argomenti, i cinque titoli più salienti; una giornata tranquilla non scrive nulla, e la nota non riassume mai il proprio stesso genere); far decadere del 15% qualsiasi convinzione non toccata per 45 giorni e segnalarla perché la prossima verifica la confermi; calibrare la padronanza che il tutor aveva previsto prima di ogni verifica rispetto all'esito; verificare un lotto limitato di citazioni, cominciando da quelle mai controllate; ricostruire il piccolo insieme di lavoro; ricomporre il modello di sé.

comprimigiorno → nota decadimento45 d · ×0.85 · nota calibraprevisto vs esito verif.40 citazioni, le più vecchie modello sélimiti onesti ogni coppia attiva nelle ultime 26 ore · nessuna chiamata al modello nel ciclo · ogni coppia è la propria unità di lavoro
Figura 11. Il ciclo di consolidamento. Viene eseguito da un timer secondo una pianificazione, una coppia alla volta; un fallimento viene registrato e la scansione continua.

La calibrazione è il controllo di onestà sulla confidenza del tutor: prima di ogni verifica sappiamo quale padronanza ha previsto; dopo, sappiamo l'esito. Suddivisa in fasce, questo dà una curva di affidabilità e un errore di calibrazione atteso, e il modello di sé riporta «calibrato» solo a partire da cinque verifiche con una previsione. Fino a quel momento, i suoi limiti lo dichiarano, trattare la confidenza come una classifica, non come una probabilità.

00.51.0 00.51.0 padronanza prevista prima verifica quota risp. corrette calibrazione perfetta (diagonale) fascia 0.0–0.2: previsto 0.10 · osservato 0.50 · n = 2 n=2 fascia 0.2–0.4: previsto 0.30 · osservato 0.60 · n = 5 n=5 fascia 0.4–0.8: previsto 0.60 · osservato 0.80 · n = 5 n=5 fascia 0.8–1.0: previsto 0.90 · osservato 1.00 · n = 2 n=2 punti sopra la linea: il tutor sottostima questo studente
Figura 12. Una curva di affidabilità da quattordici verifiche su una materia (fasce illustrative). Lo scarto tra i valori previsti e osservati di una fascia, pesato per la sua dimensione, è l'errore di calibrazione atteso che il modello di sé riporta; sopra i 25 punti diventa un limite dichiarato.

Cosa ci hanno insegnato le cronologie reali

Gli scenari dimostrano i meccanismi; non dimostrano che la cosa funziona nel modo in cui le persone parlano davvero. Così abbiamo costruito una riproduzione: prendere le cronologie studente-materia reali più ricche, solo in lettura, ricostruire ciascuna in una copia isolata della piattaforma, costruire il "cervello" per essa, e porre tre domande a forma reale attraverso l'effettivo endpoint della chat, impersonando quell'utente. Sei coppie, 65–142 messaggi ciascuna, 13–32 esiti in modalità insegnamento ciascuna, una in spagnolo. Non sono un campione casuale e non vanno lette come tale. Abbiamo scelto cronologie con almeno quaranta messaggi, al massimo due per studente, escludendo gli account di test e interni, preferendo quelle con più risposte valutate, perché una cronologia senza nulla dentro non mette alla prova nulla. Questo distorce ogni numero qui a favore degli utenti intensivi. La materia di un utente poco attivo darebbe alla memoria meno da richiamare e meno su cui sbagliare.

9–42 sper leggere i file di una materia nella sua mappa
15–23 sper riprodurre 33–49 turni di cronologia
700–1,030token di memoria per turno
2.0–3.8 sal primo token, memoria inclusa
5 di 6«cosa ho sbagliato» risposta dalle verifiche reali
6 di 6domande sui concetti instradate al concetto giusto

Ha prodotto anche le tre correzioni descritte sopra: convinzioni su frasi degli studenti; lo storico risposto dalla mappa invece che dallo storico; la riga legacy «nessun tentativo di quiz» che guidava le risposte; e una conferma che siamo stati felici di vedere: un consolidamento ha segnalato undici memorie il cui file citato non esisteva più. Il verificatore che faceva il suo lavoro.

Materia (reale, riprodotta)MessaggiVerificheConcettiConvinzioni dopo la nuova derivazionePreparazione della mappa
Modulo di algebra14232160, l'argomento di ogni verifica era una frase e nessuna valutazione nominava un concetto; le verifiche restano nello storico e il rapporto lo dice0.60
Unità di letteratura9714103, tutte associate a un concetto0.68
Informatica e risoluzione di problemi912974, tutte associate a un concetto0.60 → 0.81
Biología (spagnolo)8831156 (5 associate a un concetto), soprattutto «ha difficoltà con…» dopo una serie di risposte sbagliate0.62
Triple Science7513162, entrambe associate a un concetto0.64
Quaderno di religione6518126 (5 associate a un concetto)0.72

La riga dell'algebra è quella onesta. Trentadue verifiche e nessuna convinzione, perché nessuna poteva essere collegata a un concetto: lo studente rispondeva con l'aritmetica, le risposte del tutor non nominavano mai i concetti del capitolo, e un'espressione parlata non è un argomento. Il rapporto per quello studente dice «32 verifiche sono registrate, ma nessuna poteva ancora essere collegata a un concetto nella mappa» invece di «ancora nessuna verifica». Niente è stato inventato, nemmeno la padronanza.

Un benchmark, non una demo

Tutto quanto sopra è una misurazione o un campione: quanto tempo richiedono le cose, cosa ha prodotto la riproduzione, risposte che ci sono piaciute. Nulla di tutto ciò dimostra che la memoria meriti il suo posto, perché non è stato confrontato nulla con lo stesso tutor senza di essa. Per questo abbiamo eseguito il confronto. Un insieme di domande pre-registrato, quattro versioni dello stesso tutor che differiscono solo per ciò che raggiunge il prompt, e valutatori che sono confronti di stringhe e id piuttosto che opinioni, così che la stessa risposta ottenga sempre lo stesso punteggio.

Le domande sono generate per materia a partire dai dati effettivamente registrati per quella materia, ed è questo che le rende valutabili: una domanda su cosa lo studente ha sbagliato viene verificata rispetto alle verifiche realmente registrate, una domanda su un prerequisito rispetto a un collegamento reale nella mappa concettuale, una domanda su un mese rispetto ai mesi in cui quella materia è stata effettivamente attiva. Dove una materia ne supporta più di una, ne riceve più di una, quindi tre concetti e tre mesi vuoti anziché uno di ciascuno. Sei categorie, 420 domande valutate per versione, su 45 storici reali di studenti riprodotti in una copia isolata della piattaforma e poste tramite l'endpoint di chat ordinario come quello studente.

Le quattro versioni

Tutte e quattro eseguono lo stesso recupero sugli stessi file. Recupero semplice è il tutor senza alcuna memoria. Finestra è la soluzione a cui la maggior parte delle persone ricorre per prima: gli ultimi venti turni di conversazione, inseriti senza alcun ordine. Episodi è il recupero ordinato del solo registro degli episodi, senza mappa concettuale, senza convinzioni e senza una gestione speciale delle domande sullo storico. Memoria completa è tutto ciò che questo articolo descrive.

cosa ho sbagliato, 32 domande: recupero semplice 3, finestra 5, episodi 24, memoria completa 30 cosa ho sbagliato n = 32 30 cosa abbiamo studiato, 42 domande: recupero semplice 28, finestra 31, episodi 31, memoria completa 37 cosa abbiamo studiato n = 42 37 spiega un concetto, 124 domande: recupero semplice 66, finestra 95, episodi 100, memoria completa 100 spiega un concetto n = 124 100 cosa ripassare prima, 46 domande: recupero semplice 26, finestra 25, episodi 25, memoria completa 44 cosa ripassare prima n = 46 44 mese con attività, 44 domande: ogni versione 44 su 44 mese con attività n = 44, tutte 44 mese senza attività, 132 domande: recupero semplice 1, finestra 73, episodi 126, memoria completa 128 mese senza attività n = 132 1 128 025% 50%75% 100% recupero semplice finestra 20 turni episodi ordinati memoria completa
Figura 13. Quattro versioni, le stesse domande, le stesse 45 materie, 420 domande valutate ciascuna. Totali: 168, 273, 350 e 383. La memoria merita il suo posto, e così ogni sua parte, ma non in modo uniforme e non ovunque.

Cosa dice la tabella

Nel complesso il tutor passa da 168 su 420 a 383, ovvero dal 40 percento al 91. Il valore medio è il dato meno interessante qui; la forma della differenza è la vera scoperta.

Una finestra più grande non basta. Inserire nel prompt gli ultimi venti turni fa passare dal 40 percento al 65, ed è tutto quello che si ottiene. Risponde correttamente a 5 su 32 domande su cosa lo studente ha sbagliato, perché non è nei venti turni di chat che si trova quell'informazione, e sbaglia ancora sul mese vuoto più spesso di quanto no. È la risposta «basta mettere più conversazione», qui misurata anziché soltanto affermata.

Il recupero ordinato fa quasi tutto. Il registro degli episodi da solo raggiunge l'83 percento. Se dovete costruire una sola cosa, costruite questa: un registro a sola aggiunta, valutato per rilevanza, è la maggior parte del valore di questo articolo.

La mappa e le convinzioni valgono le altre 33 domande, e le guadagnano in due punti specifici piuttosto che ovunque. Quando si chiede cosa ripassare prima di un argomento, le versioni senza mappa concettuale rispondono correttamente circa il 55 percento delle volte e la memoria completa il 96, perché i prerequisiti sono collegamenti e un registro degli episodi non ne ha nessuno. Quando si chiede cosa lo studente ha sbagliato, le convinzioni e il ramo dello storico portano da 24 su 32 a 30. Quando si chiede di spiegare un concetto, la mappa non aggiunge nulla: 100 in entrambi i casi.

I due estremi, stesso insieme di domande

recupero semplice, un mese senza attività 1 risposta corretta su 132. Quando le si chiede cosa è stato trattato in un mese in cui lo studente non è mai stato attivo, descrive il materiale e vi associa quel mese, quasi ogni singola volta.

memoria completa, stessa domanda 128 su 132. Dichiara di non avere alcuno storico di quel periodo e offre quello che ha.

Cosa è costato ottenerlo

+0.36 stempo mediano al primo token, da 1.62 s a 1.98 s
750numero mediano di token di memoria aggiunti al prompt
+51 ptstotale: dal 40 percento al 91
10%delle risposte cambia punteggio se poste di nuovo

Cosa questo benchmark non mostra

L'ultimo di questi numeri è quello da tenere a mente leggendo il resto. Abbiamo posto alla memoria completa le stesse identiche 420 domande una seconda volta, e 44 di esse hanno ottenuto un punteggio diverso. Quindi il rumore da un'esecuzione all'altra è di circa un decimo, il divario di 33 domande tra le due versioni migliori è ben al di fuori di quel margine, mentre il divario di 2 domande tra loro sul mese vuoto non lo è: su quella categoria sono in parità, e non affermeremo il contrario.

Una categoria si è rivelata inutile e la lasciamo nel grafico invece di rimuoverla silenziosamente. Un mese in cui lo studente era attivo ottiene 44 su 44 per ogni versione, inclusa quella senza alcuna memoria. Non riesce a distinguere un ricordo fondato da una descrizione plausibile che per caso riporta il mese giusto, che è esattamente il difetto che la sua categoria gemella individua. Un test che tutti superano non misura nulla.

I valutatori sono confronti di stringhe scritti dalle stesse persone che hanno costruito la funzionalità. Premiano una risposta che riutilizza le parole registrate e non riescono a riconoscere una risposta corretta formulata in modo completamente diverso, e ci sono costati caro una volta: le domande sui prerequisiti erano generate con la direzione del collegamento invertita, così per molto tempo questa categoria è sembrata la più debole della memoria, mentre il tutor stava dando la risposta esatta secondo la mappa e veniva segnato come sbagliato. È la categoria più forte della mappa. L'abbiamo scoperto leggendo i fallimenti invece dei totali, che è l'unico modo in cui questi errori emergono.

E la popolazione non è casuale. Si tratta di 45 storici reali scelti per avere qualcosa al loro interno: almeno quindici messaggi, file allegati, e per le categorie che richiedono risposte valutabili, almeno cinque di queste. Uno studente che ha appena iniziato metterebbe alla prova molto meno di tutto questo, e vedrebbe una differenza molto più ridotta.

Cosa non è

Quattro cose per cui viene scambiato, e cos'è invece.

  • Non una finestra di contesto più grande. Il costo per turno è limitato e non cresce con la lunghezza della conversazione. Il benchmark mette un numero su questa differenza: la finestra ingenua ha risposto correttamente al 65 percento di 420 domande, contro il 91 della memoria.
  • Non un riassunto. Nulla viene riscritto. Gli episodi sono immutabili, una correzione è una nuova riga che punta a quella precedente, e la convinzione di marzo resta leggibile anche dopo che agosto l'ha sostituita.
  • Non una ricerca vettoriale sul registro della chat. L'indice vettoriale è uno dei quattro pool, e la classifica applica un filtro sulla rilevanza prima che recenza, salienza o frequenza abbiano voce in capitolo.
  • Non un profilo dello studente scritto da un modello. Nessuna scansione della cronologia produce una descrizione dello studente. Ogni convinzione è una fascia calcolata a partire dalle risposte valutate, con gli id delle prove allegati e una catena di sostituzioni alle spalle.

Cos'è: una lettura limitata su un registro immutabile, un grafo del materiale estratto una volta per file, e convinzioni che portano con sé le proprie prove.

I principi che abbiamo mantenuto

  • Niente è inventato. La padronanza deriva solo da verifiche, quiz e partite; un concetto esiste solo perché un file lo ha spiegato o una persona lo ha insegnato; un periodo vuoto lo dichiara.
  • Prove, o non è accaduto. Ogni convinzione, ogni riga di rapporto, ogni lacuna porta gli id di ciò su cui si basa, e il pannello delle citazioni mostra le memorie accanto alle pagine.
  • La conservazione non è attualità. Conserva per sempre la convinzione di marzo; non ancorarti mai a essa una volta che agosto l'ha sostituita. Una correzione è una nuova riga con un collegamento, mai una modifica.
  • La pertinenza prevale sulla recenza. Allarga prima di restringere; filtra, non limitarti a pesare.
  • La narrazione del tutor stesso non è memoria. Una risposta che racconta lo storico viene marcata al momento della scrittura e non viene mai richiamata come memoria della materia.
  • L'ordine è contenuto. Un modello legge la prima affermazione autorevole su uno storico e si ferma; metti lo storico prima di qualsiasi cosa che potrebbe essere confusa con esso.
  • Un'espressione parlata è una prova, mai un argomento. «Ask me the questions» può essere giusta o sbagliata; nessuno la comprende.
  • Una memoria deve poter verificare se stessa. Registra l'impronta al momento; verifica tramite ricerca; considera «non verificabile» come una risposta.

Il tutto è poche migliaia di righe, per la maggior parte ordinarie: un registro, un grafo, una funzione di punteggio, un renderer con un budget, e un job notturno. La parte difficile non è stato il codice, ma decidere, ogni volta che il modello diceva qualcosa di fluente e sbagliato, che la correzione appartenesse alla memoria, non al tono di voce del prompt.

MemoriaMappa concettualePadronanzaProveCome l'abbiamo costruito

Pronto a studiare in modo più intelligente?

Provi iTutor gratuitamente — tutoraggio AI, chat vocale, pianificazione dello studio e molto altro.

Inizia gratis