• 修改huggingface的缓存路径


    最近查了一下C盘爆满的原因,发现了huggingface的缓存文件这个罪魁祸首。

    每次远程导入模型数据集时,都会启用huggingface的缓存机制,将整个大文件下载至缓存目录中,从而保证下一次加载时非常快速。

    我们可以发现,默认的缓存目录就是设置在C盘。

    # datasets缓存目录的查看
    from datasets import config
    print(config.HF_DATASETS_CACHE)
    # D:\cache\huggingface\datasets
    
    # transformers缓存目录的查看(不建议,非常麻烦,知道默认是哪就行)
    from transformers import AutoModel
    model = AutoModel.from_pretrained('bert-base-chinese')
    cache_path = model.config.get_from_cache('bert-base-chinese')
    print(cache_path)
    # D:\cache\huggingface\transformers
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    下面是更改存放路径的方法,分为临时的和永久的:

    注:本人此时的datasets库版本是2.14.5;transformers库版本是4.29.1。不同版本的库可能会有差异,huggingface的库更新太快了qwq。

    1. 代码更改(仅对当前python会话,下一次在新的环境中执行时就失效了)

      # datasets缓存目录的修改
      from datasets import config
      config.HF_DATASETS_CACHE = 'D:\cache\huggingface\datasets'
      
      # transformers缓存目录得在导入具体的模型时指定
      from transformers import AutoModel
      AutoModel.from_pretrained('bert-base-chinese', cache_dir='D:\cache\huggingface\transformers')
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
    2. 修改系统环境变量(永久方法,对于Windows系统)

      1. 打开环境变量的设置界面。设置系统变量。
      2. 输入变量名XDG_CACHE_HOME 和变量值为新缓存路径的根路径 (例如 D:\cache)。
      3. 点击"确定"保存,电脑重启后生效。

      这样,以后的缓存结构将会是:

      • 模型缓存:D:\cache\huggingface\transformersD:\cache\huggingface\hub(一般是这里)
      • 数据集缓存:D:\cache\huggingface\datasets
      • 此外metricsmodules也分别是在D:\cache\huggingface\metricsD:\cache\huggingface\modules之下。

      如果库版本不一样,其实可以从库的源代码中去了解。比如我现在的datasetsconfig.py文件,如下图所示:

      在这里插入图片描述

      从这里就可以看出datasets的缓存路径的确定逻辑了。

      我现在的transformersutils/hub.py文件,如下图所示:

      在这里插入图片描述在这里插入图片描述

  • 相关阅读:
    gpg: no valid OpenPGP data found.
    C语言冒泡排序
    ssm基于微信小程序的警局服务管理系统
    Excel·VBA数组排列函数
    21JVM-类加载和垃圾回收算法
    【JAVA-1】EditPlus安装及配置,有手就会!
    Android获取系统读取权限
    Golang并发控制方式有几种?
    C语言九条语句经典例题,一起温故而知新!!!
    Vue3 + Echarts(5.x) 实现中国地图
  • 原文地址:https://blog.csdn.net/micah_yaokunkun/article/details/134002557