国内如何高速下载hugginging face模型

图片

国内如何高速下载hugginging face模型

背景

如今开源大模型很多,相较于线上的调用接口,本地部署更有吸引力。这就免不了需要去Huggingface上下载模型,但因为国内管制要求,huggingface 并不能直接访问,或者下载速度很慢。这两天折腾出两条曲线方案。

现状

原先可用的镜像方式基本已经不可用。

  1. 对于一些主流的模型可以通过aliendao 进行加速。缺点是模型不多
  2. 如果你有梯子,那么可以直接下载。但几个G,甚至几十个G的模型,光是流量还是肉疼的。
曲线救国

为此采取一种曲线救国的方式(前提是你可以访问外网,主要为了节约流量):

前期准备:申请百度网盘开发者

  1. colab or play-with-dcoker ,话不多说,直接看代码。
  2. 上传百度网盘,然后国内下载。(上传速度很快)图片

共享机制

本着我为人人,人人为我的精神。如果你愿意分享 你的百度网盘地址,可提交 issue 在这个页面共享模型

https://github.com/kevin-meng/HuggingfaceDownloadShare/issues/1

方法一 (colab-推荐)

[colab 页面]

https://colab.research.google.com/drive/1S7E3mMsVhJlhuvtMFUalOSXl0e0YOSbt?usp=sharing

完整程序有点长放在文末。(其中解决 colab 的 符号链接(symlink)/软连接文件处理函数还是蛮有用的

https://github.com/kevin-meng/HuggingfaceDownloadShare

图片

方法二 (play-with-dcoker)

方法二相对麻烦些,需要在 play-with-dcoker 启动一个节点,并构建镜像,之后会得到一个 gradio 的页面。然后可以在对应窗口中填入相应的 模型id 即可。

在这里插入图片描述

图片

colab 完整程序

import os 
import shutilfrom huggingface_hub import snapshot_download
from bypy import ByPydef copy_data(source_directory,target_directory):# 遍历源目录中的所有文件和目录  for entry in os.listdir(source_directory):   entry_path = os.path.join(source_directory, entry)      # 检查是否为符号链接      if os.path.islink(entry_path):    # 获取符号链接的目标路径          target_path = os.readlink(entry_path)          # 构建目标路径的绝对路径          target_absolute_path = os.path.join(source_directory, target_path)          # 获取目标路径的文件名或目录名          target_basename = os.path.basename(target_absolute_path)          # 构建目标文件或目录的路径          target_entry_path = os.path.join(target_directory, entry)   # 复制目标文件或目录到目标目录          if os.path.isdir(target_absolute_path):              shutil.copytree(target_absolute_path, target_entry_path)          else:          shutil.copy2(target_absolute_path, target_entry_path)      else:      # 如果不是符号链接,直接复制到目标目录          shutil.copy2(entry_path, os.path.join(target_directory, entry))         def download(repo_id):    source_directory = snapshot_download(repo_id=repo_id,cache_dir="/app/data/",force_download =True)    print("文件路径:",source_directory)    path_name = repo_id.replace("/","---")    target_directory = f"{os.getcwd()}/download/{path_name}"    # 移动文件    os.system(f"mkdir -p {target_directory}")    os.system(f"mkdir -p {os.getcwd()}/tar/{path_name}/")    copy_data(source_directory,target_directory)    print("复制路径:",target_directory)    return target_directory        def upload_by_file(source_path):bp = ByPy()    dest_path = source_path.split("/")[-1]  # 文件名    out = bp.upload(    source_path,      dest_path    )    return out
def upload_by_path(source_path,compress=True):bp = ByPy()    # 创建目录    dest_path = source_path.split("/")[-1]    # 压缩   if compress:    print("分卷压缩....")      tar_path =f"{os.getcwd()}/tar/{dest_path}"      os.system(f"zip -s 4000M {tar_path}/{dest_path}.zip {source_path}/*")      source_path = tar_path    print("上传百度云....")    bp.mkdir(dest_path)    # 同步目录    out = bp.syncup(    source_path,      dest_path    )    return out      if __name__ == "__main__":  ## 设置 repo_id  repo_id = "THUDM/chatglm2-6b-int4"  out_path = download(repo_id)      # 上传文件夹  # 如果单个文件大小小于 4G 则无需压缩  bp = ByPy()  print(bp.list())  upload_by_path(out_path,compress=True)  !rm -rf /content/download/*  !rm -rf /content/tar/*

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/29694.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

统计学一(术语,正态)

目录 一,常用术语 二,正态分布(Normal Distribution) 三,中心极限定理(Central Limit Theorem) 一,常用术语 population(族群):要统计的总的 populationSize(族群数量):要统计的总…

使用高斯混合模型(GMM)进行猫狗音频聚类(Kaggle Audio Cats and Dogs)

Audio Cats and Dogs | Kaggle 目录 一、实验目标 二、数据分析 三、实验结果 四、改进方向 一、实验目标 数据集包括164个标注为猫的.wav文件,总共1323秒和113个标注为狗叫声的.wav文件,总共598秒,要求判别每个音频是狗叫还是猫叫 二、…

反激开关电源保险丝以及热敏电阻的选型

保险丝(2A/250V) 保险丝的选型及计算 1、保险丝的作用就是在电路出现故障造成过流甚至短路时能及时切断电路电源的联系。( 保护后 级电路,一旦出现故障,由于电流过大温度过高,保险丝熔断 ) 2、…

6月18日 Qtday4

作业day4.1 作业4.2

SpringBoot快速入门-上

Apache Tomcat Apache Tomcat是一个开源的Servlet 或 web容器,它实现了Java Servlet、JavaServer Pages (JSP)、Java Unified Expression Language (JUEL) 和 Java WebSocket 规范。 使用 官网下载 安装:绿色版 , 直接解压 卸载:直接删除目录 改编码: # conf/l…

多路h265监控录放开发-(1)建立head窗口并实现鼠标拖动整个窗口

头文件: //鼠标事件 用于拖动窗口//一下三个函数都是QWidget的可重载成员函数void mouseMoveEvent(QMouseEvent* ev) override;void mousePressEvent(QMouseEvent* ev) override;void mouseReleaseEvent(QMouseEvent* ev) override; 源文件: / /// 鼠标…

玩了两年黑苹果+两年MBP,macOS究竟好在哪?

注:本文仅为个人观点,仅供参考。 前言 今天比较无聊,小白突然盘点了一下自己使用macOS系统的点点滴滴,这也算是一个闲聊帖子吧。 首先,本帖子无任何广告行为,纯属唠嗑文。 声明一下,以防有小…

如何评价2023年亚太杯数学建模竞赛?

APMCM亚太数学建模大赛的含金量在数学建模比赛中虽然不是最高水平,但是也属于比较高的水平了,值得参加试一试。 比如本次C题, 问题一:研究分析影响中国新能源汽车发展的主要因素,建立数学模型,描述这些因…

[14] CUDA_使用Opencv处理图像

CUDA_使用Opencv处理图像 1. Opencv中的图像表示 Opencv 提供了Mat 类来存储图像,如下: cv::Mat img; imgcv::imread("cameraman.tif);定义图像的示例: //定义单通道图像 cv::Mat img(6,6,CV_8UC1); //32位浮点型 Mat img2(256,256,…

sharePoint-基于sharepoint列表中的其他列值自动更新值列

首先进入网站,点击网站内容 点击想要操作的数据表后面的按钮,点击设置 点击创建栏 填写栏名,类型选择计算值,公式用于对列表或库中的值执行计算,然后点击右下角的确定就添加成功了 公式参考: 公式SharePoi…

Windows系统下制作Windows 11系统U盘启动及安装指导

Windows系统下制作Windows 11系统U盘启动及安装指导 一、准备工作 U盘不得小于8G(推荐使用usb3.0接口);下载好对应的系统镜像;下载RUFUS或者软通碟U盘制作启动软件; 二、Windows操作系统下制作U盘启动(这里以使用RUFUS软件为例&…

Chromium 开发指南2024 Mac篇-安装和配置depot_tools工具(三)

1.引言 在前两篇指南中,我们详细介绍了在 macOS 环境下编译 Chromium 所需的硬件要求和系统依赖,并具体讲解了如何正确安装和配置 Xcode。通过这些步骤,您已经为编译 Chromium 打下了坚实的基础。然而,编译 Chromium 还需要配置一…

电路分析期末总结笔记上

电流,电压定义及单位 电流(Current) 的定义是单位时间内通过导体横截面的电荷量。 电压(Voltage),又称作电势差或电位差,是衡量单位电荷在静电场中由于电势不同而产生的能量差的物理量。 参考…

如何将Postman API测试转换为JMeter以进行扩展

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客跳槽涨薪的朋友们有福了,今天给大家推荐一个软件测试面试的刷题小程序。​编辑https://…

Apache Royale

Apache Royale 顶级项目 Apache Royale 之前adobe的flex,由于浏览器flash,安全沙箱问题,逐步退出市场,当年flex也就是AS3,浏览器统一兼容问题又停止了。 接着要说明一点,HTML5的自适应是在flex之后&#x…

shell编程中的运算符的讲解

在Linux操作系统中也可以使用expr来进行一些数值的运算,expr接受表达式作为参数,并打印计算结果。 对于某些复杂的表达式或早期不支持内嵌算术表达式的Shell环境,expr 仍然是一个可行的选择。 如上图所示,是使用变量sum来承接加和…

技术点梳理0618

ann建库,分布式建库,性能优化,precision recall参数优化 hnsw,图索引 1. build a)确定层:类似跳表思路建立多层,对每一个插入的节点,random层号l,从图的起始点search_…

文献学习——PWM - PFM模式无缝转换的PFC变换器统一控制

PWM - PFM模式无缝转换的PFC变换器统一控制 摘要:断续导通模式通常应用在升压功率因数校正转换器中。这篇文章提出了一种基于虚拟阻抗原理的实现脉冲宽度调制控制和脉冲频率调制控制的统一控制方法。控制模式可以简单的通过只调整一个控制参数来改变。因此&#xf…

第十一章:接口

接口 文章目录 接口一、简介1.1 接口是什么1.2 接口的作用1.3 接口的开发与调用1.4 接口的组成 二、RESTful API三、json-server四、接口测试工具五、接口的创建 一、简介 1.1 接口是什么 接口是前后端通信的桥梁 简单理解:一个接口就是 服务中的一个路由规则&am…

聊聊系统架构之负载均衡优化实践

一、写在前面 最近在进行线上监控检查时,我遇到了两个超出预期的案例。首先,网关层的监控数据与应用实际监控数据存在不一致性,尤其是max有较大的差异,详见如下图。其次在某个应用中,通过httpclient请求某域名时发现只…