Mémoire attribuée
Stockez ce dont un agent se souvient sous forme d'enregistrements indiquant leur origine, un propriétaire capable de les supprimer et une durée de vie — jamais sous la forme d'un bloc de texte anonyme. La mémoire est ce qui transforme une attaque ponctuelle en une attaque qui se déclenche à nouveau sur des tâches futures et non liées ; l'attribution est ce qui rend cela réversible.
Définition
La mémoire attribuée est la pratique consistant à écrire chaque mémoire persistante d'un agent sous forme d'enregistrement avec sa provenance (d'où provient l'affirmation et de quelle autorité elle émane), un propriétaire désigné qui peut la supprimer et une expiration — de sorte qu'un fait erroné puisse être tracé, supprimé et, à défaut, disparaisse de lui-même.
Problème
Un agent qui écrit du texte libre dans une mémoire persistante ne peut pas savoir plus tard quelles mémoires lui ont été dictées, lesquelles ont été lues sur la page web d'un inconnu, et lesquelles ont été déduites. Une seule écriture empoisonnée réapparaît alors comme un contexte de confiance dans des tâches qui n'ont rien à voir avec la conversation qui l'a implantée.
Quand l'utiliser
Utilisez-la partout où la mémoire survit à la session qui l'a créée : assistants qui mémorisent des préférences, agents qui accumulent l'état d'un projet, tout espace de stockage de récupération dans lequel l'agent lui-même écrit. Plus la rétention est longue et plus le corpus rédigé par l'agent est important, plus la mémoire doit être un stockage d'enregistrements structurés plutôt qu'un bloc-notes.
Solution
Refusez les écritures anonymes. Chaque enregistrement indique d'où provient l'affirmation — la session et le tour de parole, l'outil ou le document, et l'URL si elle provient de l'extérieur — sous forme de champs structurés, et non de phrase au sein du texte.
Enregistrez l'autorité dont émane l'affirmation. Un fait configuré par l'opérateur, un fait affirmé par l'utilisateur final et un fait lu par l'agent sur une page tierce sont trois affirmations différentes ; gardez la classe explicite afin que le chemin de récupération puisse les pondérer et qu'un réviseur puisse les trier.
Attribuez une durée de vie à chaque enregistrement, et définissez-la par défaut comme courte. Une mémoire qui n'expire jamais est une mémoire que personne ne révisera, et c'est la demi-vie d'une écriture empoisonnée qui détermine combien de temps une attaque reste efficace.
Faites de la suppression une opération de premier ordre avec un propriétaire désigné, et assurez sa propagation. Supprimer l'enregistrement ne suffit pas si l'affirmation survit dans un plongement (embedding), un résumé en cache ou un profil dérivé.
Traitez le chemin d'écriture comme une action. Les écritures en mémoire modifient le comportement futur, elles doivent donc passer par les mêmes processus d'autorisation et de journalisation que toute autre écriture — et non par une porte dérobée sous prétexte que la destination s'avère être un fichier.
Ne laissez jamais une mémoire récupérée réintégrer le prompt sous forme d'instruction. Elle arrive en tant que donnée accompagnée d'une origine, et un enregistrement dont l'origine est un tiers est traité exactement comme une entrée non fiable provenant de ce tiers.
Composants
Avantages
- Rend l'empoisonnement de la mémoire réversible : vous pouvez retrouver l'écriture, voir d'où elle provient et supprimer tout ce qui en découle.
- Transforme la question « que croit cet agent à mon sujet ? » en une question dotée d'une réponse lisible par un humain.
- Permet à la récupération de pondérer une affirmation en fonction de son origine plutôt que du niveau d'assurance avec lequel le texte a été rédigé.
- Satisfait aux obligations de conservation et d'effacement applicables à toute donnée persistante concernant une personne, sans nécessiter de mécanisme distinct greffé ultérieurement.
Risques
- Le simulacre de provenance : un champ d'origine qui indique systématiquement « agent », ce qui ne documente rien et donne seulement l'illusion d'un contrôle.
- Le blanchiment par compaction — la manière la plus courante dont l'attribution disparaît. Résumer dix enregistrements attribués en un seul paragraphe produit une affirmation non attribuée qui ressemble désormais à un consensus.
- La suppression partielle : l'enregistrement principal disparaît, le vecteur reste, et l'affirmation continue d'être récupérée.
- Une expiration excessive détruisant la continuité pour laquelle la mémoire existait, ce qui pousse les utilisateurs à désactiver complètement l'expiration.
Quand ne pas l'utiliser
- Agents à session unique sans persistance : il n'y a pas de mémoire à attribuer, et ce formalisme n'apporte rien.
- Lorsque le stockage est un cache de votre propre système d'enregistrement déjà gouverné — attribuez le système source une seule fois, et non chaque ligne dérivée.
- Lorsque la surcharge inciterait les opérateurs à conserver les véritables notes en dehors du système, ce qui est bien pire qu'un enregistrement imparfait à l'intérieur de celui-ci.
Technologies
Exemples
- Un assistant qui écrit « préfère les unités métriques ». L'enregistrement contient l'ID de session et le tour de parole où l'utilisateur l'a mentionné, de sorte qu'une mauvaise préférence peut être tracée jusqu'à la phrase qui l'a causée et supprimée.
- Un agent de recherche qui lit une page tierce et stocke une affirmation étiquetée « observée à cette URL, à cette date », jamais comme un fait établi. Lorsque la même affirmation est récupérée des mois plus tard, son origine l'accompagne.
- Un agent de support dont les enregistrements en mémoire expirent par défaut au bout de 90 jours, avec une durée de vie plus longue uniquement pour les entrées explicitement confirmées par un humain — de sorte que la majorité non révisée expire et que la minorité révisée persiste.
KPI
- Part des écritures attribuées
- Part des enregistrements en mémoire portant une origine lisible par machine. En dessous de 100 %, le stockage ne peut pas indiquer d'où provient une affirmation, ce qui annule l'intérêt même du contrôle.
- Âge médian des enregistrements
- L'âge réel de la mémoire exploitée. Une médiane en hausse sans suppressions signifie que le stockage accumule les données plutôt que d'être géré.
- Délai de propagation de la suppression
- Temps écoulé entre la suppression d'un enregistrement et le moment où l'affirmation cesse d'être récupérable à partir de tout artefact dérivé. La fenêtre durant laquelle une affirmation supprimée continue d'agir.
- Part des expirations respectant le calendrier
- Part des enregistrements ayant atteint leur expiration et ayant été effectivement supprimés. Preuve que la durée de vie est réelle et non simplement déclarée.
Modes de défaillance observés
- Empoisonnement à retardement : un fait erroné implanté dans une conversation refait surface dans une tâche non liée des semaines plus tard, sans que rien dans le contexte n'explique pourquoi l'agent y croit.
- Survie dans le résumé : l'enregistrement est supprimé, mais pas le résumé compacté qui l'a absorbé, et l'affirmation survit à sa propre source.
- Index fantôme : le plongement (embedding) d'un enregistrement supprimé reste interrogeable, de sorte que la suppression a réussi partout où l'auditeur a regardé, mais nulle part où cela importait.
- Fuite d'identité : une mémoire indexée de manière trop lâche, de sorte que l'enregistrement d'un utilisateur est récupéré pour un autre, transformant un défaut de conception de la mémoire en une divulgation de données.
Leçons apprises
- L'attribution is peu coûteuse au moment de l'écriture et impossible à reconstruire plus tard. Le champ doit exister avant l'affirmation.
- Chaque étape de compaction est une frontière d'attribution. Si le module de résumé ne peut pas transmettre les origines, il produit de nouvelles affirmations sans source.
- Une expiration que personne n'a jamais vue se déclencher est une politique, pas un contrôle.
- La suppression n'est complète qu'à la mesure de l'artefact dérivé que vous avez oublié.
FAQ
- N'est-ce pas simplement une politique de conservation avec des étapes supplémentaires ?
- La conservation détermine quand les données disparaissent. L'attribution détermine d'où provient une affirmation et qui peut la supprimer, ce qui est indispensable dès lors qu'une mémoire s'avère erronée et non pas seulement ancienne. Les deux sont complémentaires : sans expiration, l'attribution s'accumule ; sans attribution, l'expiration supprime des preuves que vous n'avez jamais comprises.
- L'agent écrit ses propres mémoires. De quelle autorité émanent-elles ?
- La sienne, et c'est précisément la classe qu'il convient de nommer. Une affirmation déduite par l'agent est plus faible qu'une affirmation configurée par l'opérateur et doit pouvoir être récupérée comme telle — sinon, les propres suppositions du modèle reviennent plus tard sans distinction possible de la configuration.
- Comment conserver la provenance à travers la production de résumés ?
- Soit le résumé porte l'union des origines de ses sources, soit il est écrit comme un nouvel enregistrement déduit par l'agent pointant vers ceux qu'il a remplacés. Ce qui ne doit pas se produire, c'est que le résumé devienne discrètement un fait sans source, car c'est à cette étape que l'empoisonnement devient permanent.