PiD Checkpoint管理实战:DCP分布式格式详解与.pth单文件转换技巧
【免费下载链接】PiD[NeurIPS 2026] PiD: Fast and High-Resolution Latent Decoding with Pixel Diffusion项目地址https://gitcode.com/gh_mirrors/pid18/PiD点击查看免费下载PiD 训练时默认采用 PyTorch Distributed CheckpointDCP分片格式保存权重但推理和新阶段初始化却需要单文件.pth。本文带你完整搞懂PiD Checkpoint 管理DCP 目录结构长什么样、Teacher 与 Distillation 两种训练的差异以及如何用官方脚本把 DCP 一步转换为可直接torch.load()的.pth文件并附常见踩坑清单。一、为什么 PiD 训练要用 DCP 格式PiD 的分布式训练由两套 Checkpointer 负责通过 Hydra 的ckpt_type选项切换训练类型ckpt_typeCheckpointer源码位置Teacher 训练dcpDistributedCheckpointerpid/_ext/imaginaire/checkpointer/dcp.py蒸馏训练dcp_distillDistillationCheckpointerpid/_src/checkpointer/dcp_distill.pyDCP 的核心特点是目录式分片一个逻辑 state dict 不再是一个.pth文件而是一个目录model/ ├── .metadata # 记录每个 key 的 shape/dtype/chunk 及在 shard 中的位置 ├── __0_0.distcp # rank 0 的 tensor payload ├── __1_0.distcp # rank 1 的 tensor payload └── ...这样设计带来三大好处⚡多进程并行 I/O保存/加载吞吐更高降低单进程内存峰值各 rank 只写自己的 shard按当前分布式拓扑按需读取续训时灵活匹配。⚠️ 注意DDP 下各 rank 完全复制的状态可能只写入最低 rank其他 rank 的.distcp可能是 0 字节——这是正常现象不代表 checkpoint 损坏。二、两种训练的真实 Checkpoint 目录结构每次保存以 9 位 iteration 编号建目录根目录下的latest_checkpoint.txt记录最新保存的目录名不是软链接用于同一 job 自动续训checkpoints/ ├── latest_checkpoint.txt └── iter_000000025/ ├── model/ # 模型权重net.* net_ema.* ├── optim/ # optimizer 状态 ├── scheduler/ # 学习率调度器状态 └── trainer/ # iteration、GradScaler 状态Teacher 训练每个逻辑目录就是一个独立 DCP而蒸馏训练会把 optimizer/scheduler 按组件拆成独立目录因为 PiD 蒸馏同时训练 student、fake-score 和 discriminator 三套参数iter_000000025/ ├── model/ # 含 net.* / net_ema.* / fake_score.* / discriminator.* ├── optim_net/ # student optimizer ├── optim_fake_score/ # fake-score optimizer ├── optim_discriminator/ # discriminator optimizer ├── scheduler_net/ ├── scheduler_fake_score/ ├── scheduler_discriminator/ └── trainer/两个关键差异要记牢目录名取决于配置optim_key/、scheduler_key/的后缀来自模型optimizer_dict的 key关闭 GAN 后 discriminator 相关目录就不存在不要硬编码。Frozen teacher 不在蒸馏 DCP 里teacher 由配置中的pretrained_teacher_path单独加载迁移蒸馏环境时必须同时保证 teacher checkpoint 可访问。三、DCP 转 .pth官方脚本一步到位DCP 目录无法直接torch.load()PiD 提供了转换脚本 scripts/convert_distcp_to_pt.py内部封装了torch.distributed.checkpoint.format_utils.dcp_to_torch_save把分片合并为单文件。基本用法只合并权重输入必须精确指向某个 iteration 下的model/目录不要传checkpoints/根目录也不接受s3://等对象存储地址mkdir -p /path/to/output_dir PYTHONPATH. python scripts/convert_distcp_to_pt.py \ /path/to/checkpoints/iter_000000025/model \ /path/to/output_dir默认输出model.pth——即model/中完整 state dict 的合并结果不含 optimizer/scheduler/trainer。进阶用法导出 EMA 推理权重推理场景通常只想用 EMA 权重。加--ema参数见 scripts/convert_distcp_to_pt.py后一次生成三个文件输出文件内容model.pth完整 state dict含net.*、net_ema.*等model_ema_fp32.pth仅 EMA 权重key 由net_ema.*重命名为net.*model_ema_bf16.pth同上float32 tensor 转为 bfloat16mkdir -p /path/to/output_dir PYTHONPATH. python scripts/convert_distcp_to_pt.py \ /path/to/checkpoints/iter_000000025/model \ /path/to/output_dir \ --ema对蒸馏 checkpoint--ema导出的是student EMAfake_score.*和discriminator.*不会进入 EMA-only 文件。四、避坑清单这些细节能省你半天用普通python单进程运行别用torchrun转换会把整个逻辑 state dict 合并进 CPU 内存样例规模下峰值内存可能明显高于文件大小teacher 约 11 GB、蒸馏约 16 GB先确认 RAM 和磁盘余量。️脚本会先删除输出目录中的旧产物启动时即unlink已有的model.pth/model_ema_fp32.pth/model_ema_bf16.pth即使后续因输入错误或 OOM 失败旧文件也没了——转换前务必确认输出路径。脚本不会创建输出目录必须先mkdir -p。checkpoint 没有net_ema.*时脚本先写出model.pth随后在 EMA 提取阶段抛ValueError。️扩展名是.pth不是.pt脚本输出固定为.pth别按.pt找文件。--keep-original优先于--ema传了它会在写出model.pth后直接退出不做 EMA 提取。⛔.pth不能替代 DCP 无损续训转换结果只含模型权重不含 optimizer、scheduler 和 iteration只能用于推理或新阶段权重初始化。五、不同场景该用哪个文件场景推荐文件说明同一 job 中断后续训完整 DCP 目录 latest_checkpoint.txt严格恢复 model/optim/scheduler/trainer从外部 DCP 显式恢复外部iter_xxxxxxxxx/checkpoint.load_path指向它load_training_stateFalse时仅加载model/推理 / 新阶段初始化转换后的model_ema_*.pth从 iteration 0 开始只含权重浏览/迁移权重转换后的model.pth可直接torch.load()查看六、延伸阅读完整官方文档含 metadata 字段级细节docs/checkpointing_CN.md发布模型的路径索引docs/checkpoints.mdHydra 配置项注册pid/_src/configs/common/defaults/ckpt_type.py掌握以上要点你就能在 PiD 的分布式训练、续训和推理部署之间自如切换 Checkpoint 形态不再被.distcp分片卡住。赞分享【免费下载链接】PiD[NeurIPS 2026] PiD: Fast and High-Resolution Latent Decoding with Pixel Diffusion项目地址https://gitcode.com/gh_mirrors/pid18/PiD点击查看免费下载相关推荐洛雪音乐桌面版免费开源跨平台音乐聚合播放器的终极指南洛雪音乐桌面版免费开源跨平台音乐聚合播放器的终极指南 你是否厌倦了在各个音乐平台之间来回切换只为找到一首想听的歌曲是否对各大平台的会员制度和曲库限制感到困桌面应用音视频前端LLaMA-Adapter模型转换工具checkpoint提取与格式转换详解LLaMA Adapter模型转换工具checkpoint提取与格式转换详解 LLaMA Adapter是一个革命性的轻量级适配器方法能够在短短1小时内使用人工智能大模型微调多模态PEFT Checkpoint 格式完全指南文件结构、格式转换与模型存储PEFT Checkpoint 格式完全指南文件结构、格式转换与模型存储 本指南以 PEFT 官方开发者文档《PEFT checkpoint format》为人工智能大模型微调LoRA创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Wii USB Loader CFG 7.0 傻瓜包:cIOS 配置与硬盘加载

Wii USB Loader CFG 7.0 傻瓜包:cIOS 配置与硬盘加载

简介:面向Wii主机玩家与怀旧游戏爱好者,一份可直接落地的Usb Loader CFG 7.0傻瓜包。与网上流传的5.x旧版或带密码的加密压缩包不同,此版本解压即用,拷贝到SD卡APPS目录即可被识别,省去手动配置cIOS和繁琐安装步骤。压…

2026/10/15 18:49:03 阅读更多 →
VC++安装向导源码深度解析:MFC工程结构与实战改造

VC++安装向导源码深度解析:MFC工程结构与实战改造

简介:这是一份面向VC初学者的程序安装向导源码示例,包含完整可编译的工程,演示如何构建一个多步骤的安装引导界面,完整覆盖用户从欢迎、路径选择到安装完成的交互流程。代码中重点使用TAB控件组织各页面,逻辑清晰&…

2026/10/15 18:48:02 阅读更多 →
STC12C5A60S2油烟机闭环控制系统实战

STC12C5A60S2油烟机闭环控制系统实战

简介:本资源是一套完整的基于STC12C5A60S2单片机的智能油烟机毕业设计实现方案,面向电子信息、自动化及嵌入式方向的本科生与初阶开发者,解决厨房环境烟雾浓度自适应调控、人机交互与硬件系统集成等典型嵌入式应用问题。压缩包共215个文件&am…

2026/10/15 18:48:02 阅读更多 →

最新新闻

Apollo 11.0:面向车规级量产的自动驾驶仿真与通信架构解析

Apollo 11.0:面向车规级量产的自动驾驶仿真与通信架构解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 20:05:29 阅读更多 →
Spring Boot JPA动态SQL五大方案实战对比

Spring Boot JPA动态SQL五大方案实战对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 20:05:29 阅读更多 →
前端逻辑漏洞解析:从CTF抽奖题看客户端信任边界

前端逻辑漏洞解析:从CTF抽奖题看客户端信任边界

1. 这道题不是考运气,是考你有没有真正“看懂”前端逻辑“GWCTF 2019 WEB-枯燥的抽奖”——光看标题,很多人第一反应是:又一个靠爆破、猜接口、扫目录的CTF Web题?点开题目页面,一个极简界面:一个按钮写着“…

2026/10/15 20:05:29 阅读更多 →
Docker+Nginx+Gunicorn部署Python Web应用:从零到生产环境完整指南

Docker+Nginx+Gunicorn部署Python Web应用:从零到生产环境完整指南

把 Python Web 应用部署到服务器,几乎是每个写后端的人绕不开的一步。本地 debug 模式跑得风生水起,一旦要挂到公网上,各种问题就冒出来了:依赖装不上、进程没人管、端口冲突、静态文件 404……我自己第一次部署一个后台管理面板 …

2026/10/15 20:05:29 阅读更多 →
Unity场景OBJ导出方案:支持Terrain与FBX的标准化几何导出

Unity场景OBJ导出方案:支持Terrain与FBX的标准化几何导出

简介:这是一款面向Unity开发者(尤其是中高级用户)的场景导出工具插件,解决在Unity中将复杂场景(含GameObject与Terrain)或FBX模型高效转换为通用.obj格式的需求,广泛适用于Unity与外部建模/导航…

2026/10/15 20:05:29 阅读更多 →
基于geopandas的公交站点覆盖率分析方法与Python实现

基于geopandas的公交站点覆盖率分析方法与Python实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 20:04:27 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →