tablestore-agent-cli est l'outil en ligne de commande publié par le service Knowledge and Memory Storage. Il permet de gérer et d'exploiter les bases de connaissances et les magasins de mémoire, et convient aux scénarios de débogage en développement, d'exploitation et de gouvernance des données.
Démarrage rapide
Téléchargez et installez l'outil en ligne de commande, configurez vos identifiants d'accès, puis commencez à gérer les ressources de base de connaissances et de magasin de mémoire.
Installation
L'outil en ligne de commande est publié sur le registre npm. Installez-le globalement avec npm.
Prérequis : Node.js 18 ou version ultérieure.
npm install -g @tablestore/tablestore-agent-cli --registry=https://registry.npmjs.org/
tablestore-agent-cli version
URL du package npm : https://www.npmjs.com/package/@tablestore/tablestore-agent-cli.
Tableau de bord
L'outil en ligne de commande intègre un tableau de bord web basé sur Next.js, qui propose des fonctionnalités de configuration ainsi qu'une interface visuelle de gestion et de débogage des requêtes pour les bases de connaissances et les magasins de mémoire.
Démarrer le tableau de bord
tablestore-agent-cli dashboard start # Default: listens on 127.0.0.1:3000
tablestore-agent-cli dashboard start -p 9999 # Custom port
tablestore-agent-cli dashboard start --host 0.0.0.0 # Custom bind address
Une fois démarré, ouvrez l'adresse correspondante dans votre navigateur.
Règles de sélection de la portée du magasin de mémoire
Lorsque vous accédez à un magasin de mémoire spécifique depuis le tableau de bord, la portée par défaut est */*/*/*. Dans ce cas, seules les opérations liste de toutes les mémoires à long terme et audit des requêtes sont prises en charge.
Pour effectuer une récupération de mémoire, vous devez spécifier AppId et TenantId. Les paramètres AgentId et RunId peuvent être définis sur des valeurs spécifiques ou utiliser le caractère générique *.
Pour ajouter une nouvelle mémoire, vous devez spécifier la portée complète (tous les paramètres AppId, TenantId, AgentId et RunId doivent avoir des valeurs spécifiques).
Configurer les identifiants d'accès
Si vous n'utilisez pas le tableau de bord, vous pouvez configurer manuellement les identifiants d'accès et vérifier la connectivité.
Configuration requise
Configurez l'ID de clé d'accès (AccessKey ID) et la clé secrète d'accès (AccessKey Secret) de votre compte Alibaba Cloud. Pour savoir comment obtenir une AccessKey, consultez la rubrique Créer une AccessKey.
tablestore-agent-cli configure set access_key_id 'LTAI5t...'
tablestore-agent-cli configure set access_key_secret 'xxx'
Configuration facultative
Configurez les éléments suivants selon vos besoins.
Instance Tablestore
tablestore-agent-cli configure set ots_endpoint 'https://xxx.cn-beijing.ots.aliyuncs.com'
tablestore-agent-cli configure set ots_instance_name 'xxx'
Si vous ne configurez pas d'instance Tablestore, l'outil en ligne de commande crée automatiquement une instance gérée dans la région Chine (Pékin) et y accède via le point de terminaison public. Le processus de création automatique peut prendre jusqu'à 30 secondes. Pour spécifier une région, configurez le paramètre region :
tablestore-agent-cli configure set region 'cn-beijing'
Bucket OSS
La configuration du bucket OSS est uniquement nécessaire pour la fonctionnalité de téléchargement de documents des bases de connaissances.
La base de connaissances nécessite des autorisations de lecture et d'écriture sur le bucket OSS. Accordez ces autorisations en un seul clic via le lien suivant : Autoriser Tablestore à lire et écrire dans OSS.
tablestore-agent-cli configure set oss_endpoint 'https://oss-cn-hangzhou.aliyuncs.com'
tablestore-agent-cli configure set oss_bucket_name 'my-bucket'
Portée par défaut du magasin de mémoire
tablestore-agent-cli configure set memory_store_name 'agent_memory'
tablestore-agent-cli configure set memory_app_id 'app-001'
tablestore-agent-cli configure set memory_tenant_id 'tenant-001'
tablestore-agent-cli configure set memory_agent_id 'agent-001'
tablestore-agent-cli configure set memory_run_id 'run-001'
Après avoir configuré une portée par défaut, les commandes relatives au magasin de mémoire peuvent omettre les paramètres correspondants.
Vérifier la connectivité
Exécutez la commande doctor pour vérifier la configuration et la connectivité.
tablestore-agent-cli doctor # Full diagnosis
tablestore-agent-cli doctor kb # Knowledge base only
tablestore-agent-cli doctor memory # Memory store only
Chaque résultat de vérification affiche pass / warn / fail / skip. Le code de sortie est 0 si toutes les vérifications réussissent, et 1 si au moins une vérification échoue.
La commande doctor crée et réutilise automatiquement une instance Tablestore gérée et un bucket OSS si nécessaire. Pour plus d'informations, consultez la rubrique Création automatique d'instance gérée.
Exemples
Une fois l'installation et la configuration terminées, utilisez les exemples suivants pour tester rapidement les fonctionnalités principales des bases de connaissances et des magasins de mémoire.
Exemple de base de connaissances : créer une base de connaissances et télécharger des documents
# Create a knowledge base
tablestore-agent-cli kb create --name my_kb --description "Product documentation knowledge base"
# Add a local document
tablestore-agent-cli kb doc-add --kb my_kb --file ./report.pdf
# Semantic retrieval
tablestore-agent-cli kb retrieve --kb my_kb --query "System architecture design"
Exemple de magasin de mémoire : écrire et récupérer des mémoires
# Create a memory store
tablestore-agent-cli memory create --store agent_memory --description "Long-term memory store"
# Write a memory entry
tablestore-agent-cli memory add --store agent_memory --app-id app-001 --text "The user likes mapo tofu"
# Retrieve memories
tablestore-agent-cli memory search --store agent_memory --app-id app-001 --tenant-id tenant-001 --query "What food does the user like" --top-k 5
Configuration avancée
Emplacement du fichier de configuration
~/.config/tablestore-agent-cli/config.toml. Les permissions du fichier sont automatiquement définies sur 0600.
Variables d'environnement
Les variables d'environnement ont priorité sur le fichier de configuration.
|
Variable d'environnement |
Élément de configuration correspondant |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Création automatique d'instance gérée
Si vous ne configurez pas les paramètres ots_endpoint et ots_instance_name, l'outil en ligne de commande crée et réutilise automatiquement une instance Tablestore gérée lors de l'exécution de la commande doctor ou d'opérations réelles. Le processus de création peut prendre jusqu'à 30 secondes. Le résultat est enregistré dans la section [managed_ots] du fichier de configuration et réutilisé par les commandes suivantes. Lorsque vous définissez manuellement une cible explicite, le cache géré est automatiquement effacé.
Le même principe s'applique au bucket OSS. Il est créé automatiquement à la demande lors des opérations de téléchargement, telles que doctor kb ou kb doc-add, et mis en cache dans la section [managed_oss] du fichier de configuration.
Gestion multi-instances
Vous pouvez enregistrer plusieurs instances nommées dans le même fichier de configuration et basculer rapidement entre elles à l'aide de la ligne de commande ou du sélecteur situé en haut du tableau de bord.
# Configure an AccessKey for a specific instance
tablestore-agent-cli configure set --instance prod access_key_id 'LTAI...'
# Switch the active instance
tablestore-agent-cli configure use prod
# View the current configuration
tablestore-agent-cli configure show
Cette fonctionnalité est utile pour basculer rapidement entre plusieurs environnements, tels que la production, la préproduction et les tests.