Hugging Face Transformers 错误解决方案

BlueStragglers 分享技术成长的快乐

近期项目用到了 Transformers。然而,配置过程中发生了不少问题,好在通过查阅各种论坛(CSDN,Github Issues, Huggingface Discuss, StackOverflow …),最后都解决了。

在这里将问题记录一下,方便后面大家配置。

1. OSError: Unable to load weights from pytorch checkpoint file

这个问题,是最最难解决的。

我解决这个问题主要经过了三个过程:

1.1 网络连接问题

直接使用 Transformers 提供的方法,很容易发生这个问题。

  • 例如,通过下列代码加载模型:

  • from transformers import AutoTokenizer, AutoModelForQuestionAnswering
    tokenizer = AutoTokenizer.from_pretrained("uer/roberta-base-chinese-extractive-qa")
    model = AutoModelForQuestionAnswering.from_pretrained("uer/roberta-base-chinese-extractive-qa")
    
        
        
    • 1
    • 2
    • 3

解决方案:

  • 选择 git lfs 下载模型文件:

  • git lfs install
    git clone https://huggingface.co/uer/roberta-base-chinese-extractive-qa
    
        
        
    • 1
    • 2
  • 下载后,将模型路径修改为本地文件路径。

  • from transformers import AutoTokenizer, AutoModelForQuestionAnswering
    tokenizer = AutoTokenizer.from_pretrained("./model/roberta-base-chinese-extractive-qa")
    model = AutoModelForQuestionAnswering.from_pretrained("./model/roberta-base-chinese-extractive-qa")
    
        
        
    • 1
    • 2
    • 3

1.2 缓存问题

上面的步骤完成后,问题仍然无法得到解决。这时,我们就要清理一下缓存,然后再进入下一步。

缓存的位置在 ~/.cache/pytorch 以及 ~/.cache/transformers 中。删除缓存即可。如果缓存内没有其他内容,可以直接删除文件夹。

1.3 Pytorch 版本问题

最后,需要检查 PyTorch 版本。Transformers 加载模型需要 PyTorch 版本在 1.6 以上。如果版本没有达到,需要更新 PyTorch。

经过这一步,问题基本可以解决。

pip install --upgrade pytorch torchvision

# 如果无法更新,可以先卸载再重新下载
pip uninstall torch
pip install pytorch

  • 1
  • 2
  • 3
  • 4
  • 5

参考内容

  1. OSError: Unable to load weights from pytorch checkpoint file

  2. Pytorch如何更新版本与卸载,使用pip,conda更新卸载Pytorch

  3. Unable to load weights from pytorch checkpoint file

### Hugging Face 平台概述 Hugging Face 是一家专注于人工智能与自然语言处理(NLP)的科技公司,致力于使先进的机器学习技术更加开放、易用并促进协作。该平台不仅为开发者、研究人员以及AI爱好者提供了访问最先进NLP模型和技术的机会,还通过其网站支持社区交流和发展[^4]。 #### Spaces 托管服务 Spaces 提供了一个托管应用的平台,在这里开发者能够部署和展示基于 Hugging Face 模型的各种应用程序,例如聊天机器人、翻译工具等。这使得创建者可以快速分享自己的项目并与他人互动测试新想法[^1]。 #### 使用预训练模型进行开发 当现有的Hugging Face提供的模型无法完全满足特定需求时,用户可以选择利用平台上已有的高质量预训练模型作为起点来实施迁移学习。这种方法允许使用者在已有成果的基础上进一步优化定制化解决方案,从而节省时间和资源成本[^2]。 ```python from transformers import pipeline nlp = pipeline("sentiment-analysis") result = nlp("I love using the Hugging Face platform!") print(result) ``` 这段代码展示了如何加载一个情感分析管道,并对其进行简单的调用来获取文本的情感倾向预测结果。 #### 性能评估工具 为了帮助用户更好地理解和改进所使用的模型表现,Hugging Face 还提供了一系列专门设计用于量化模型性能的评估工具。这些工具有助于完成诸如模型选择、超参数调整等工作流程中的重要环节,确保最终产品达到预期效果[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值