lbt162020 2022-02-24 14:02 采纳率: 68.8%
浏览 447
已结题

怎么加载从huggingface拉下来的模型代码

img


这是我从huggingface上保存下来的预训练好的model和tokenizer,代码如下

from transformers import XLNetTokenizer, XLNetForSequenceClassification
tokenizer = XLNetTokenizer.from_pretrained("xlnet-base-cased")
model = TFXLNetForSequenceClassification.from_pretrained("xlnet-base-cased")
model.save_pretrained("XLNet")
tokenizer.save_pretrained("XLNet")

现在我保存好了,下次使用的时候怎么加载model呢?全是bin,和json的,不知道怎么加载。只知道torch.load()加载pth的文件,没见过这些啊

  • 写回答

2条回答 默认 最新

  • 斯曦巍峨 Python领域新星创作者 2022-02-27 09:34
    关注

    首先huggingface上的预训练模型都是有示例代码的,博主贴的四行代码的中的前两行会检查你本地有没有XLNet这个模型,若没有的话就会从huggingface上下载相应的模型到一个指定的目录下去,然后加载使用,而你后两句代码相当于又保存了一遍模型,但这没关系,你可以直接使用你后面保存的模型。这个模型中的json文件,有一些是XLNet的配置文件,而那个.bin文件才是保存的模型,至于如何加载,人家官方提供了加载示例的。

    from transformers import AutoTokenizer, AutoModelForCausalLM
    
    tokenizer = AutoTokenizer.from_pretrained("xlnet-base-cased")
    
    model = AutoModelForCausalLM.from_pretrained("xlnet-base-cased")
    

    其实用你的第一行和第二行代码也行,但是在from_pretrained中指定一下你本地保存模型的路径就可以,然后就可以使用tokenizer和model去做接下来的事情了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 起个昵称难得很 2022-02-24 14:20
    关注
    
    import wget
    from fasttext import load_model
    
    wget.download("https://dl.fbaipublicfiles.com/fasttext/supervised-models/amazon_review_polarity.bin", 'model.bin')
    
    model = load_model("model.bin")
    

    如果报错:
    请按照下列步骤安装最新版本的fasttext(0.9.2):

    git clone https://github.com/facebookresearch/fastText.git
    cd fastText
    pip install .
    

    然后尝试执行你的代码

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月10日
  • 已采纳回答 3月2日
  • 创建了问题 2月24日

悬赏问题

  • ¥15 组件库引入并使用在若依框架未展示
  • ¥149 关于#使用python 的Flash Echarts+ajax+mysql动态数据实现饼图#的问题,请各位专家解答!
  • ¥15 RichTextBox中追加文本时报错
  • ¥15 关于c语言的学习问题
  • ¥15 activity升级到flowable工作流act_ge_bytearray的草稿json数据复制到act_de_model 的model_editor_json的脚本
  • ¥15 cvi使用CreateThread创建线程时,出现存储空间不足无法处理此命令的错误
  • ¥15 求苹果推信imessage批量推信技术
  • ¥15 ubuntu 22.04 系统盘空间不足。隐藏的docker空间占用?(相关搜索:移动硬盘|管理系统)
  • ¥15 c++ word自动化,为什么可用接口是空的?
  • ¥15 Matlab计算100000*100000的矩阵运算问题: