为何不调用from_pretrained方法直接下载模型?而且只要联网就可用。但是
- 如果网络很不好,模型下载时间会很久,一个小模型下载几个小时也很常见
- 如果换了训练服务器,又要重新下载。
- 而且容易报错
如何调用huagging face 里的模型,例如vit
本地可以在
Models – Hugging Face
找到你需要的模型下载在本地进行调用。例子如下
from transformers import ViTImageProcessor, ViTModel
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
# 此处可以是模型名字也可以选择本地路径,本地不容易报错
image_model = 'google/vit-base-patch16-224-in21k'
# image_model = ./models/vit-base-patch16-224-in21k'
processor = ViTImageProcessor.from_pretrained(image_model)
model = ViTModel.from_pretrained(image_model)
inputs = processor(images=image, return_tensors="pt")
outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state
下载操作:
1打开模型页面,输入你要的模型。
点开要选择的页面选择中间选项:
下载你需要的,LFS选一个,若是pytorch就选 pytorch_model.bin,若是tensorflow就选tf_model.h5。
参考:
版权声明:本文为qq_41458274原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。