赞
踩
huggingface的官方网站是:https://huggingface.co/。官网首页上的简介是,“The platform where the machine learning community collaborates on models, datasets, and applications.” ,可以理解为,一个提供了机器学习相关模型、数据集和应用的分享交流社区平台。
上面提供了很多AI领域的资源:Datasets(数据集)、Models(预训练模型)、Spaces(AI相关应用)、docs(相关技术文档)等。
直接点击数据集右边的 “Use in dataset library” 按钮,即可跳出加载数据的代码。
方便起见,可以保存到本地指定路径:
- from datasets import load_dataset
-
- dataset = load_dataset("m-a-p/COIG-CQIA")
- dataset.save_to_disk('./data/COIG-CQIA')
下载下来的不是原始项目数据,要用函数进行调用:
- import datasets
-
- dataset = load_from_disk("your_path")
运行过程中遇到了 ConnectionError: Couldn't reach 'm-a-p/COIG-CQIA' on the Hub (SSLError)的报错,解决方法见第三部分。
这个方法下载的是整个项目的所有文件包括一些历史版本,和点进项目的files and versions看到的文件结构一样,就是不用在网页上一个个点击下载文件了,直接批量下载。
https://huggingface.co/datasets/m-a-p/COIG-CQIA/tree/main
- from huggingface_hub import hf_hub_download
-
- snapshot_download(repo_id='m-a-p/COIG-CQIA',
- repo_type="dataset", # 可选 [dataset,model]
- local_dir='./data/test', # 下载到本地的路径
- resume_download=True) # 断点续传
这里repo_id是
以bert-base-chinese模型 https://huggingface.co/google-bert/bert-base-chinese/tree/main 为例:
这种方法的优点是:在snaphot_download方法中,提供了allow_patterns和ignore_patterns两个参数用于部分文件下载,前者会对指定的匹配项进行下载,后者会忽略指定的匹配项下载其余文件。
如下代码,可以只下载Pytorch版本的模型,不包括TensorFlow和Flax的模型。
- from huggingface_hub import snapshot_download
-
- snapshot_download(repo_id="bert-base-chinese", local_dir='./bert-base-chinese', resume_download=True, ignore_patterns=["*.h5", "*.ot", "*.msgpack"])
如果是大数据量,就先安装git lfs,在已安装git的前提下,windows上直接运行
git lfs install
如图,直接在项目网页上点击clone repository可以获取clone命令,但现在连接hugging face需要挂vpn,要在git中进行设置,我尝试这种方式一直下不下来,会报错 fatal: unable to access 'https://huggingface.co/datasets/m-a-p/COIG-CQIA/': Failed to connect to huggingface.co port 443: Timed out,遂放弃。
先使用pip安装pycrawlers,如果遇到问题参考下面的解决方式。
- from pycrawlers import huggingface
-
- # 实例化类
- hg = huggingface()
-
- urls = ['https://huggingface.co/datasets/m-a-p/COIG-CQIA/tree/main',
- 'https://huggingface.co/google-bert/bert-base-chinese/tree/main']
-
- # 批量下载
- # 默认保存位置在当前脚本所在文件夹 ./
- # hg.get_batch_data(urls)
-
- # 自定义下载位置
- paths = ['./data/git-COIG-CQIA', './data/bert-base-chinese']
- hg.get_batch_data(urls, paths)
这个方法下载数据比直接用git方便点,可以批量下载多个项目,但还是得使用vpn才行,不需要像使用git那样额外配置。缺点是一次得下载项目制你给的所有文件,不能进行筛选指定。
解决方法:pandas版本改为1.3.0
解决方法:
在科学上网之后运行load_dataset()函数仍会报SSLError的错误,可以修改python环境路径下的.\anaconda3\Lib\urllib\request.py文件,搜索“proxyServer”关键词,将下面的代码注释并进行修改,即可跑通程序性成功下载:
参考教程:
当Python大于等于3.7的时候,安装部分库时会出现这个编码问题。网上的解决方法都说先命令行运行 set PYTHONUTF8=1 再 pip就能成功,实际上直接执行这两步并没有操作成功,也尝试了设置环境变量,最终证实得设置【系统变量】PYTHONUTF8=1,然后一定要重启cmd再执行pip命令,就能成功安装了。
参考https://github.com/alibaba/web-editor/issues/145 最下面的解决方法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。