Modéliser les personnes comme entités de premier ordre dans la mémoire d'un agent
La mémoire vectorielle plate ne peut pas répondre aux questions relationnelles comme « comment évolue ma relation avec X ? ». La couche d'entités d'iRemember : résolution d'alias multilingue, profils évolutifs, chronologies de sentiment et confidentialité par construction.

Demandez à un assistant à mémoire vectorielle plate « comment évolue ma relation avec mon associé ? » et regardez-le échouer. Les preuves existent — vingt souvenirs dispersés mentionnent Karim, Karim M., « mon associé » et « il » — mais la recherche par similarité renvoie des fragments, jamais une tendance.
C'est pourquoi iRemember modélise les personnes comme entités de premier ordre. Chaque IA se souvient de vous ; presque aucune ne se souvient des personnes autour de vous. Ce vide, c'est là que vit réellement la personnalisation.
La couche d'entités entre le chat et la mémoire
La position dans la pipeline compte. Les entités se résolvent pendant l'extraction (dans la pipeline LangGraph), pas au moment de la requête :
mémoire candidate : "Karim s'est excusé d'avoir manqué le dîner de lancement"
-> resolution_entites : "Karim" == person:karim_m (correspondance d'alias)
-> ecriture memoire(entite=karim_m, type=relation, sentiment=-0.2)
-> maj profil(karim_m) : evenements_recents += excuses ; tendance mise a jour
Chaque nœud personne porte : nom canonique + alias, type de relation, traits stables, engagements en cours et chronologie de sentiment agrégée depuis les mémoires de type relation.
La résolution d'alias multilingue
La vraie vie est multilingue. La même personne apparaît comme « Youssef », « يوسف », « yoss » et « mon cousin ». Les signaux déterministes (téléphone partagé, lien explicite) fusionnent avec confiance ; les correspondances ambiguës passent par un jugement LLM avec défaut conservateur : dans le doute, garder séparé. Une personne mal fusionnée corrompt toutes les réponses en aval ; une entité divisée perd seulement un peu d'agrégation jusqu'à correction.
Les requêtes relationnelles deviennent des parcours
Avec le graphe en place, « ma relation avec Karim s'est-elle améliorée depuis le printemps ? » se décompose proprement :
- Résoudre karim_m
- Extraire les mémoires de type relation dans la plage
- Agréger la chronologie de sentiment
- Répondre avec les mémoires citées attachées
Pas de magie. Le moteur de requêtes cesse d'être « espérer que les bons chunks arrivent dans le top-k » pour devenir de la navigation dans une structure — la même intuition qui guide la recherche RAG guidée par ontologies en 2026.
Confidentialité par construction
Les profils concentrent des inférences sensibles sur des tiers qui n'ont jamais consenti à être mémorisés. Non négociables :
- Profils cloisonnés par utilisateur ; rien ne traverse les comptes
- Catégories d'inférence sensibles exclues dès l'extraction, pas filtrées après coup
- Export et suppression complets, données dérivées incluses, pas seulement les mémoires brutes
La confiance est le produit ici. Un système de mémoire auquel on ne peut confier des noms est un système auquel on ne donnera rien qui vaille la peine d'être retenu.
Et ensuite
Le point d'arrivée naturel : des graphes de connaissances temporels sur les personnes — entités, relations, intervalles de validité — avec un routage de récupération entre chemins graphe-d'abord (questions relationnelles) et vecteur-d'abord (consultations de faits), conscient du budget. Ce routeur est notre prochaine construction.
FAQ
Pourquoi la mémoire vectorielle plate échoue-t-elle sur les questions liées aux personnes ?
Les preuves concernant une personne se dispersent dans des dizaines de souvenirs sous différents noms, pronoms et langues. La similarité vectorielle renvoie des fragments sans jamais les consolider : tendances, historiques et sentiments deviennent inanswerables.
Comment résoudre une même personne nommée différemment ?
La résolution combine des signaux déterministes (téléphone partagé, liens explicites) et des fusions jugées par LLM sur les variantes de noms, avec défaut conservateur : dans le doute, garder séparé plutôt que mal fusionner.
Quelles implications pour la vie privée ?
Sérieuses : les profils concentrent des inférences sensibles sur des tiers qui n'ont jamais consenti. Profils cloisonnés par utilisateur, catégories sensibles exclues dès l'extraction, export et suppression incluant les données dérivées.