数据集上传
更新时间:2025-10-13
引言
飞桨 AI Studio 数据集文件上传共有以下五种方式:
- 使用命令行上传
- 使用 SDK 上传
- 使用 Git 上传
- 网页上传
- 网页创建相关文件
1. 命令行上传
# 首次使用请请先安装aistudio-sdk库
pip install --upgrade aistudio-sdk
aistudio upload -h
usage: PROG upload [-h] [--repo-type {model,dataset}] [--include [INCLUDE ...]] [--exclude [EXCLUDE ...]] [--commit-message COMMIT_MESSAGE] [--token TOKEN]
[--max-workers MAX_WORKERS]
repo_id [local_path] [path_in_repo]
positional arguments:
repo_id The ID of the repo to upload to (e.g. `username/repo-name`)
local_path Optional, Local path to the file or folder to upload. Defaults to current directory.
path_in_repo Optional, Path of the file or folder in the repo. Defaults to the relative path of the file or folder.
options:
-h, --help show this help message and exit
--repo-type {model,dataset}
Type of the repo to upload to (e.g. `dataset`, `model`). Defaults to be `model`.
--include [INCLUDE ...]
Glob patterns to match files to upload.
--exclude [EXCLUDE ...]
Glob patterns to exclude from files to upload.
--commit-message COMMIT_MESSAGE
The message of commit. Default to be `None`.
--token TOKEN A User Access Token
--max-workers MAX_WORKERS
The number of workers to use for uploading files.
1.1 上传文件
上传数据集文件需要数据集所有者的Access Token,可在我的控制台--令牌处获取
# 以下示例为将本地的README.md文件上传到repo中master分支的根目录内
# 需要填写repo_id(数据集详情页中)和Access Token(在我的控制台--令牌获取)
aistudio upload {repo_id} ./path/to/local/README.md README.md --repo-type dataset --token {access_token}
1.2 上传文件夹
# 以下示例为将本地folder文件夹中的文件上传至repo中的data目录内
# 需要填写repo_id(数据集详情页中)和Access Token(在我的控制台--令牌获取)
aistudio upload {repo_id} ./path/to/local/folder data/ --repo-type dataset --token {access_token}
2. SDK上传(Python环境)
# 首次使用需要安装aistudio-sdk库
pip install --upgrade aistudio-sdk
2.1 文件上传
import os
# 需要填写aistudio-access-token, 在我的控制台--令牌获取
os.environ["AISTUDIO_ACCESS_TOKEN"] = "{access_token}"
from aistudio_sdk.hub import upload_file
res = upload_file(
# 填写数据集详情页面中的repo_id
repo_id='{repo_id}',
# 填写要上传的文件在本地的路径,如'./path/to/local/README.md'
path_or_fileobj='./path/to/local/README.md',
# 填写上传至repo后的文件路径及文件名,如填写'README.md',则会在master分支的根目录内,上传README.md
path_in_repo='README.md',
# 填写commit信息,非必填
commit_message='upload dataset file to repo',
# 填写仓库类型为dataset,上传数据集文件时为必填项
repo_type = 'dataset'
)
print(res)
参数说明(upload_file):
字段名 | 必填 | 类型 | 描述 |
---|---|---|---|
path_or_fileobj | 是 | str | 本地待上传文件的路径 |
path_in_repo | 是 | str | 文件上传至repo后的文件路径及文件名 |
repo_id | 是 | str | 数据集唯一标识符(如myname/reponame),在数据集详情页获取 |
token | 否 | str | 数据集所有者的Access Token,前置已经登陆时,可缺省。在我的控制台--令牌获取 |
repo_type | 否 | str | 数据集仓库指定为dataset,如不填则默认为model |
commit_message | 否 | str | 本次提交的信息 |
2.2 文件夹上传
import os
# 需要填写aistudio-access-token, 在我的控制台--令牌获取
os.environ["AISTUDIO_ACCESS_TOKEN"] = "{access_token}"
from aistudio_sdk.hub import upload_folder
res = upload_folder(
# 填写数据集详情页面中的repo_id
repo_id='{repo_id}',
# 填写要上传的文件在本地的路径,如'./path/to/local/dir'
folder_path='./path/to/local/dir',
# 填写上传至repo后的文件路径,如填写'data/',则会将文件上传至data目录内;或不填,则默认上传至master分支的根目录内
path_in_repo='data/',
# 填写commit信息,非必填
commit_message='upload dataset folder to repo',
# 填写仓库类型为dataset,上传数据集文件时为必填项
repo_type = 'dataset'
)
print(res)
参数说明(upload_folder):
字段名 | 必填 | 类型 | 描述 |
---|---|---|---|
repo_id | 是 | str | 数据集唯一标识符(如myname/reponame),在数据集详情页获取 |
folder_path | 是 | str | 本地待上传文件夹的路径 |
path_in_repo | 否 | str | 文件夹上传至repo后的具体路径及文件夹名称 |
commit_message | 否 | str | 此次上传提交所包含的更改内容 |
token | 否 | str | 数据集所有者的Access Token,前置已经登陆时,可缺省。在我的控制台--令牌获取 |
repo_type | 否 | str | 数据集仓库指定为dataset,如不填则默认为model |
allow_patterns | 否 | str | 允许上传的文件类型模板,例如*.json, 默认为None |
ignore_patterns | 否 | str | 上传时忽略的文件类型模板,例如*.log,默认为None |
max_workers | 否 | int | 上传时开启的线程数量,默认为 min(8,os.cpu_count() + 4) |
revision | 否 | str | 上传的分支,默认为master |
3. Git上传
常见命令说明详见如下:
# 请确认已经安装git-lfs (https://git-lfs.com)
git lfs install
# 首先使用git克隆远程仓库到本地,需要填写Access Token(在我的控制台--令牌获取)和repo_id(数据集详情页中)
# 示例:git clone https://6b27a165b0851ae4651fbc5fe09022cd17@git.aistudio.baidu.com/myname/reponame.git
git clone https://{access_token}@git.aistudio.baidu.com/{repo_id}.git
# 进入本地的git仓库目录,如cd dataset_name/
cd "数据集名称"/
# 添加修改过的文件到暂存区,如 git add README.md 添加指定的README.md文件,或 git add . 添加所有修改文件
git add "已修改的文件"
# 将暂存区的修改文件提交到本地仓库,并附带一条简短的提交说明,如 git commit -m "添加README.md文件"
git commit -m "修改描述"
# 推送到远程仓库
git push
4. 网页上传
4.1 数据集文件页上传文件
4.2 网页上传
说明:
- 网页上传单次最多上传10个文件,且总体积不超过500MB,文件上传成功后即可在页面看见文件并预览文件内容。
- 平台支持对以下文件类型进行在线预览查看,可预览文件大小上限1M:
.bash, .c, .cpp, .h, .hpp, .ipynb, .js, .json, .makefile, .md, .py, .sh, .txt, .xml, .yaml, .yml, .gitattributes。
5. 网页创建相关文件
5.1 数据集文件页新建文件
5.2 文件在线编辑
可以通过在文件名称处输入文件路径创建文件夹及对应文件(并支持Markdown格式文件预览):
注意事项
- 特别注意不要混用 ~波浪线 与 /Users/${your_username}。已测得在特殊情况下,会报错本地文件已存在,导致进程不成功。不同版本的python,表现情况也不同,请尽可能使用绝对路径。
- 不允许上传的文件:
类别 | 文件后缀 |
---|---|
可执行程序 | .exe, .apk, .app, .jar, .bat |
系统文件 | .dll, .sys, .dmg, .iso |
设计源文件 | .psd, .ai, .sketch, .fcpx, .blend |
开发配置文件 | .yml, .ini, .env, .toml |
虚拟化文件 | .vmdk, .ova, .qcow2 |
临时文件 | .tmp, .swap, .bak |
模型文件 | .pdparams、.pdipaprams、.pdmodel、.safetensors、.npy、.pdparams.tar |