两个月前,我在Kaggle上训练了一个扩散模型。我将Unet2Dmodel作为pickle文件存储在一个检查点,以便以后可以加载它进行推理或在该检查点继续训练。
def save_model(model):
with open(f'{config.output_dir}/model.pkl','wb') as f:
pickle.dump(model,f)
def load_model(path):
with open(path,'rb') as f:
return pickle.load(f)
2个月前,这段代码在Kaggle和Google Colab上运行良好,但当我今天试图加载我的model.pkl文件时,我得到了这个错误:AttributeError: Can't get attribute 'AttentionBlock' on <module 'diffusers.models.attention' from '/opt/conda/lib/python3.7/site-packages/diffusers/models/attention.py'>
谢谢你,
我已经尝试改变扩散库的版本,我用2个月前,但没有变化。
1条答案
按热度按时间yeotifhr1#
我不知道为什么它不为您工作,使用相同版本的扩散器,以前的工作,但是,从this似乎注意块已被取代的只是注意。从here听起来你可以使用
_convert_deprecated_attention_blocks
来更新你的模型。