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

交易

在 LibreChat 中配置令牌使用量的交易记录

概述

transactions 对象控制是否在 LibreChat 中将令牌使用记录保存到数据库。这允许管理员独立于余额系统启用或禁用交易跟踪。

transactions 下的字段:

  • enabled

注意:

  • 交易记录对于追踪历史 Token 使用量至关重要
  • balance.enabled 设置为 true 时,无论此设置如何,交易都会自动启用。
  • 默认值为 true,以确保默认情况下会跟踪令牌使用情况。
  • 禁用事务可以减少数据库存储需求,但会阻止历史使用情况分析。

示例

transactions:
  enabled: false

enabled

密钥:

KeyTypeDescriptionExample
enabledBoolean控制是否将交易记录保存到数据库。Default: true. Set to false to disable transaction recording (unless balance.enabled is true).

描述:

enabled 字段决定了 LibreChat 是否为每个令牌使用事件保存详细的交易记录。这些记录包括:

  • 提示词和补全的 Token 计数
  • 相关成本与费率
  • 用户和对话标识符
  • 每笔交易的时间戳

重要行为:

当余额系统启用时(balance.enabled: true),无论 transactions.enabled 的设置如何,交易记录功能都会自动启用。这确保了:

  1. 余额跟踪功能运行正常,并提供完整的审计追踪。
  2. 可以准确计算 Token 使用量并从用户余额中扣除
  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

数据库影响

当启用交易功能时,每个消耗 Token 的 API 调用都会在 "Transactions" 集合中创建一条记录,其中包含以下信息:

  • 用户 ID 和电子邮件
  • 对话 ID
  • 使用的模型
  • Token 计数(提示词和补全)
  • Token 值与费率
  • 时间戳
  • 交易类型(贷方或借方)

在为高并发部署启用事务时,请考虑其对存储的影响。

这篇指南怎么样?