timm 文档
从 Hugging Face Hub 分享和加载模型
加入 Hugging Face 社区
并获得增强的文档体验
开始使用
从 Hugging Face Hub 分享和加载模型
timm
库内置了与 Hugging Face Hub 的集成,可以轻松地从 🤗 Hub 分享和加载模型。
在这个简短的指南中,我们将了解如何:
- 在 Hub 上分享一个
timm
模型 - 如何从 Hub 加载该模型
身份验证
首先,您需要确保已安装 huggingface_hub
包。
pip install huggingface_hub
然后,您需要进行身份验证。您可以通过运行以下命令来完成此操作
huggingface-cli login
或者,如果您使用的是 notebook,则可以使用 notebook_login
助手
>>> from huggingface_hub import notebook_login
>>> notebook_login()
分享模型
>>> import timm
>>> model = timm.create_model('resnet18', pretrained=True, num_classes=4)
这里是您通常训练或微调模型的地方。为了本教程的目的,我们将跳过这一步。
假设我们现在已经微调了模型。下一步是将其推送到 Hub!我们可以使用 timm.models.hub.push_to_hf_hub
函数来完成此操作。
>>> model_cfg = dict(label_names=['a', 'b', 'c', 'd'])
>>> timm.models.push_to_hf_hub(model, 'resnet18-random', model_config=model_cfg)
运行上述命令会将模型推送到 Hub 上的 <your-username>/resnet18-random
。您现在可以与您的朋友分享此模型,或在您自己的代码中使用它!
加载模型
从 Hub 加载模型就像调用 timm.create_model
并将 pretrained
参数设置为您要加载的模型的名称一样简单。在本例中,我们将使用 nateraw/resnet18-random
,这是我们刚刚推送到 Hub 的模型。
>>> model_reloaded = timm.create_model('hf_hub:nateraw/resnet18-random', pretrained=True)