Gérez les magasins de mémoire dans Memory Storage Service, notamment la création, l'interrogation, la liste, la mise à jour et la suppression.
Prérequis
Vous avez créé une instance AgentStorage et obtenu l'endpoint ainsi que le nom de l'instance.
Le SDK Agent Storage est installé : Python ≥
1.0.10, TypeScript ≥0.0.13
Créer un magasin de mémoire
Un magasin de mémoire est le conteneur de niveau supérieur pour les données de mémoire. Lors de sa création, vous spécifiez le type d'entrée (origine des données) et le type de sortie (format de stockage de la mémoire).
|
Paramètre |
Description |
|
Nom |
Lettres, chiffres et traits de soulignement, jusqu'à 32 caractères. Doit être unique au sein de la même instance. |
|
Description |
Décrit l'objectif du magasin de mémoire, jusqu'à 1024 caractères. |
|
Type d'entrée |
|
|
Type de sortie |
|
|
Instructions d'extraction |
Guide l'extraction de la mémoire structurée, jusqu'à 4096 caractères. |
Le type d'entrée et le type de sortie doivent être compatibles : une entrée messages peut être associée à ["structured"], ["file"] ou ["structured","file"] ; une entrée file ne peut être associée qu'à ["file"]. Si aucun type n'est spécifié, la configuration par défaut est une entrée messages avec une sortie structured.
Console
Connectez-vous à la console Agent Storage, accédez à Memory store management et cliquez sur Create memory store.
Saisissez un nom (doit commencer par une lettre et contenir uniquement des lettres, des chiffres et des traits de soulignement, jusqu'à 32 caractères) ainsi qu'une description.
Sélectionnez le input type : messages à court terme ou fichier.
Sélectionnez le output type : mémoire structurée, mémoire de fichier ou les deux.
Saisissez éventuellement des extract instructions (pour guider l'extraction de la mémoire structurée).
Cliquez sur OK pour créer le magasin de mémoire.
SDK
Python
from tablestore_agent_storage import AgentStorageClient
client = AgentStorageClient(
api_key="<your-api-key>",
ots_endpoint="https://<instance>.<region>.ots.aliyuncs.com",
ots_instance_name="<instance-name>",
)
# Create a memory store: messages input, structured + file output
client.create_memory_store({
"memoryStoreName": "agent_memory",
"description": "Agent long-term memory store",
"inputType": "messages",
"outputTypes": ["structured", "file"],
"extractInstructions": "Focus on user dietary preferences and travel habits",
})
TypeScript
import { AgentStorageClient } from '@tablestore/agent-storage';
const client = new AgentStorageClient({
apiKey: '<your-api-key>',
endpoint: 'https://<instance>.<region>.ots.aliyuncs.com',
instanceName: '<instance-name>',
});
await client.createMemoryStore({
memoryStoreName: 'agent_memory',
description: 'Agent long-term memory store',
inputType: 'messages',
outputTypes: ['structured', 'file'],
extractInstructions: 'Focus on user dietary preferences and travel habits',
});
API
Appelez CreateMemoryStore pour créer un magasin de mémoire. Pour connaître l'ensemble des champs de requête et les détails de la réponse, consultez la rubrique Créer un magasin de mémoire.
Interroger les détails d'un magasin de mémoire
Interrogez la configuration complète d'un magasin de mémoire spécifié, y compris le nom, la description, le type d'entrée/sortie et les instructions d'extraction.
Console
Sur la page Memory store management, cliquez sur la carte du magasin de mémoire cible pour afficher ses détails, ou accédez aux informations de base (nom, mode de stockage, heure de création, description, instructions d'extraction) via ··· > Details/Settings dans le coin supérieur droit de la carte.
SDK
Python
from tablestore_agent_storage import AgentStorageClient
client = AgentStorageClient(
api_key="<your-api-key>",
ots_endpoint="https://<instance>.<region>.ots.aliyuncs.com",
ots_instance_name="<instance-name>",
)
resp = client.get_memory_store({"memoryStoreName": "agent_memory"})
data = resp["data"] if "data" in resp else resp
print(f"Name: {data.get('memoryStoreName')}")
print(f"Input type: {data.get('inputType')}, Output type: {data.get('outputTypes')}")
TypeScript
import { AgentStorageClient } from '@tablestore/agent-storage';
const client = new AgentStorageClient({
apiKey: '<your-api-key>',
endpoint: 'https://<instance>.<region>.ots.aliyuncs.com',
instanceName: '<instance-name>',
});
const resp = await client.getMemoryStore({ memoryStoreName: 'agent_memory' });
const data = resp.data ?? resp;
console.log(data.memoryStoreName, data.inputType, data.outputTypes);
API
Appelez GetMemoryStore pour interroger les détails d'un magasin de mémoire. Pour connaître l'ensemble des champs, consultez la rubrique Interroger un magasin de mémoire.
Lister les magasins de mémoire
Parcourez de manière paginée tous les magasins de mémoire sous l'instance actuelle.
Console
Sur la page Memory store management, vous pouvez consulter directement la liste de tous les magasins de mémoire, y compris le nom, le mode de stockage et l'heure de création.
SDK
Python
from tablestore_agent_storage import AgentStorageClient
client = AgentStorageClient(
api_key="<your-api-key>",
ots_endpoint="https://<instance>.<region>.ots.aliyuncs.com",
ots_instance_name="<instance-name>",
)
resp = client.list_memory_stores({})
stores = resp.get("stores", [])
for s in stores:
print(f"{s['memoryStoreName']} | Input:{s.get('inputType')} Output:{s.get('outputTypes')}")
TypeScript
import { AgentStorageClient } from '@tablestore/agent-storage';
const client = new AgentStorageClient({
apiKey: '<your-api-key>',
endpoint: 'https://<instance>.<region>.ots.aliyuncs.com',
instanceName: '<instance-name>',
});
const resp = await client.listMemoryStores({});
for (const s of resp.stores) {
console.log(s.memoryStoreName, s.inputType, s.outputTypes);
}
API
Appelez ListMemoryStores pour lister les magasins de mémoire. Pour connaître l'ensemble des champs, consultez la rubrique Lister les magasins de mémoire.
Mettre à jour un magasin de mémoire
Mettez à jour la description, les instructions d'extraction ou le type de sortie d'un magasin de mémoire.
outputTypesutilise des mises à jour par remplacement. La valeur transmise remplace entièrement l'ensemble existant des types de sortie.inputTypene peut pas être modifié. Une chaîne vide permet d'effacerdescriptionetextractInstructions.
Console
Accédez aux Settings du magasin de mémoire cible, cliquez sur Modify et mettez à jour la description, les instructions d'extraction ou le type de sortie.
SDK
Python
from tablestore_agent_storage import AgentStorageClient
client = AgentStorageClient(
api_key="<your-api-key>",
ots_endpoint="https://<instance>.<region>.ots.aliyuncs.com",
ots_instance_name="<instance-name>",
)
client.update_memory_store({
"memoryStoreName": "agent_memory",
"description": "Updated description",
"extractInstructions": "Focus on user preferences and travel habits",
"outputTypes": ["structured", "file"],
})
TypeScript
import { AgentStorageClient } from '@tablestore/agent-storage';
const client = new AgentStorageClient({
apiKey: '<your-api-key>',
endpoint: 'https://<instance>.<region>.ots.aliyuncs.com',
instanceName: '<instance-name>',
});
await client.updateMemoryStore({
memoryStoreName: 'agent_memory',
description: 'Updated description',
extractInstructions: 'Focus on user preferences and travel habits',
outputTypes: ['structured', 'file'],
});
API
Appelez UpdateMemoryStore pour mettre à jour un magasin de mémoire. Pour connaître l'ensemble des champs, consultez la rubrique Mettre à jour un magasin de mémoire.
Supprimer un magasin de mémoire
Cette opération est irréversible. La suppression d'un magasin de mémoire entraîne également la suppression de toutes les données de mémoire et de fichiers qu'il contient.
Console
Dans le coin supérieur droit de la carte du magasin de mémoire, cliquez sur et confirmez l'opération selon les instructions affichées. La suppression efface toutes les données du magasin de mémoire.
SDK
Python
from tablestore_agent_storage import AgentStorageClient
client = AgentStorageClient(
api_key="<your-api-key>",
ots_endpoint="https://<instance>.<region>.ots.aliyuncs.com",
ots_instance_name="<instance-name>",
)
client.delete_memory_store({"memoryStoreName": "agent_memory"})
TypeScript
import { AgentStorageClient } from '@tablestore/agent-storage';
const client = new AgentStorageClient({
apiKey: '<your-api-key>',
endpoint: 'https://<instance>.<region>.ots.aliyuncs.com',
instanceName: '<instance-name>',
});
await client.deleteMemoryStore({ memoryStoreName: 'agent_memory' });
API
Appelez DeleteMemoryStore pour supprimer un magasin de mémoire. Pour connaître l'ensemble des champs, consultez la rubrique Supprimer un magasin de mémoire.