Kuaishou-【学习Diffusers 四】 读取模型参数 bin格式、safetensors格

本文详细介绍了如何在深度学习项目中,使用safetensors和bin格式读取预训练的unet模型参数,并将其适配到pipeline中,以及在GPU上的部署过程。
摘要由CSDN通过智能技术生成

该操作多用于推理

safetensors格式的参数读取方法

1 拿到pipeline中的unet的办法
unet = pipeline.pipe.unet

2 safetensors格式文件的参数读取方法
state_dict = safetensors.torch.load_file(args.model_id, device="cpu")
unet.load_state_dict(state_dict)  # 读入模型

3 args.model_id = "xxxx/unet/diffusion_pytorch_model.safetensors"
unet模型路径

4 将修改的unet放回pipeline

pipeline.pipe.unet = unet.half().to(args.device)

对于bin格式

1 读取参数
state_dict=torch.load('../train-output/'+ args.model_name_or_path.split('/')[-1] +'/unet/diffusion_pytorch_model.bin')
2 送入uent
unet.load_state_dict(state_dict)
3 送回pipe
pipe.unet = unet
4 送入GPU
pipe.to("cuda")

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
diffusers 原生 text-to-image 的 fft (Fast Fourier Transform) 方法使用的数据集为 parquet 格式,需要进行适配。 parquet 是一种列式存储格式,能够高效地存储和处理大规模数据。为了适配这种格式,我们需要执行以下步骤: 1. 读取数据集:使用 Parquet 库或工具,如 Apache Parquet、Dask 或 PyArrow,读取 parquet 格式的数据集文件。这些工具提供了函数和方法来加载和操作 parquet 数据集。 2. 数据预处理:根据 fft 方法的要求,对读取的数据进行必要的预处理。这可能包括数据类型转换、缺失值处理、数据清洗等步骤,以确保数据符合要求。 3. 调整数据结构:根据 fft 方法的输入要求,可能需要将 parquet 数据集的列或行重新排列以适应 fft 的输入结构。这可以通过列索引或行索引操作来实现。 4. 执行 fft:使用 fft 方法对预处理后的数据进行转换。可以使用现有的 fft 函数或库,如 numpy.fft 或 scipy.fft,对数据进行 fft 变换。根据具体需求,可能需要在这一步中设置相关参数,如采样频率、分辨率等。 5. 结果保存:将 fft 结果保存为适当的数据格式,以便后续使用或分析。parquet 格式是一种可选的选择,也可以将结果保存为其他常见的图像格式,如 PNG、JPEG 等。 通过以上步骤,我们可以将 diffusers 原生 text-to-image 的 fft 方法适配到 parquet 格式的数据集上。这样,我们可以充分利用 parquet 格式的优势,加快数据处理速度,并满足 fft 方法对数据结构的要求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机视觉-Archer

图像分割没有团队的同学可加群

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值