Interface IMemory
L'interface IMemory définit une abstraction pour stocker, rechercher et gérer des entrées mémorielles
Objectif de l'interface
Définition de l’interface
/**
* Interface pour la gestion de la mémoire d'un agent
*/
export interface IMemory {
/**
* Initialise le service mémoire avec les configurations requises
* @returns {Promise<void>}
*/
init(): Promise<void>;
/**
* Crée une nouvelle entrée mémoire.
* @param {MemoryInput} input - Données de la mémoire à enregistrer.
* @returns {Promise<MemoryEntry | undefined>} Retourne l’entrée créée, ou `undefined` en cas d’échec.
*/
createMemory(input: MemoryInput): Promise<MemoryEntry | undefined>;
/**
* Récupère une entrée mémoire par son identifiant.
* @param {string} id - Identifiant unique de la mémoire.
* @param {string} roomId - Identifiant de la session ou du contexte.
* @returns {Promise<MemoryEntry | null>} Retourne l'entrée mémoire si trouvée, sinon `null`.
*/
getMemoryById(id: string, roomId: string): Promise<MemoryEntry | null>;
/**
* Effectue une recherche d’entrées mémoire selon une requête textuelle.
* @param {string} query - Texte de la requête.
* @param {MemorySearchOptions} options - Options de recherche.
* @returns {Promise<MemoryEntry[]>} Retourne une liste d'entrées mémorielles correspondantes.
*/
searchMemory(
query: string,
options: MemorySearchOptions
): Promise<MemoryEntry[]>;
/**
* Récupère toutes les mémoires associées à un `roomId`.
* @param {string} roomId - Identifiant de la session.
* @returns {Promise<MemoryEntry[]>} Liste des entrées mémorielles.
*/
getAllMemories(roomId: string): Promise<MemoryEntry[]>;
/**
* Supprime une entrée mémoire spécifique.
* @param {string} id - Identifiant de la mémoire.
* @param {string} roomId - Identifiant de la session.
* @returns {Promise<void>}
*/
deleteMemoryById(id: string, roomId: string): Promise<void>;
/**
* Supprime toutes les entrées mémorielles d'un `roomId`.
* @param {string} roomId - Identifiant de la session.
* @returns {Promise<void>}
*/
clearMemories(roomId: string): Promise<void>;
}Interfaces associées
1. MemoryInput : Données pour une nouvelle entrée mémoire
MemoryInput : Données pour une nouvelle entrée mémoire2. MemoryEntry : Représentation d’une mémoire stockée
MemoryEntry : Représentation d’une mémoire stockée3. MemorySearchOptions : Options de recherche avancées
MemorySearchOptions : Options de recherche avancéesPourquoi cette interface ?
Cas d’usage
Mis à jour