数据集管理API
本文档主要说明当您线下已有大量的已经完成标注的图片数据,如何通过调用API完成图片及标注的便捷上传和管理。 EasyDL图像数据集管理API在管理不同模型数据类型之间是通用的。上传不同模型类型数据,只是在部分接口入参存在差异,使用及接口地址完全一致。
数据集创建API
接口描述
该接口可用于创建数据集。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/dataset/create
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
dataset_name | 是 | string | 数据集名称,长度不超过20个utf-8字符 |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
dataset_id | 否 | number | 创建的数据集ID |
数据集列表API
接口描述
该接口可用于查看数据集列表。返回数据集的名称、类型、状态等信息。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台-公有云部署-应用列表页面创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/dataset/list
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
start | 否 | number | 起始序号,默认为0 |
num | 否 | number | 数量,默认20,最多100 |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
total_num | 否 | number | 数据集总数 |
results | 否 | array(object) | 数据集列表 |
+dataset_id | 否 | number | 数据集ID |
+dataset_name | 否 | string | 数据集名称 |
+type | 否 | string | 数据集类型 |
+status | 否 | string | 数据集状态 |
+special_status | 否 | string | 数据集特殊状态,包括shared、smart和空值,分别表示共享中、智能标注中、非特殊状态 |
分类(标签)列表API
接口描述
该接口可用于查看分类(标签)。返回分类(标签)的名称、包含数据量等信息。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台-公有云部署-应用列表页面创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/label/list
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
dataset_id | 是 | number | 数据集ID |
start | 否 | number | 起始序号,默认0 |
num | 否 | number | 数量,默认20,最多100 |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
total_num | 否 | number | 标签总数 |
results | 否 | array(object) | 标签列表 |
+label_id | 否 | string | 标签/分类ID |
+label_name | 否 | string | 标签/分类名称 |
+entity_count | 否 | number | 图片/声音/文本数量 |
添加数据API
接口描述
该接口可用于在指定数据集添加数据。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台-公有云部署-应用列表页面创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/dataset/addentity
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
dataset_id | 是 | number | 数据集ID |
appendLabel | 否 | boolean | 确定添加标签/分类的行为:追加(true)、替换(false)。默认为追加(true)。 |
entity_content | 是 | string | type为 IMAGE_CLASSIFICATION/OBJECT_DETECTION/IMAGE_SEGMENTATION/SOUND_CLASSIFICATION时,填入图片/声音的base64编码;type为TEXT_CLASSIFICATION时,填入utf-8编码的文本。内容限制为:图像分类base64前10M;物体检测base64前10M;图像分割base64前10M;声音分类base64前4M,声音时长1~15秒;文本分类10000个汉字 |
entity_name | 是 | string | 文件名 |
labels | 否 | array(object) | 标签/分类数据。若为空,则只上传图片,不上传标签/分类。若不为空,则应在数组中包含以下前面带+的参数 |
+label_name | 是 | string | 标签/分类名称(由中文、数字、字母、中划线、下划线组成),长度限制20B |
+left | 否 | number | 物体检测时需给出,标注框左上角到图片左边界的距离(像素) |
+top | 否 | number | 物体检测时需给出,标注框左上角到图片上边界的距离(像素) |
+width | 否 | number | 物体检测时需给出,标注框的宽度(像素) |
+height | 否 | number | 物体检测时需给出,标注框的高度(像素) |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
数据集删除API
接口描述
该接口可用于删除数据集。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台-公有云部署-应用列表页面创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/dataset/delete
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
dataset_id | 是 | number | 数据集ID |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
分类(标签)删除API
接口描述
该接口可用于删除分类(标签)。
接口鉴权
同模型上线后获取的API:
1、在EasyDL控制台-公有云部署-应用列表页面创建应用
2、应用详情页获取API Key和Secret Key
请求说明
请求示例
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rpc/2.0/easydl/label/delete
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
Body中放置请求参数,参数详情如下:
请求参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
type | 是 | string | 数据集类型,可包括: IMAGE_CLASSIFICATION, OBJECT_DETECTION, IMAGE_SEGMENTATION, SOUND_CLASSIFICATION, TEXT_CLASSIFICATION 分别对应:图像分类、物体检测、图像分割、声音分类、文本分类 |
dataset_id | 是 | number | 数据集ID |
label_name | 是 | string | 标签/分类名称 |
返回说明
返回参数
字段 | 必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | number | 唯一的log id,用于问题定位 |
错误码
若请求错误,服务器将返回的JSON文本包含以下参数:
- error_code:错误码。
- error_msg:错误描述信息,帮助理解和解决发生的错误。
例如Access Token失效返回:
{
"error_code": 110,
"error_msg": "Access token invalid or no longer valid"
}
需要重新获取新的Access Token再次请求即可。
错误码 | 错误信息 | 描述 |
---|---|---|
1 | Unknown error | 服务器内部错误,请再次请求, 如果持续出现此类错误,请在百度智能云控制台内提交工单反馈 |
2 | Service temporarily unavailable | 服务暂不可用,请再次请求, 如果持续出现此类错误,请在百度智能云控制台内提交工单反馈 |
3 | Unsupported openapi method | 调用的API不存在,请检查后重新尝试 |
4 | Open api request limit reached | 集群超限额 |
6 | No permission to access data | 无权限访问该用户数据 |
13 | Get service token failed | 获取token失败 |
14 | IAM Certification failed | IAM鉴权失败 |
15 | app not exsits or create failed | 应用不存在或者创建失败 |
17 | Open api daily request limit reached | 每天请求量超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度智能云控制台内提交工单反馈 |
18 | Open api qps request limit reached | QPS超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度智能云控制台内提交工单反馈 |
19 | Open api total request limit reached | 请求总量超限额,已上线计费的接口,请直接在控制台开通计费,调用量不受限制,按调用量阶梯计费;未上线计费的接口,请在百度智能云控制台内提交工单反馈 |
100 | Invalid parameter | 无效的access_token参数,请检查后重新尝试 |
110 | Access token invalid or no longer valid | access_token无效 |
111 | Access token expired | access token过期 |
406000 | internal server error | 服务错误 |
406001 | param[xx] invalid | 参数xx不合法,请检查相关参数 |
406002 | dataset not exist | 数据集不存在 |
406003 | dataset already exists | 数据集已存在 |
406004 | dataset can not be modified temporarily | 数据集暂不可修改 |
406005 | label not exist | 标签/分类不存在 |
406006 | no permission to modify the dataset | 没有修改数据集的权限 |
406007 | dataset cannot be modified while smart annotation is running | 智能标注期间不可修改数据集 |
406008 | quota exceeded | 配额超限 |