Configuration de la mémoire
Vue d'ensemble
L'objet memory vous permet de configurer la mémoire de conversation et les fonctionnalités de personnalisation de l'application. Cette configuration contrôle la manière dont le système mémorise et personnalise les conversations, incluant les limites de jetons, les fenêtres de contexte des messages et le traitement de la mémoire basé sur des agents.
Exemple
memory:
disabled: false
validKeys: ['user_preferences', 'conversation_context', 'personal_info']
tokenLimit: 2000
charLimit: 10000
maxInputTokens: 12000
personalize: true
messageWindowSize: 5
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: 'You are a helpful assistant that remembers user preferences and context.'
model_parameters:
temperature: 0.7
max_tokens: 1000disabled
| Key | Type | Description | Example |
|---|---|---|---|
| disabled | Boolean | Désactive la fonctionnalité de mémoire lorsqu'elle est définie sur true. Lorsqu'elle est désactivée, le système ne stockera ni n'utilisera la mémoire de conversation. | disabled: false |
Par défaut : false
memory:
disabled: truevalidKeys
| Key | Type | Description | Example |
|---|---|---|---|
| validKeys | Array of Strings | Spécifie quelles clés sont valides pour le stockage en mémoire. Cela permet de contrôler quels types d'informations peuvent être stockés en mémoire. | validKeys: ["user_name", "preferences", "contexte"] |
Par défaut : Aucune restriction (toutes les clés sont valides)
memory:
validKeys:
- 'user_preferences'
- 'conversation_context'
- 'personal_information'
- 'learned_facts'tokenLimit
| Key | Type | Description | Example |
|---|---|---|---|
| tokenLimit | Number | Définit le nombre maximal de jetons pouvant être utilisés pour le stockage et le traitement de la mémoire. | tokenLimit: 2000 |
Par défaut : Aucune limite
memory:
tokenLimit: 2000charLimit
| Key | Type | Description | Example |
|---|---|---|---|
| charLimit | Number | Définit le nombre maximal de caractères autorisés pour les entrées de mémoire individuelles. Cela évite les charges utiles de mémoire trop volumineuses qui pourraient affecter les performances ou dépasser les limites de l'API. | charLimit: 10000 |
Par défaut : 10000
memory:
charLimit: 10000maxInputTokens
| Key | Type | Description | Example |
|---|---|---|---|
| maxInputTokens | Number | Définit le nombre maximal de jetons des discussions récentes envoyés à l'agent de mémoire automatique avant l'extraction de la mémoire. Les entrées longues sont tronquées à partir du début afin que le contexte le plus récent soit préservé. | maxInputTokens: 12000 |
Par défaut : 12000
memory:
maxInputTokens: 12000personalize
| Key | Type | Description | Example |
|---|---|---|---|
| personalize | Boolean | Lorsqu'il est défini sur true, donne aux utilisateurs la possibilité d'activer ou de désactiver l'utilisation des fonctionnalités de mémoire. Les utilisateurs peuvent activer/désactiver la mémoire dans leur interface de chat. Lorsqu'il est défini sur false, les fonctionnalités de mémoire sont complètement désactivées. | personalize: true |
Par défaut : true
memory:
personalize: falsemessageWindowSize
| Key | Type | Description | Example |
|---|---|---|---|
| messageWindowSize | Number | Spécifie le nombre de messages récents à inclure dans la fenêtre de contexte de la mémoire. | messageWindowSize: 5 |
Par défaut : 5
memory:
messageWindowSize: 10agent
| Key | Type | Description | Example |
|---|---|---|---|
| agent | Object | Union | Configure l'agent responsable du traitement de la mémoire. Peut être soit une référence à un agent existant par ID, soit une configuration d'agent complète. | agent: { provider: "openAI", model: "gpt-4" } |
Le champ agent prend en charge deux formats de configuration différents :
Agent par ID
Lorsque vous disposez d'un agent préconfiguré, vous pouvez y faire référence par son ID :
memory:
agent:
id: 'memory-agent-001'Configuration d'agent personnalisé
Pour plus de contrôle, vous pouvez définir une configuration d'agent complète :
memory:
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: 'You are a memory assistant that helps maintain conversation context and user preferences.'
model_parameters:
temperature: 0.3
max_tokens: 1500
top_p: 0.9Champs de configuration de l'agent
Lors de l'utilisation d'une configuration d'agent personnalisée, les champs suivants sont disponibles :
provider (requis)
| Key | Type | Description | Example |
|---|---|---|---|
| provider | String | Spécifie le fournisseur d'IA pour l'agent de mémoire. Peut être un fournisseur intégré (par ex. "openAI", "anthropic", "google") ou un nom de endpoint personnalisé. | provider: "openAI" |
model (requis)
| Key | Type | Description | Example |
|---|---|---|---|
| model | String | Spécifie le modèle à utiliser pour le traitement de la mémoire. | model: "gpt-4" |
instructions (optionnel)
| Key | Type | Description | Example |
|---|---|---|---|
| instructions | String | Instructions personnalisées qui remplacent les instructions par défaut pour définir et/ou supprimer la mémoire. À utiliser principalement avec des validKeys nécessitant un traitement spécifique des informations. | instructions: "Only store user preferences and facts when explicitly mentioned." |
model_parameters (optionnel)
| Key | Type | Description | Example |
|---|---|---|---|
| model_parameters | Object | Paramètres supplémentaires à transmettre au modèle pour affiner son comportement. Les valeurs doivent être des chaînes de caractères, des nombres ou des booléens. | model_parameters: { temperature: 0.7 } |
Exemple de configuration complète
Voici un exemple complet présentant toutes les options de configuration de la mémoire :
version: 1.3.10
cache: true
memory:
disabled: false
validKeys:
- 'user_preferences'
- 'conversation_context'
- 'learned_facts'
- 'personal_information'
tokenLimit: 3000
charLimit: 10000
maxInputTokens: 12000
personalize: true
messageWindowSize: 8
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: |
Store memory using only the specified validKeys. For user_preferences: save
explicitly stated preferences about communication style, topics of interest,
or workflow preferences. For conversation_context: save important facts or
ongoing projects mentioned. For learned_facts: save objective information
about the user. For personal_information: save only what the user explicitly
shares about themselves. Delete outdated or incorrect information promptly.
model_parameters:
temperature: 0.2
max_tokens: 2000
top_p: 0.8
frequency_penalty: 0.1Utilisation d'endpoints personnalisés
La fonctionnalité de mémoire prend en charge les endpoints personnalisés. Lors de l'utilisation d'un endpoint personnalisé, le champ provider doit correspondre exactement au name de l'endpoint personnalisé. Les en-têtes personnalisés avec des variables d'environnement et des espaces réservés utilisateur sont correctement résolus.
endpoints:
custom:
- name: 'Custom Memory Endpoint'
apiKey: 'dummy'
baseURL: 'https://api.gateway.ai/v1'
headers:
x-gateway-api-key: '${GATEWAY_API_KEY}'
x-gateway-virtual-key: '${GATEWAY_OPENAI_VIRTUAL_KEY}'
X-User-Identifier: '{{LIBRECHAT_USER_EMAIL}}'
X-Application-Identifier: 'LibreChat - Test'
api-key: '${TEST_CUSTOM_API_KEY}'
models:
default:
- 'gpt-4o-mini'
- 'gpt-4o'
fetch: false
memory:
disabled: false
tokenLimit: 3000
maxInputTokens: 12000
personalize: true
messageWindowSize: 10
agent:
provider: 'Custom Memory Endpoint'
model: 'gpt-4o-mini'- Consultez Custom Endpoint Headers pour voir tous les espaces réservés disponibles
Notes
- La fonctionnalité de mémoire améliore la continuité et la personnalisation des conversations
- Lorsque
personalizeest défini sur true, les utilisateurs disposent d'un commutateur dans leur interface de chat pour contrôler l'utilisation de la mémoire. - Les limites de jetons aident à contrôler l'utilisation de la mémoire et les coûts de traitement.
maxInputTokenslimite le contexte de chat envoyé à l'agent de mémoire automatique, tandis quetokenLimitcontrôle l'utilisation de la mémoire stockée- Les clés valides offrent un contrôle granulaire sur les informations pouvant être stockées
- Les
instructionspersonnalisées remplacent les instructions de gestion de la mémoire par défaut et doivent être utilisées avecvalidKeys - La configuration des agents permet de personnaliser le comportement du traitement de la mémoire.
- Lorsqu'elle est désactivée, toutes les fonctionnalités de mémoire sont désactivées, quels que soient les autres paramètres.
- La taille de la fenêtre de message affecte la quantité de contexte récent prise en compte pour les mises à jour de la mémoire
Que pensez-vous de ce guide ?