Vous discutez avec votre assistant IA depuis des mois. Un soir, vous lui demandez : « Tu te souviens de ce qu’on avait dit sur le budget, hier ? » Et là, réponse vague, ou pire, assurée mais fausse. L’IA n’a pas tout oublié. Elle a gardé un résumé. Et le résumé, ce n’est pas la conversation.
Un développeur qui signe « Aru » a décidé de s’attaquer à ce problème à la racine, avec un projet open source au nom explicite : lossless-memory, la mémoire « sans perte ». Son principe tient en trois mots : ne jamais résumer.
Lossless (« sans perte ») : une compression qui permet de retrouver exactement l’original. L’inverse de « lossy » (avec perte), comme un JPEG très compressé.
Résumé de mémoire : beaucoup d’assistants condensent vos vieilles conversations en quelques lignes pour gagner de la place. L’IA décide seule de ce qui compte.
Log : le journal brut, ligne par ligne, de tout ce qui a été dit. Comme un carnet de bord qu’on ne réécrit pas.
Le problème : l’IA décide à votre place de ce qui est important
L’idée de départ est presque philosophique. Pour son auteur, un résumé est une carte, le log brut est le territoire. La carte est pratique, mais elle a été dessinée par quelqu’un d’autre, et elle oublie des détails.
Dans l’article qui présente le projet, Aru l’explique avec une phrase qui résume tout : « Les parties que l’IA juge sans importance sont importantes pour moi. » Ses essais de mémoire par résumé conservaient les faits, mais perdaient l’ordre des événements, le ton, les blagues, la texture de la conversation. Autrement dit tout ce qui fait qu’on a l’impression d’être reconnu.
Un autre développeur arrive à la même critique, côté code, avec son outil Longhand : « Le résumé est une décision avec perte déguisée en confort. Une IA choisit ce qui mérite d’être retenu, et je ne vois jamais ce qu’elle a jeté. » Deux projets indépendants, une même intuition : le tri automatique, ça se paie.
Comment ça marche, sans jargon
1. Tout est gardé, ligne par ligne
Chaque message est enregistré tel quel dans un fichier du jour. Chaque ligne porte sept informations :
| Champ | Ce que ça contient |
|---|---|
| ts | La date et l’heure exactes (format ISO-8601, en UTC) |
| actor | Qui parle |
| role | Utilisateur, assistant ou système |
| type | Texte, action ou méta-information |
| text | Le contenu mot pour mot |
| model | Le modèle d’IA utilisé |
| session | L’identifiant de la session de conversation |
Ce sont des fichiers texte au format JSONL, lisibles par un humain avec n’importe quel éditeur. Pas de boîte noire.
2. Trois façons de retrouver un souvenir
- L’index exact : une base SQLite avec recherche plein texte (FTS5). Vous cherchez des mots, sur une plage de dates.
- L’index sémantique : une recherche « par le sens » (sqlite-vec), utilisée en dernier recours quand les mots exacts ne suffisent pas.
- Le LLL, « où en sommes-nous maintenant » : un petit repère de sujet injecté dans le contexte de l’IA à chaque tour. Même quand l’IA compacte sa fenêtre de contexte, elle sait de quoi on parle.
3. Le temps d’abord, le sens ensuite
C’est la partie la plus originale. Quand vous posez une question comme « hier soir, environ le budget », l’outil commence par comprendre la date, qui réduit la plage. Ensuite les mots classent les résultats. Vous obtenez des extraits dans l’ordre chronologique, non résumés, avec leur horodatage. Vous revivez la conversation au lieu de lire une fiche.
Essayer l’outil
L’installation se fait depuis le dépôt GitHub, avec Python. D’après le dépôt officiel :
- git clone https://github.com/aru-labs/lossless-memory
- cd lossless-memory puis pip install -e .
- copier config.example.json en config.json
Un exemple de démarrage rapide ingère un petit dialogue, construit les index et lance une requête en environ cinq minutes, avec des tests inclus. Il faut être à l’aise avec un terminal : ce n’est pas encore un outil grand public. Licence MIT, donc gratuit et modifiable.
Côté compatibilité, le format natif est celui des journaux de Claude Code. Un importeur générique accepte aussi un format simple {ts, role, text} pour brancher d’autres sources. Les embeddings tournent en local (sentence-transformers), sur CPU possible, sans API cloud.
Ce que ça donne en vrai (et ce que ça ne prouve pas)
L’auteur publie des chiffres d’exploitation sur sa propre installation :
- reconstruction de l’index exact : 40 secondes → 1,24 seconde après une refonte ;
- espace du stockage vectoriel : 2,54 Go → 337 Mo après suppression de données corrompues ;
- ré-indexation toutes les 10 minutes.
Attention, ce sont des mesures d’usage, pas des benchmarks. L’auteur le dit lui-même : aucune comparaison avec d’autres systèmes de mémoire, et une seule installation observée. On sait que ça marche pour lui, pas que ça fait mieux que les résumés.
Les expressions de temps relatives (« hier soir », « la semaine dernière ») ne sont gérées qu’en japonais pour l’instant, l’anglais est prévu. Chez nous, il faut utiliser des dates absolues (par exemple 2026-07-19), qui, elles, fonctionnent partout.
La contrepartie : tout garder, c’est aussi tout exposer
Ne jamais résumer, c’est aussi ne jamais oublier. Et un journal complet de vos échanges avec une IA contient forcément des choses personnelles : projets, doutes, noms, parfois des mots de passe collés par erreur.
Le projet est local, sans cloud, ce qui est une bonne nouvelle pour la vie privée. Mais l’auteur précise que la sauvegarde, le chiffrement et la sécurité de l’appareil restent à votre charge. Un disque non chiffré qui se perd, et c’est tout votre historique qui se lit.
Autres limites annoncées : usage mono-utilisateur et mono-machine, jamais testé à plusieurs, dépendance à un modèle d’embedding local, et un format principal centré sur Claude Code.
À qui ça s’adresse ?
Pour l’instant, aux curieux à l’aise avec Python qui utilisent un assistant tous les jours et en ont assez qu’il « oublie ». Mais l’intérêt dépasse l’outil : c’est une façon de penser la mémoire des IA. Garder la source brute, et fabriquer les résumés à la demande, plutôt que l’inverse. Si vous lisez un jour qu’un assistant « se souvient de vous », demandez-vous : de quoi, exactement, et qui a trié ?
L’approche est séduisante, surtout pour la traçabilité. Mais elle déplace le problème. Quand tout est gardé, la difficulté devient retrouver la bonne ligne sans noyer l’IA sous des milliers d’extraits. C’est précisément ce que tentent de résoudre les trois index, et ce sera le vrai test quand l’outil passera à plus grande échelle.
1. Préférez-vous une IA qui garde un résumé propre ou une IA qui garde tout, y compris vos hésitations ?
2. Seriez-vous à l’aise de stocker des mois de conversations IA sur votre disque, même en local ?
3. Les assistants grand public devraient-ils vous montrer exactement ce qu’ils retiennent de vous ?
