Hugging Face这一段时间来特别火,融资拿到了一大笔钱,还跟Cousera这些社区常常联系,推出了diffusers
,Gradio
,Transformers
等等好用的库和框架.也可以作为上传数据集和模型的地方,这里尝试玩玩其常用的一些功能.
上传模型或数据集
使用git上传文件Getting Started with Repositories (huggingface.co)
数据集项目结构Structure your repository (huggingface.co)
一般来说应该使用git
相关功能直接上传下载,但是一旦文件特别多或者大,上传数据集时就比较麻烦.我就遇到了这些问题,而且不止我遇到了.Batch response: Too many password attempts while uploading the dataset files with lfs - 🤗Datasets - Hugging Face Forums 解决办法就是使用官方提供的api写python代码上传,或者通过git尝试分批次上传你的数据集.
这个问题截至我写时依旧是个Bug
看看这位兄弟的解决方案
也就是使用upload_folder
,知道这点后就方便多了,但是我也建议把git的ssh密钥也加到hugging face里.接下来按照官方教程1
2
3huggingface-cli login
# or using an environment variable
huggingface-cli login --token $HUGGINGFACE_TOKEN
注意,登录需要token,而创建token时,因为要上传数据,所以需要write权限.
登陆之后,如果要上传一个文件1
2
3
4
5
6
7
8from huggingface_hub import HfApi
api = HfApi()
api.upload_file(
path_or_fileobj="D:/anime_face/misaka_mikoto.zip",
path_in_repo="misaka_mikoto.zip",
repo_id="proanimer/anime_face",
repo_type="dataset",
)
文件夹也是同理1
2
3
4
5
6
7from huggingface_hub import HfApi
api = HfApi()
api.upload_folder(
folder_path="/path/to/local/space",
repo_id="username/my-cool-space",
repo_type="space",
)
当然也可以使用hugging face的cli1
2
3
4
5
6
7
8# Upload file at root
huggingface-cli upload my-cool-model model.safetensors
# Upload directory at root
huggingface-cli upload my-cool-model ./models
# Upload `my-cool-model/` directory if it exist, raise otherwise
huggingface-cli upload my-cool-model
然后可以修改DatasetCard
让其他人知道这是个什么,还有自动生成的Dataset Viewer
.
此外,官方建议除了CSV, JSON, JSON lines, text 以及Parquet这些格式数据之外,最好添加一个loading脚本用于加载数据集.1
2
3my_dataset/
├── README.md
└── my_dataset.py
目的是
- Add dataset metadata.
- Download data files.
- Generate samples.
- Generate dataset metadata.
- Upload a dataset to the Hub.
但是这里我就没有使用了,因为你可以直接git clone
这个仓库然后解压即可.