Safetensors 加入 PyTorch 基金会
Safetensors 加入 PyTorch 基金会
Safetensors 已加入 PyTorch 基金会,成为 Linux 基金会旗下的基金会托管项目。此转变将项目的商标、代码仓库和治理迁移至供应商中立的环境,确保模型权重存储格式的开发由更广泛的机器学习社区推动,而非单一公司。
Safetensors 的技术架构
Safetensors 是一种序列化格式,旨在取代基于 pickle 的格式,通过消除模型加载期间任意代码执行的风险。该格式基于一个简单的架构,由两个主要组件构成:
- JSON Header(JSON 头部):一个元数据部分,硬限制为 100 MB,用于描述张量的元数据。
- Raw Tensor Data(原始张量数据):位于头部之后的实际权重数据,支持零拷贝加载(直接从磁盘映射张量)和惰性加载(读取单个权重而无需反序列化整个检查点)。
治理与社区转型
通过加入 PyTorch 基金会,Safetensors 从 Hugging Face 项目转变为社区治理的项目。虽然 Hugging Face 的维护者 Luc 和 Daniel 仍然在技术指导委员会任职并继续负责日常运营,但项目现已正式归属 Linux 基金会。
对于贡献者来说,成为维护者的路径现已在仓库的 GOVERNANCE.md 和 MAINTAINERS.md 文件中正式记录。此转变为基于该格式构建的组织提供了稳定、长期的基础。
对用户和贡献者的影响
对现有用户没有任何破坏性更改。格式、API 以及 Hugging Face Hub 的集成保持不变,所有当前以 Safetensors 格式存储的模型将继续如往常般工作。
未来路线图与集成
Safetensors 正在推进多项关键技术增强,以提升在整个机器学习生态系统中的性能和兼容性:
与 PyTorch 核心的集成
该项目正与 PyTorch 团队合作,将 Safetensors 集成到 PyTorch 核心,作为 torch 模型的序列化系统。
硬件加速与并行
路线图包括开发设备感知的加载和保存功能,使张量能够直接加载到诸如 CUDA 和 ROCm 等加速器上,而无需 CPU 中转。此外,正在开发用于 Tensor Parallel(张量并行)和 Pipeline Parallel(流水线并行)加载的一流 API,以确保每个 rank 或流水线阶段仅加载所需的权重。
量化支持
Safetensors 将正式支持不断演进的量化格式,包括:
- FP8
- 块量化格式(如 GPTQ 和 AWQ)
- 子字节整数类型