使用统计收集#
LMCache 默认收集匿名使用数据,以帮助工程团队了解实际工作负载,优先优化并提高可靠性。所有收集的数据都是汇总的,并不包含敏感用户信息。
聚合数据的一个经过清洗的子集可能会公开发布,以惠及社区(例如,查看每日使用报告 here)。
收集了哪些数据?#
使用统计信息以三种消息类型发出,具体实现位于 usage_context.py:
EnvMessage 捕获环境细节,例如云提供商、CPU 信息、总内存、架构、GPU 数量/类型和执行源。
EngineMessage 记录引擎配置和元数据,包括缓存设置(块大小、本地设备、缓存限制)、远程后端参数、混合设置、模型名称、全局大小,以及 KV Cache 的数据类型/形状。
MetadataMessage 报告执行元数据:运行开始的时间戳和总持续时间(以秒为单位)。
这些消息被序列化为 JSON 并通过 POST 发送到 LMCache 使用服务器。
示例 JSON 有效负载#
{
"message_type": "EnvMessage",
"provider": "GCP",
"num_cpu": 24,
"cpu_type": "Intel(R) Xeon(R) CPU @ 2.20GHz",
"cpu_family_model_stepping": "6,85,7",
"total_memory": 101261135872,
"architecture": ["64bit", "ELF"],
"platforms": "Linux-5.10.0-28-cloud-amd64-x86_64-with-glibc2.31",
"gpu_count": 2,
"gpu_type": "NVIDIA L4",
"gpu_memory_per_device": 23580639232,
"source": "DOCKER"
}
预览收集的数据#
如果您启用 本地日志记录,使用消息将附加到您指定的日志文件中。要检查最近的条目:
tail ~/.config/lmcache/usage.log
配置与选择退出#
默认情况下,使用情况跟踪是 启用 的。要禁用所有使用统计信息收集,请设置环境变量:
export LMCACHE_TRACK_USAGE=false
当 LMCACHE_TRACK_USAGE 设置为 false 时,InitializeUsageContext 将返回 None,并且不会发送或记录任何数据。
本地日志记录#
如果您希望在将数据发送到服务器的同时(或替代)记录到文件中,请在初始化时传递一个本地日志路径:
from lmcache.usage_context import InitializeUsageContext
usage_ctx = InitializeUsageContext(
config=engine_config,
metadata=engine_metadata,
local_log="~/.config/lmcache/usage.log"
)
省略 local_log 参数(或传递 None)将禁用本地文件日志记录。