AirLLM · 第 2 章 离线准备:checkpoint 切分


AirLLM · 第 2 章 离线准备:checkpoint 切分

章节摘要:一层权重的出生阶段(离线)utils.pysplit_and_save_layers 把 HuggingFace checkpoint 按 decoder 层切成独立的 safetensors 分片,为逐层流式铺设磁盘地基;对 Kimi K3 这类"一分片一模块"的 checkpoint 用硬链接直通不复制,并辅以磁盘空间检查与 HF hub 按需下载。此后权重在磁盘上以"按层分片"的形态等待启程。

旅程坐标

旅程坐标

本章位于旅程最前端(出生):权重尚在 HF checkpoint 之中,即将被切分为可逐层取用的分片。

学习目标

  • 读懂 HF checkpoint 分片格式:index.jsonweight_map 如何把参数名映射到分片文件
  • 跟踪 split_and_save_layers:按层聚合参数、写出逐层 safetensors 分片
  • 理解硬链接直通:Kimi K3"一分片一模块"的 checkpoint 零拷贝复用原始文件
  • 掌握工程兜底:切分前的磁盘空间检查,以及 HF hub 按需下载(用到哪片下哪片)

子章节导航

01 HF checkpoint 分片格式与 split_and_save_layers 切分

index.json/weight_map 的映射关系;utils.py 如何按层重组权重并切分保存为逐层 safetensors 分片。

02 硬链接直通、磁盘空间检查与 HF hub 按需下载

Kimi K3 一分片一模块走硬链接零复制;切分前的空间校验;hub 端只下载将被用到的分片。

前置知识与后续延伸

前置知识:第 1 章的全貌视角(知道"显存只需一层"要靠磁盘上的按层分片来喂);能读懂 Python 文件遍历。
后续延伸:第 3 章进入一生核心——权重从磁盘分片出发,经 pre_hook 走上 CPU 与 GPU,再被 post_hook 释放回 meta。


作者与出处
原作者: 灏天文库
整理: 灏天文库整理
本站整理收录,版权归原作者/开源协议所有;欢迎通过原文链接访问源仓库。
发布者: 作者: 灏天文库 转发
评论区 (0)
U