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

トランザクション

LibreChatでトークン使用量のトランザクション記録を設定する

概要

transactions オブジェクトは、LibreChatにおいてトークン使用量の記録をデータベースに保存するかどうかを制御します。これにより、管理者は残高システムとは独立してトランザクション追跡の有効・無効を切り替えることができます。

transactions 配下のフィールド:

  • enabled

注記:

  • トランザクションの記録は、過去のトークン使用量を追跡するために不可欠です。
  • balance.enabledtrue に設定されている場合、この設定に関係なくトランザクションは自動的に有効になります。
  • デフォルト値は true であり、デフォルトでトークン使用量が追跡されるようになっています。
  • トランザクションを無効にするとデータベースのストレージ要件を削減できますが、過去の利用状況の分析ができなくなります。

transactions:
  enabled: false

enabled

キー:

KeyTypeDescriptionExample
enabledBooleanトランザクションレコードをデータベースに保存するかどうかを制御します。Default: true. Set to false to disable transaction recording (unless balance.enabled is true).

説明:

enabled フィールドは、LibreChat が各トークン使用イベントの詳細なトランザクション記録を保存するかどうかを決定します。これらの記録には以下が含まれます:

  • プロンプトとコンプリーションのトークン数
  • 関連するコストと料金
  • ユーザーおよび会話の識別子
  • 各トランザクションのタイムスタンプ

重要な動作:

残高システムが有効な場合(balance.enabled: true)、transactions.enabled の設定に関わらず、トランザクションの記録が自動的に有効になります。これにより、以下が保証されます:

  1. 完全な監査証跡により、残高追跡機能が正しく動作します
  2. トークン使用量は正確に計算され、ユーザー残高から差し引くことができます。
  3. 残高照合のために履歴データを利用できます

使用例:

  • トランザクションを有効にする (true): 使用パターンの追跡、レポートの生成、または監査証跡の維持が必要な場合
  • Disable transactions (false): データベースのストレージを削減したい場合で、履歴の使用状況データが不要なときに使用します(残高追跡も無効になっている場合にのみ機能します)

バランスシステムとの関係

トランザクションシステムと残高システムは連携して動作します:

# 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

データベースへの影響

トランザクションが有効な場合、トークンを消費する各API呼び出しは、以下の情報とともに「Transactions」コレクションにレコードを作成します。

  • ユーザーIDとメールアドレス
  • 会話ID
  • 使用モデル
  • トークン数(プロンプトおよび補完)
  • トークンの値とレート
  • タイムスタンプ
  • 取引タイプ(クレジットまたはデビット)

高トラフィックのデプロイメントでトランザクションを有効にする際は、ストレージへの影響を考慮してください。

このガイドはいかがでしたか?