Mémoire pour agents IA : de la complexité à 300 lignes de code
Le développeur Nikolay Gusev explique comment il a trouvé la solution optimale pour la mémoire des agents IA. Au lieu de l'inextricable MemPalace, qui a produit 58k doublons, il a bâti un système simple de 300 lignes de code et de fichiers markdown. Pour monter en charge, il propose ClickHouse avec recherche vectorielle et partitionnement.
Traité par IA depuis Habr AI ; édité par Hamidun News
La mémoire est l'un des problèmes les plus ardus lorsqu'on construit des systèmes autonomes à base d'agents IA. Le développeur Nikolay Gusev a passé des mois à chercher une solution viable et raconte comment il est arrivé à une approche à la fois simple et évolutive.
MemPalace et la première erreur
Tout a commencé par une idée ambitieuse : MemPalace, un système de mémoire inspiré de l'architecture des palais médiévaux. Sur le papier, c'était astucieux, mais en pratique il a produit 58 mille fragments en double et s'est transformé en labyrinthe infranchissable. Trop de couches d'abstraction, trop de magie. L'agent se perdait dans sa propre mémoire.
Le chemin vers la simplicité
Après MemPalace, l'auteur a ramené la stack à quatre composants : MEMORY.md (base principale), USER.md (contexte utilisateur), SQLite state.db (état), HippoRAG (recherche) et des fichiers wiki (données structurées). Mais même cela lui paraissait excessif. Le bon choix a été d'écrire `findings_to_wiki`, un simple script Python de 300 lignes qui enregistre automatiquement les analyses structurées (repérées par des titres comme `## Findings`) dans des fichiers markdown et les convertit en pages wiki. Pas de frameworks, pas d'ORM : seulement des fichiers et du texte.
Passer à l'échelle : ClickHouse
Avec un seul agent, le stockage en fichiers fonctionne parfaitement. Mais pour gérer plus de 100 utilisateurs en simultané, il faut une vraie base de données. C'est là qu'intervient ClickHouse 24.x. Ses principales fonctionnalités :
- Recherche vectorielle via la fonction `cosineDistance()` : recherche rapide de souvenirs sémantiquement proches
- Recherche textuelle avec l'index `tokenbf_v1` : recherche plein texte dans la mémoire
- Partitionnement par user_id : l'isolation des données des utilisateurs est intégrée à la base
- TTL pour la suppression automatique : les anciens enregistrements sont effacés sans intervention manuelle
ClickHouse exécute analyses et recherches sur des millions d'enregistrements en quelques millisecondes. Pour la mémoire d'un agent, c'est largement suffisant.
Ce que cela signifie
L'enseignement principal : ne commencez pas par la montée en charge. Résolvez le problème simplement (fichiers, markdown, 300 lignes de code), puis passez à l'échelle seulement si nécessaire. Nikolay a montré que la meilleure voie d'ingénierie va de la complexité vers la simplicité, et non l'inverse.
- 1 nov. 2026Les modèles locaux battus par Opus et Codex : 0,21 sur MacBook contre 1,00 pour Codex
- 1 nov. 2026Le juge d'EditAgent (Adobe) retient une retouche valable dans 81,3% des cas, contre 74,8% pour EditScore
- 1 nov. 2026Test de 16 modèles sur 7 moteurs de recherche : Exa obtient en moyenne 10,5 points sur 14, SearXNG environ 3
- 1 nov. 2026L'agent vidéo StreamVibe de Google devance les autres modèles de 10,7 % sur le timing et la qualité des réponses
Questions clés sur cet article
Que sait-on sur MemPalace et la première erreur ?
Tout a commencé par une idée ambitieuse : MemPalace, un système de mémoire inspiré de l'architecture des palais médiévaux. Sur le papier, c'était astucieux, mais en pratique il a produit 58 mille fragments en double et s'est transformé en labyrinthe infranchissable. Trop de couches d'abstraction, trop de magie. L'agent se perdait dans sa propre mémoire.
Que sait-on sur Le chemin vers la simplicité ?
Après MemPalace, l'auteur a ramené la stack à quatre composants : MEMORY.md (base principale), USER.md (contexte utilisateur), SQLite state.db (état), HippoRAG (recherche) et des fichiers wiki (données structurées). Mais même cela lui paraissait excessif. Le bon choix a été d'écrire `findings_to_wiki`, un simple script Python de 300 lignes qui enregistre automatiquement les analyses structurées (repérées par des titres comme `## Findings`) dans des fichiers markdown et les convertit en pages wiki. Pas de frameworks, pas d'ORM : seulement des fichiers et du texte.
Que sait-on sur Passer à l'échelle : ClickHouse ?
Avec un seul agent, le stockage en fichiers fonctionne parfaitement. Mais pour gérer plus de 100 utilisateurs en simultané, il faut une vraie base de données. C'est là qu'intervient ClickHouse 24.x. Ses principales fonctionnalités : Recherche vectorielle via la fonction `cosineDistance()` : recherche rapide de souvenirs sémantiquement proches Recherche textuelle avec l'index `tokenbf_v1` : recherche plein texte dans la mémoire Partitionnement par user_id : l'isolation des données des utilisateurs est intégrée à la base TTL pour la suppression automatique : les anciens enreg
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.