La compaction, c'est comme rêver
À la fin d'une longue journée remplie d'aventures, de détours, de hauts et de bas, on finit épuisé et notre capacité mentale décline. On ne peut garder qu'un nombre limité de choses, de fils, ouverts dans notre esprit à la fois, et il n'y a qu'un certain nombre de pensées qu'on peut poursuivre dans une journée avant de manquer de jus et d'avoir besoin de faire une sieste.
Le rêve est la manière dont le cerveau nettoie, de manière générale, ses « trucs » accumulés : évacuer les molécules du mauvais type qui se sont accumulées, issues des processus chimiques de la journée ; prendre les idées de la journée et les organiser, les classer en mémoire, les traiter, revisiter les inquiétudes et espoirs anciens et récents, tout ce qui se trouve dans notre subconscient.
Je crois que le rêve, c'est comme la compaction avec les agents IA. Les LLM ont une fenêtre de contexte finie : ils ne peuvent contenir qu'un certain nombre de pensées en contexte en même temps. Et à mesure que leur fenêtre de contexte se remplit, leurs processus de pensée se dégradent. Ils deviennent négligents. Ils font des erreurs simples. Ils omettent des choses qu'ils devraient savoir. À ce jour, la compaction est un processus qui prend généralement tout le contexte accumulé d'un LLM, et le résume en un contexte plus petit qui laisse, on l'espère, assez de miettes pour continuer ce qui se passait avant, tout en éliminant la majeure partie du bruit des pensées accumulées de la journée. Tous les mots dits ou entendus dans une journée n'ont pas la même utilité, et tout cela n'a pas besoin de rester en mémoire active. Les humains ont eux aussi une fenêtre de contexte finie. Le sommeil et le rêve sont probablement aussi liés au fait que « les cerveaux humains s'approchent de la saturation toutes les ~16 h ». Épuisement social, épuisement émotionnel, épuisement cognitif. Notre performance décline, notre patience s'épuise, on a besoin de se reposer pour retrouver notre capacité de régime permanent.
Les humains ont différents niveaux de mémoire. On ne garde pas tout au premier plan de notre esprit : seulement les questions les plus pressantes, les informations dont on a bientôt besoin, ou les choses qui viennent de nous arriver. On classe ensuite (inconsciemment) les choses dans notre mémoire à long terme. Une sorte de hiérarchie de mémoire à deux niveaux est à l'œuvre. Je ne suis pas un expert, mais l'idée générale semble correspondre à ce schéma d'ensemble. Et puis, pour les choses qui ne rentrent pas dans la capacité de notre mémoire interne, on utilise des outils. On écrit des livres, on écrit du texte quelque part, on parle à d'autres gens et on leur raconte nos histoires. Et on s'appuie sur le monde extérieur pour garder certains de nos souvenirs à notre place. On externalise notre planification quotidienne vers l'application calendrier de notre téléphone. On stocke des années et des années de souvenirs dans les courriels. On écrit des histoires et des épopées en dessinant dans des grottes. On encode des cartes de navigation des îles du Pacifique dans des chants. Et on garde surtout un index approximatif de « si je veux un jour me souvenir de la voiture que j'avais en 2012, je devrais chercher dans mes vieilles photos ». On ne stocke pas les faits, on stocke de vagues informations sur la manière dont on s'y prendrait pour récupérer l'information si on en avait de nouveau besoin. Comme la recherche, comme le RAG.
Donc je crois que les agents IA devraient fonctionner de cette même manière : compacter les faits et les stocker. S'appuyer sur le monde, s'appuyer sur les autres, s'appuyer sur des systèmes d'enregistrement externalisés. Et de même que les humains ne meurent pas chaque nuit, les agents devraient probablement pouvoir maintenir de longues sessions de 100 ans sans devoir repartir de zéro à chaque fois. Ils ont juste besoin de rêver davantage comme les humains, peut-être.
Note : les LLM, les IA, les agents... n'évacuent pas de molécules, ils organisent simplement leurs pensées quand ils font de la compaction. Peut-être qu'ils ont aussi besoin d'évacuer quelque chose ? Dans le cas des humains, « l'évacuation » consiste à s'occuper du sous-produit accumulé du fait d'« être un cerveau éveillé ». Comment cela se traduirait-il, concrètement, dans la façon dont les IA s'exécutent ? Un fil ouvert à creuser pour en tirer de l'inspiration.