Il y a deux mois, chaque produit de mémoire IA que nous avons testé avait le même problème : ils stockaient tout et ne comprenaient rien. Les approches RAG standard entassent chaque fragment de conversation dans une base de données vectorielle de manière égale, entraînant une inflation du contexte et une dégradation du raisonnement au fil du temps. Le chiffrement et l'isolation des locataires étaient souvent indisponibles, non documentés ou flous.
Alors nous avons construit Tokyo Brain à partir de zéro. En 12 heures, il est passé de 46% à 83.8% sur LongMemEval — le score le plus élevé que nous ayons observé dans nos exécutions de reproduction jusqu'à présent.
Mais ce n'est pas une histoire de score de benchmark. C'est l'histoire de ce qui se passe quand on arrête de construire des bases de données et qu'on commence à construire des cerveaux.
Le benchmark qui a tout déclenché
LongMemEval est une suite de tests de 500 questions conçue par des chercheurs pour évaluer la mémoire à long terme dans les systèmes d'IA. Elle mesure six dimensions cognitives :
| Dimension | Tokyo Brain | Ce qu'elle teste |
|---|---|---|
| Préférence en session unique | 100% (30/30) | « Que préfère cet utilisateur ? » |
| Raisonnement temporel | 89% (118/133) | « Quand X s'est-il produit par rapport à Y ? » |
| Mise à jour des connaissances | 82% (64/78) | « X est passé de A à B — quel est l'état actuel ? » |
| Multi-session | 82% (109/133) | « Sur 5 conversations, qu'est-ce qui est cohérent ? » |
| Session unique - utilisateur | 80% (56/70) | « Qu'a dit l'utilisateur sur lui-même ? » |
| Session unique - assistant | 75% (42/56) | « Qu'a recommandé l'IA ? » |
Pour référence, quand nous avons exécuté le même benchmark sur d'autres systèmes avec leurs configurations par défaut :
| Système | Score | Coût d'inférence | |
|---|---|---|---|
| 1 | Tokyo Brain | 83.8% | $0 |
| 2 | Supermemory | 81.6% | $$$ |
| 3 | Zep | 71.2% | $$ |
| 4 | Mem0 | 49.0% | $ |
Scores issus de nos exécutions internes de reproduction avec configurations par défaut. Nous prévoyons de publier en open-source le harnais d'évaluation afin que la communauté puisse vérifier et reproduire ces résultats.
Nous avons exécuté les 500 questions complètes, pas un sous-ensemble trié sur le volet. Les données de test proviennent de HuggingFace. Méthodologie : chaque question est une requête de rappel contre des souvenirs précédemment stockés à partir de conversations synthétiques multi-sessions.
Pourquoi 83.8% ? Parce que nous avons copié le cerveau
La plupart des systèmes de mémoire IA sont des bases de données vectorielles glorifiées. Stocker un embedding, récupérer par similarité cosinus, terminé. C'est comme construire une bibliothèque sans bibliothécaire — vous pouvez trouver des livres par couleur, mais pas par sens.
L'architecture de Tokyo Brain est modelée d'après les structures biologiques qui font fonctionner la mémoire humaine :
Biological Brain Tokyo Brain ───────────────────── ──────────────────────────────── Prefrontal Cortex Redis Hot Memory (working memory) (bounded short-term working set) Hippocampus Fact Extraction → answer_cards (sleep consolidation) (distill noise into facts) Synaptic Network Query Expansion + Entity Link (associative recall) (one word activates a web) Synaptic Pruning Time Decay (healthy forgetting) (old info loses priority) Amygdala Emotional Salience Scoring (emotional tagging) (family > server configs) Default Mode Network Night Cycle + MRA Engine (subconscious) (self-heals while you sleep)
Ces modules sont implémentés comme des composants séparés dans notre système de production. Laissez-moi vous guider à travers les plus importants.
Le parcours : de 46% à 83.8%
Le pipeline de rappel à 10 couches
Quand vous interrogez Tokyo Brain, votre question ne frappe pas simplement une base de données vectorielle. Elle passe par 10 étapes de traitement — chacune conçue pour résoudre un mode de défaillance spécifique observé pendant les tests de benchmark. Pas d'appels LLM. Pas de modèles de re-ranking coûteux. Du pur engineering de récupération.
Chaque couche a été ajoutée pour corriger un échec spécifique du benchmark. L'effet combiné : de 46% à 83.8% en une seule session de développement.
Les mathématiques : utilité espérée, pas force brute
La plupart des systèmes RAG récupèrent les souvenirs sur la base d'un signal unique : la similarité sémantique. C'est fondamentalement défaillant pour la cognition complexe — cela confond la pertinence (chevauchement sémantique) avec l'utilité (valeur pour la tâche en cours).
Derrière le pipeline se trouve un principe simple inspiré par les idées d'utilité espérée des sciences cognitives et de la théorie de la décision — la notion que la récupération de mémoire devrait maximiser la valeur espérée de l'information retournée, pas simplement minimiser la distance vectorielle :
| Composant | Couche Tokyo Brain | Ce qu'il fait |
|---|---|---|
| P(relevant) | Query Expansion + Entity Linking | Recherche sémantique multi-requêtes avec résolution d'alias |
| V(information) | Curated Boost | Faits vérifiés et answer cards priorisés |
| T(freshness) | Time Decay | Les souvenirs récents obtiennent des scores de distance plus bas |
| E(emotion) | Emotional Salience | Les souvenirs familiaux surclassent les configs serveur |
L'intuition clé : la récupération n'est pas un problème de recherche — c'est un problème d'allocation de ressources. Avec une fenêtre de contexte limitée, quels souvenirs maximisent l'utilité espérée totale pour la tâche en cours ? La plupart des systèmes s'arrêtent à P (similarité cosinus). Quelques-uns ajoutent T (récence). Nous n'avons pas vu d'autre produit qui intègre E (saillance émotionnelle) — scorer les souvenirs selon combien ils comptent pour vous en tant qu'humain, pas seulement selon leur proximité sémantique avec votre requête.
Le subconscient : Night Cycle + moteur MRA
C'est ici que Tokyo Brain diverge de tous les autres produits du marché.
Chaque système de mémoire IA est passif. Vous demandez, il récupère. Vous ne demandez pas, il reste inactif. Comme une bibliothèque sans bibliothécaire — les livres ne sont jamais réorganisés à moins que quelqu'un n'entre.
Le cerveau humain ne fonctionne pas ainsi. Votre Réseau du Mode par Défaut (DMN) s'active quand vous êtes inactif — pendant le sommeil, la rêverie ou la douche. Il consolide les souvenirs, résout les contradictions et produit parfois des moments « eurêka ».
Nous avons construit l'équivalent numérique.
Night Cycle v2 (s'exécute quotidiennement à 3h UTC)
Un script Python qui scanne toute la base de connaissances à la recherche de :
- Quasi-doublons — des cartes avec >88% de similarité d'embedding, marquées comme candidats à la fusion
- Cartes obsolètes — des faits de plus de 30 jours où des informations plus récentes existent, marquées pour mise à jour
- Décisions orphelines — des décisions importantes consignées dans les registres quotidiens mais jamais distillées en connaissances permanentes
- Cartes indésirables — des entrées trop courtes, trop longues ou principalement du bruit de formatage
Moteur de curiosité MRA (s'exécute après le Night Cycle)
Quand le Night Cycle trouve des problèmes, le moteur MRA ne les signale pas simplement — il les débat et les résout en utilisant un tribunal à trois personnalités :
Dans nos exécutions initiales de staging, le moteur MRA a réussi à fusionner automatiquement des cartes en double, a signalé les cas ambigus pour révision humaine et — notamment — la personnalité Skeptic a correctement identifié une hallucination dans une proposition de fusion, empêchant l'écriture de données erronées.
Le réflexe d'anxiété : moniteur d'entropie
Le Night Cycle s'exécute selon un planning cron — un réveil numérique. Mais les cerveaux humains n'attendent pas les alarmes. Ils remarquent quand quelque chose ne va pas en temps réel.
Le Moniteur d'Entropie donne cette capacité à Tokyo Brain. Il suit chaque opération de stockage de mémoire dans une fenêtre glissante de 20 minutes. Quand il détecte plusieurs stockages touchant le même cluster de sujets (>=4 dans la fenêtre), il déclenche une alerte :
{
"status": "ELEVATED",
"topic": "brain|pricing|tokyo|update|version",
"count": 5,
"message": "Pricing strategy is changing rapidly. Consider consolidating."
}
Ce n'est pas un job cron. C'est un système nerveux en temps réel. Le cerveau devient « anxieux » quand les connaissances deviennent instables — exactement comme le stress épistémique biologique.
Le cortex émotionnel
La dernière pièce : tous les souvenirs ne doivent pas être traités de la même façon.
Quand un souvenir est stocké, Tokyo Brain calcule automatiquement un score de saillance émotionnelle (0.0 - 1.0) :
"Oscar rode a bike for the first time. The whole family celebrated. Mom cried." → salience: 0.85 "Caddy upgraded from 2.10 to 2.11.2. Reverse proxy restarted on port 443." → salience: 0.30 "Decided Tokyo Brain's business model: free software + paid memory. This is our North Star strategy." → salience: 0.75
Lors du rappel, les souvenirs avec une saillance > 0.5 obtiennent un boost de distance allant jusqu'à 30%. La première fois que votre enfant fait du vélo surclassera toujours un changement de configuration serveur.
Le scoring utilise des heuristiques basées sur des patterns (mentions familiales, jalons, décisions stratégiques) — pas besoin de LLM, zéro latence sur chaque opération de stockage.
Le Cortex Cryptographique
Chaque modification de mémoire est signée cryptographiquement et enregistrée. Cela crée une piste d'audit inviolable que personne — y compris nous — ne peut modifier après coup.
- SHA-256 Hash — chaque mémoire obtient une empreinte de contenu unique au moment de l'écriture
- Signature Numérique — chaque mutation est signée avec une clé de portefeuille compatible Ethereum
- Chaîne de Preuves — historique complet des mutations : qui a changé quoi, quand et pourquoi
- Vérification — n'importe qui peut vérifier l'intégrité d'une mémoire via l'endpoint
/verify
Cela signifie : si un agent IA a pris une décision basée sur une mémoire il y a six mois, vous pouvez prouver que cette mémoire n'a pas été falsifiée depuis. Prêt pour l'audit d'entreprise.
Le Triangle de Sécurité
Trois mécanismes de sécurité codés en dur qu'aucun score de confiance ne peut outrepasser :
Mémoire Multimodale
Tokyo Brain ne stocke pas que du texte. Il accepte des charges sensorielles unifiées — texte, caractéristiques audio et contexte visuel dans une seule mémoire :
{
"sensory_inputs": {
"text_transcript": "I'm fine, I'll handle it.",
"audio_features": { "speaker_id": "Chia", "tone": "exhausted" },
"visual_features": { "scene_context": "messy_living_room", "facial_expression": "fatigued" }
}
}
Le système synthétise un récit multimodal pour l'embedding : [Speaker: Chia] [Tone: exhausted] [Visual: messy_living_room] Spoken: "I'm fine" — permettant la recherche par émotion, scène ou locuteur, pas seulement par mots-clés.
Écosystème de Frameworks
Adaptateurs plug-and-play pour les quatre principaux frameworks d'agents IA. Deux lignes à échanger :
# LangChain from tokyo_brain.langchain import TokyoBrainMemory # CrewAI from tokyo_brain.crewai import TokyoBrainCrewMemory # AutoGen from tokyo_brain.autogen import TokyoBrainAutoGenMemory # LlamaIndex from tokyo_brain.llamaindex import TokyoBrainRetriever
Votre code d'agent existant reste exactement le même. Vous échangez simplement le backend de mémoire.
Ce que nous ne faisons pas (et pourquoi c'est important)
- Pas d'approche « tout stocker ». Le Sanitizer intégré filtre le contenu à faible signal avant le stockage. Nous croyons qu'un filtrage agressif produit un meilleur rappel que l'accumulation de tout.
- Pas de dépendance au fournisseur. BYOK (Bring Your Own Key) — utilisez votre propre fournisseur LLM. Nous ne facturons que l'infrastructure de mémoire, jamais le calcul.
- Chiffrement par défaut. Chiffrement AES-256-GCM au repos. Isolation des clés par locataire. C'était une exigence de conception dès le premier jour.
- Pas de biais anglophone. Embeddings BGE-m3 + support de plus de 50 langues. Interrogez en chinois, récupérez des souvenirs stockés en anglais.
Les lacunes honnêtes
Nous croyons en l'ingénierie transparente, voici donc ce que Tokyo Brain n'a pas encore :
- Pas de mémoire multimodale — texte uniquement. Images, audio et vidéo sont dans la feuille de route.
- Pas de partage de connaissances entre utilisateurs — chaque locataire est entièrement isolé. La fédération est prévue.
- Détection émotionnelle limitée — basée sur des patterns, pas sur un LLM. Fonctionne bien pour les patterns connus, manque les contextes émotionnels nouveaux.
- Petite base d'utilisateurs — nous sommes en alpha. Le système fonctionne, le benchmark le prouve, mais nous avons besoin de plus de validation en conditions réelles.
- Latence de rappel — ~5s sous charge concurrente (embedding limité par le CPU sur une seule instance EC2, pas de GPU). Nous avons optimisé la profondeur de traitement plutôt que la vitesse brute.
Résumé de l'architecture
Store Path:
Input → Sanitizer → Emotional Salience → Fact Extraction
→ BGE-m3 Embedding → ChromaDB → Entropy Monitor
Recall Path:
Query → Expansion → Entity Link → Temporal Parse
→ Multi-Collection Search → Curated Boost → Time Decay
→ Emotional Boost → Temporal Filter → Re-rank → Dedup
Background:
3:00 AM — Night Cycle v2 (scan for issues)
3:10 AM — MRA Engine (three-persona debate + auto-resolve)
Real-time — Entropy Monitor (knowledge stability tracking)
Essayez-le
pip install tokyo-brain
from tokyo_brain import TokyoBrain
brain = TokyoBrain(api_key="your-key")
# Store a memory
brain.store("Oscar rode his bike for the first time today")
# Recall with full 10-layer pipeline
results = brain.recall("What happened with Oscar recently?")
# → Returns Oscar's bike ride (salience: 0.85), not your server logs
Trois lignes pour donner à votre IA un hippocampe, une amygdale et un subconscient.
Vous utilisez déjà LangChain ? Échange en deux lignes :
# Before (goldfish memory): from langchain.memory import ConversationBufferMemory memory = ConversationBufferMemory() # After (10-layer brain with subconscious): from tokyo_brain.langchain import TokyoBrainMemory memory = TokyoBrainMemory(api_key="tb-...") # That's it. Your chain code stays exactly the same.
Fonctionne également comme Retriever pour les chaînes RAG et comme ChatMessageHistory pour les sessions persistantes.
PyPI : tokyo-brain 0.1.0