首页 Paddle框架 帖子详情
ckpt或者safetensors如何转成paddlenlp能用的格式啊 已解决
收藏
快速回复
Paddle框架 问答深度学习模型训练 822 3
ckpt或者safetensors如何转成paddlenlp能用的格式啊 已解决
收藏
快速回复
Paddle框架 问答深度学习模型训练 822 3

有办法把Stable Diffusion的ckpt或者safetensors转成paddlenlp 能用的格式啊

宇宙物语
已解决
3# 回复于2023-03
paddlenlp官方AI绘画项目那有ckpt或者safetensors转成ppdiffuser的实现,直接fork拿来用就得了
0
收藏
回复
全部评论(3)
时间顺序
李长安
#2 回复于2023-03

这个不太会。要不去issue上问一下?

0
回复
宇宙物语
#3 回复于2023-03

paddlenlp官方AI绘画项目那有ckpt或者safetensors转成ppdiffuser的实现,直接fork拿来用就得了

0
回复
Luosichen02
#4 回复于2023-08
from safetensors.paddle import load_file
import paddle
import os


def safetensors2pdpramas(filename):
    """
    weights of safatensors to pdparams's
    """
    device = 'gpu' if paddle.is_compiled_with_cuda() else 'cpu'
    if os.path.exists(filename.split('.safetensors')[0] + '.pdparams'):
        raise Exception('file existed!')
    w = load_file(filename, device=device)
    paddle.save(w, filename.split('.safetensors')[0] + '.pdparams')
    del w

# 待转换文件路径
filenames = [
    'SDXL/model/text_encoder/model_state.safetensors',
    'SDXL/model/text_encoder_2/model_state.safetensors',
    'SDXL/model/unet/model_state.safetensors',
    'SDXL/model/model_state.safetensors'
]
# 开始转换
for filename in filenames:
    try:
        safetensors2pdparams(filename)
    except Exception as e:
        print(e)
        continue
1
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户