Hub documentation
遥测
遥测
从 1.7.0 版本开始,hf_xet Python 包和 hf-xet Rust crate 会在每次上传和下载后向 Hub 发送一份简短的报告。我们利用这些报告来查看在不同 hf_xet 版本、操作系统和网络环境下,传输失败的频率以及传输速度,从而发现并修复问题。
Git Xet 0.2.1 及更早版本不会发送遥测数据。
收集的内容
每份报告描述一次传输。在单次提交中上传多个文件算作一次传输,一次性下载多个文件同样算作一次传输。
| 数据 | 详细信息 |
|---|---|
| 传输类型和结果 | 上传或下载,以及其成功、失败或取消的状态。对于失败情况,提供一般的错误类别,例如network、timeout或server_error。 |
| 计时 | 传输所花费的时间。对于上传操作,还包括分块和上传数据所花费的时间,以及完成提交所花费的时间。 |
| 大小 | 文件数量、文件总大小以及通过网络传输的字节数。 |
| 去重 | 对于上传操作,Hub 上已存储并被跳过的数据量、新增的数据量,以及新数据的压缩效果如何。 |
| 上传路径 | 从 hf_xet 1.8.0 开始,对于上传操作,会显示有多少个数据块直接发送到 S3,有多少个通过 Xet 存储服务发送,以及它们的大小和上传时间。此外,还会显示有多少个直接上传回退到了 Xet 存储服务,以及其中有多少个是因为无法连接到 S3。 |
| 速度 | 平均吞吐量以及使用的最大并行请求数。 |
| 客户端 | hf_xet 版本、操作系统、CPU 架构、CPU 数量以及用户代理字符串。这与 huggingface_hub 向 Hub 发送的每个请求中的用户代理相同,其中包含调用库(例如 transformers)的名称和版本,以及 huggingface_hub、Python 和 PyTorch 的版本。 |
| ID | 用于传输的随机 ID、用于 hf_xet 会话的随机 ID,以及处理该传输的 Xet 存储服务器的主机名。 |
报告不包含文件名、文件路径、文件内容、文件哈希值、仓库名称或您的用户名。
报告使用与传输相同的访问令牌发送到 Xet 存储服务器。当服务器存储报告时,它会添加您的 IP 地址、令牌所属的 Hub 账户(如果未登录则为“anonymous”)、令牌所针对的仓库,以及该令牌是否允许读取或写入访问。
报告发送时间
hf_xet 会在上传或下载完成时发送一次报告,无论成功与否。如果传输时间超过 5 分钟,则每 5 分钟发送一次进度报告,直到传输结束。
报告大小约为 1 KB。它们随传输一起发送,不会拖慢传输速度。如果报告无法发送,则会被丢弃且不会重试。传输完成后,hf_xet 会等待最多 2 秒以确保最后一份报告发出,从而避免在程序立即退出时丢失报告。
选择退出
遥测功能默认开启。若要关闭,请设置 HF_HUB_DISABLE_TELEMETRY=1:
export HF_HUB_DISABLE_TELEMETRY=1这是与 huggingface_hub 及其他 Hugging Face Python 库中用于关闭遥测功能的同一变量。请参阅 huggingface_hub 文档中的 HF_HUB_DISABLE_TELEMETRY。
当 DO_NOT_TRACK、DISABLE_TELEMETRY、HF_HUB_OFFLINE 或 TRANSFORMERS_OFFLINE 被设置为 1、true、yes 或 on 时,hf_xet 也会关闭遥测功能。
若要仅关闭 hf_xet 的遥测功能,请设置 HF_XET_TELEMETRY_ENABLED=0。
| 环境变量 | 默认 | 描述 |
|---|---|---|
HF_HUB_DISABLE_TELEMETRY | unset | 设置为 1 可关闭 hf_xet 及其他 Hugging Face Python 库中的遥测功能。 |
HF_XET_TELEMETRY_ENABLED | true | 将其设置为 0 可仅关闭 hf_xet 遥测功能。将其设置为 1 不会覆盖上述的退出变量。 |
HF_XET_TELEMETRY_HEARTBEAT_AFTER | 300s | 传输在开始发送进度报告之前运行的时长。0 表示关闭进度报告。 |
HF_XET_TELEMETRY_HEARTBEAT_INTERVAL | 300s | 进度报告之间的时间间隔。 |
HF_XET_TELEMETRY_FINAL_FLUSH_TIMEOUT | 2s | hf_xet 在传输完成后等待最后一份报告的时间。0 表示不等待。 |