torch.hub.load报错urllib.error.HTTPError: HTTP Error 403: rate limit exceeded

在运行DINOv2的示例代码时,需要载入预训练的模型,比如:

python 复制代码
backbone_model = torch.hub.load(repo_or_dir="facebookresearch/dinov2", model=backbone_name)

torch.hub.load报错"urllib.error.HTTPError: HTTP Error 403: rate limit exceeded",具体报错信息如下:

Traceback (most recent call last):

File "/data1/domainnet/dinov2/demo.py", line 15, in <module>

backbone_model = torch.hub.load(repo_or_dir="facebookresearch/dinov2", model=backbone_name)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/site-packages/torch/hub.py", line 555, in load

repo_or_dir = _get_cache_or_reload(repo_or_dir, force_reload, trust_repo, "load",

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/site-packages/torch/hub.py", line 222, in _get_cache_or_reload

_validate_not_a_forked_repo(repo_owner, repo_name, ref)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/site-packages/torch/hub.py", line 181, in _validate_not_a_forked_repo

response = json.loads(_read_url(Request(url, headers=headers)))

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/site-packages/torch/hub.py", line 164, in _read_url

with urlopen(url) as r:

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 214, in urlopen

return opener.open(url, data, timeout)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 523, in open

response = meth(req, response)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 632, in http_response

response = self.parent.error(

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 561, in error

return self._call_chain(*args)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 494, in _call_chain

result = func(*args)

File "/root/miniconda3/envs/dinov2-extras/lib/python3.9/urllib/request.py", line 641, in http_error_default

raise HTTPError(req.full_url, code, msg, hdrs, fp)

urllib.error.HTTPError: HTTP Error 403: rate limit exceeded

据说这个是PyTorch部分版本的Bug,可以在torch.hub相关代码前加一行,如下:

python 复制代码
torch.hub._validate_not_a_forked_repo = lambda a, b, c: True

backbone_model = torch.hub.load(repo_or_dir="facebookresearch/dinov2", model=backbone_name)

问题解决。

相关推荐
知秋一叶12318 分钟前
Miloco 深度打通 Home Assistant,实现设备级精准控制
人工智能·智能家居
superman超哥18 分钟前
仓颉语言中基本数据类型的深度剖析与工程实践
c语言·开发语言·python·算法·仓颉
春日见39 分钟前
在虚拟机上面无法正启动机械臂的控制launch文件
linux·运维·服务器·人工智能·驱动开发·ubuntu
Learner__Q1 小时前
每天五分钟:滑动窗口-LeetCode高频题解析_day3
python·算法·leetcode
————A1 小时前
强化学习----->轨迹、回报、折扣因子和回合
人工智能·python
CareyWYR1 小时前
每周AI论文速递(251215-251219)
人工智能
徐先生 @_@|||2 小时前
(Wheel 格式) Python 的标准分发格式的生成规则规范
开发语言·python
weixin_409383122 小时前
在kaggle训练Qwen/Qwen2.5-1.5B-Instruct 通过中二时期qq空间记录作为训练数据 训练出中二的模型为目标 第一次训练 好像太二了
人工智能·深度学习·机器学习·qwen
JoannaJuanCV2 小时前
自动驾驶—CARLA仿真(22)manual_control_steeringwheel demo
人工智能·自动驾驶·pygame·carla
Mqh1807622 小时前
day45 简单CNN
python