当前位置: 首页 > news >正文

HuggingFace中的 Files and versions 如何优雅下载到本地?(Python requests,tqdm)

前言

在使用huggingface把玩各种大模型时,如果选择从远程加载模型,这个过程可能因为网络问题而非常耗时甚至直接失败,所以把模型、分词器等相关文件下载到本地,再直接从本地加载就成了不可回避的流程。

在进入具体版本的模型后,我们可以去Files and Versions这个菜单项下面找到需要下载到本地的全部模型(以WizardCoder为例)

第一步是获取我们想要下载的文件的下载时url

在文件大小的右侧,可以看到一个向下的箭头表示下载,鼠标移动到箭头上,右键,选择“复制链接地址”,这样就得到了下载时url

我们将这些url存放到list中。

第二步就是python代码,这里除了用于请求的request库,我还使用了tqdm库,tqdm也可通过pip install来安装,它的作用是在下载较大的文件时,我们可以在终端看到下载的速度和进度

import requests
import os
from tqdm import tqdmurls = ["https://huggingface.co/WizardLM/WizardCoder-15B-V1.0/resolve/main/pytorch_model.bin"
]filepath = "WizardCoder/WizardCoder-15B-V1.0"def download_file(url):filename = url.split("/")[-1]download_path = os.path.join(filepath, filename)response = requests.get(url, stream=True, verify=False)response.raise_for_status()file_size = int(response.headers.get("Content-Length", 0))  # 获取待下载的文件大小chunk_size = 8192  # 读取的数据块的大小是8千字节with open(download_path, "wb") as file, tqdm(total=file_size, unit="B", unit_scale=True, unit_divisor=1024, desc=filename) as progress_bar:for chunk in response.iter_content(chunk_size=chunk_size):if chunk:file.write(chunk)progress_bar.update(1)for url in urls:download_file(url)

http://www.lryc.cn/news/147120.html

相关文章:

  • 三、原型模式
  • transformer实现词性标注
  • Java中异或操作和OTP算法
  • K8S最新版本集群部署(v1.28) + 容器引擎Docker部署(下)
  • 女子垒球运动的发展·垒球1号位
  • Debian 30 周年,生日快乐!
  • 字符串匹配的Rabin–Karp算法
  • 傅里叶变换(FFT)笔记存档
  • ELK安装、部署、调试 (二) ES的安装部署
  • Android 13 - Media框架(8)- MediaExtractor
  • Flutter 混合开发调试
  • C语言每日一练------(Day3)
  • 14、监测数据采集物联网应用开发步骤(10)
  • Linux禅道上修改Apache 和 MySQL 默认端口号
  • 操作教程|通过1Panel开源Linux面板快速安装DataEase
  • 机器学习策略——优化深度学习系统
  • ES6中Proxy和Proxy实例
  • UDP协议的重要知识点
  • QT6为工程添加资源文件,并在ui界面引用
  • Python小知识 - 如何使用Python的Flask框架快速开发Web应用
  • Flutter 项目结构文件
  • 未找到System.Runtime.InteropServices.Marshal.GetTypeFromCLSID(System.Guid) 方法错误
  • 人员位置管理,点亮矿山安全之路
  • node-red - 读写操作redis
  • 【图像处理】模板匹配的学习笔记
  • Ext JS之Ext Direct快速入门
  • 内网隧道技术学习
  • 【前端】CSS3新特性
  • Spring之HandlerInterceptor和RequestBodyAdvice
  • transition、transform 区别和应用