Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Transactions

Configurer l'enregistrement des transactions pour l'utilisation des jetons dans LibreChat

Aperçu

L'objet transactions contrôle si les enregistrements d'utilisation des jetons sont sauvegardés dans la base de données de LibreChat. Cela permet aux administrateurs d'activer ou de désactiver le suivi des transactions indépendamment du système de solde.

Champs sous transactions :

  • enabled

Notes :

  • L'enregistrement des transactions est essentiel pour suivre l'historique de l'utilisation des jetons.
  • Lorsque balance.enabled est défini sur true, les transactions sont automatiquement activées indépendamment de ce paramètre.
  • La valeur par défaut est true pour garantir que l'utilisation des jetons est suivie par défaut
  • Désactiver les transactions peut réduire les besoins en stockage de la base de données, mais empêchera l'analyse de l'historique d'utilisation.

Exemple

transactions:
  enabled: false

enabled

Clé :

KeyTypeDescriptionExample
enabledBooleanDétermine s'il faut enregistrer les relevés de transaction dans la base de données.Default: true. Set to false to disable transaction recording (unless balance.enabled is true).

Description :

Le champ enabled détermine si LibreChat enregistre des rapports de transaction détaillés pour chaque événement d'utilisation de jetons. Ces rapports incluent :

  • Nombre de jetons pour les prompts et les complétions
  • Coûts et tarifs associés
  • Identifiants d'utilisateur et de conversation
  • Horodatages pour chaque transaction

Comportement important :

Lorsque le système de solde est activé (balance.enabled: true), l'enregistrement des transactions est automatiquement activé, indépendamment du paramètre transactions.enabled. Cela garantit que :

  1. Le suivi du solde fonctionne correctement avec une piste d'audit complète
  2. L'utilisation des jetons peut être calculée avec précision et déduite des soldes des utilisateurs
  3. Les données historiques sont disponibles pour le rapprochement des soldes

Cas d'utilisation :

  • Activer les transactions (true) : Lorsque vous avez besoin de suivre les modèles d'utilisation, de générer des rapports ou de maintenir une piste d'audit
  • Désactiver les transactions (false) : Lorsque vous souhaitez réduire le stockage de la base de données et que vous n'avez pas besoin de l'historique des données d'utilisation (fonctionne uniquement lorsque le suivi du solde est également désactivé)

Relation avec le système de solde

Les systèmes de transactions et de solde fonctionnent ensemble :

# When balance is enabled, transactions are always enabled
balance:
  enabled: true
  startBalance: 20000
 
transactions:
  enabled: false  # This will be overridden to true because balance.enabled is true
# Track transactions without balance management
balance:
  enabled: false
 
transactions:
  enabled: true  # Records all token usage without enforcing balance limits

Impact sur la base de données

Lorsque les transactions sont activées, chaque appel API qui consomme des jetons crée un enregistrement dans la collection "Transactions" avec les informations suivantes :

  • ID utilisateur et e-mail
  • ID de conversation
  • Modèle utilisé
  • Nombre de jetons (invite et complétion)
  • Valeurs et tarifs des jetons
  • Horodatage
  • Type de transaction (crédit ou débit)

Tenez compte des implications en matière de stockage lors de l'activation des transactions pour les déploiements à haut volume.

Que pensez-vous de ce guide ?