# 图片分类 WebAPI文档
注意:文中的<service-id>表示需要修改成自己训练后的服务ID,不带尖括号
部分开发语言demo如下,其他开发语言请参照文档进行开发,也欢迎热心的开发者到 讯飞开放平台社区 (opens new window) 分享你们的demo。
# 接口地址
https://xingchen.cn-huabei-2.xf-yun.com/v1/private/<service-id>
# 请求协议
{
"header": {
"app_id": "123456",
"uid": "",
"did": "",
"imei": "",
"imsi": "",
"mac": "",
"net_type": "wifi",
"net_isp": "CMCC",
"status": 3,
"request_id": null,
"res_id": ""
},
"parameter": {
"<service-id>": {
"atp_patch_id": "0",
"result": {
"encoding": "utf8",
"compress": "raw",
"format": "plain"
}
}
},
"payload": {
"image": {
"encoding": "jpg",
"image": "",
"status": 3
}
}
}
# 协议结构说明
字段 | 含义 | 类型 | 说明 |
---|---|---|---|
header | 协议头部 | Object | 协议头部,用于描述平台特性的参数 |
parameter | 能力参数 | Object | AI 特性参数,用于控制 AI 引擎特性的开关。 |
service-id | 服务别名 | Object | 训练后的服务名 |
result | 响应数据控制 | Object | 数据格式预期,用于描述返回结果的编码等相关约束,不同的数据类型,约束维度亦不相同,此 object 与响应结果存在对应关系。 |
payload | 输入数据段 | Object | 数据段,携带请求的数据。 |
image | 输入数据 | Object | 输入数据 |
# 请求参数
# 平台参数
字段 | 含义 | 类型 | 限制 | 是否必传 |
---|---|---|---|---|
app_id | 在平台申请的app id信息,点击申请 (opens new window) | string | "maxLength":50 | 是 |
uid | 请求用户服务返回的uid,用户及设备级别个性化功能依赖此参数 | string | "maxLength":50 | 否 |
did | 请求方确保唯一的设备标志,设备级别个性化功能依赖此参数 | string | "maxLength":50 | 否 |
imei | 设备imei信息 | string | "maxLength":50 | 否 |
imsi | 设备imsi信息 | string | "maxLength":50 | 否 |
mac | 设备mac信息 | string | "maxLength":50 | 否 |
net_type | 网络类型,可选值为wifi、2G、3G、4G、5G | string | wifi、2G、3G、4G、5G | 否 |
net_isp | 运营商信息,可选值为CMCC、CUCC、CTCC、other | string | CMCC、CUCC、CTCC、other | 否 |
request_id | 客户端请求的会话唯一标识 | string | "maxLength":64 | 否 |
res_id | 个性化资源ID | string | "maxLength":1024 | 否 |
status | 请求状态,可选值为:3-一次传完 | int | 3 | 是 |
# 服务特性参数
响应数据参数
result 段的参数(默认返回)
字段 | 含义 | 数据类型 | 取值范围 | 默认值 | 说明 | 必填 |
---|---|---|---|---|---|---|
encoding | 文本编码 | string | utf8, gb2312 | utf8 | 取值范围可枚举 | 否 |
compress | 文本压缩格式 | string | raw, gzip | raw | 取值范围可枚举 | 否 |
format | 文本格式 | string | plain, json, xml | plain | 取值范围可枚举 | 否 |
# 请求数据
image
字段 | 含义 | 数据类型 | 取值范围 | 默认值 | 说明 | 必填 |
---|---|---|---|---|---|---|
encoding | 图像编码 | string | jpg:jpg格式, jpeg:jpeg格式, png:png格式, bmp:bmp格式 | jpg | 图像编码 | 否 |
image | 图像数据 | string | 最小尺寸:0B, 最大尺寸:4194304B | 图像数据,base64 | 是 | |
status | 数据状态 | int | 3:一次性传完 | 3 | 取值范围为:3(一次传完) | 否 |
# 响应
# 响应协议示例
{
"header": {
"code": 0,
"message": "success",
"sid": "ase000704fa@dx16ade44e4d87a1c802"
},
"payload": {
"result": {
"encoding": "utf8",
"compress": "raw",
"format": "json",
"status": 3,
"text": ""
}
}
}
协议结构说明
字段 | 含义 | 类型 | 说明 |
---|---|---|---|
header | 协议头部 | Object | 协议头部,用于描述平台特性的参数,详见 4.2.1 平台参数。 |
payload | 响应数据块 | Object | 数据段,携带响应的数据。 |
result | 响应数据块 | Object | 输出数据,详见 4.2.2 响应数据参数。 |
# 响应参数
# 平台参数
字段 | 含义 | 类型 | 是否必选 |
---|---|---|---|
code | 返回码,0表示成功,其它表示异常 | int | 是 |
message | 错误描述 | string | 是 |
sid | 本次会话的id | string | 是 |
# 响应数据参数
result(默认返回)
字段 | 含义 | 数据类型 | 取值范围 | 默认值 | 说明 | 必填 |
---|---|---|---|---|---|---|
encoding | 文本编码 | string | utf8, gb2312 | utf8 | 取值范围可枚举 | 否 |
compress | 文本压缩格式 | string | raw, gzip | raw | 取值范围可枚举 | 否 |
format | 文本格式 | string | plain, json, xml | json | 取值范围可枚举 | 否 |
status | 数据状态 | int | 3:一次性传完 | 3 | 取值范围为:3(一次传完) | 否 |
text | 文本数据 | string | 最小长度:0, 最大长度:1000000 | 是 |
# 错误码列表
错误码 | 错误描述 | 说明 | 处理策略 |
---|---|---|---|
10009 | input invalid data | 输入数据非法 | 检查输入数据 |
10010 | service license not enough | 没有授权许可或授权数已满 | 提交工单 |
10019 | service read buffer timeout, session timeout | session超时 | 检查是否数据发送完毕但未关闭连接 |
10043 | Syscall AudioCodingDecode error | 音频解码失败 | 检查aue参数,如果为speex,请确保音频是speex音频并分段压缩且与帧大小一致 |
10114 | session timeout | session 超时 | 会话时间超时,检查是否发送数据时间超过了60s |
10139 | invalid param | 参数错误 | 检查参数是否正确 |
10160 | parse request json error | 请求数据格式非法 | 检查请求数据是否是合法的json |
10161 | parse base64 string error | base64解码失败 | 检查发送的数据是否使用base64编码了 |
10163 | param validate error:... | 参数校验失败 | 具体原因见详细的描述 |
10200 | read data timeout | 读取数据超时 | 检查是否累计10s未发送数据并且未关闭连接 |
10222 | context deadline exceeded | 1.上传的数据超过了接口上限; 2.SSL证书无效; | 1.检查接口上传的数据(文本、音频、图片等)是否超越了接口的最大限制,可到相应的接口文档查询具体的上限; 2. 请将log导出发到工单:https://console.xfyun.cn/workorder/commit; |
10223 | RemoteLB: can't find valued addr | lb 找不到节点 | 提交工单 |
10313 | invalid appid | appid和apikey不匹配 | 检查appid是否合法 |
10317 | invalid version | 版本非法 | 请到控制台提交工单联系技术人员 |
10700 | not authority | 引擎异常 | 按照报错原因的描述,对照开发文档检查输入输出,如果仍然无法排除问题,请提供sid以及接口返回的错误信息,到控制台提交工单联系技术人员排查。 |
11200 | auth no license | 功能未授权 | 请先检查appid是否正确,并且确保该appid下添加了相关服务。若没问题,则按照如下方法排查。 1. 确认总调用量是否已超越限制,或者总次数授权已到期,若已超限或者已过期请联系商务人员。 2. 查看是否使用了未授权的功能,或者授权已过期。 |
11201 | auth no enough license | 该APPID的每日交互次数超过限制 | 根据自身情况提交应用审核进行服务量提额,或者联系商务购买企业级正式接口,获得海量服务量权限以便商用。 |
11503 | server error :atmos return an error data | 服务内部响应数据错误 | 提交工单 |
11502 | server error: too many datas in resp | 服务配置错误 | 提交工单 |
100001~100010 | WrapperInitErr | 调用引擎时出现错误 | 请根据message中包含的errno前往 5.2引擎错误码 查看对应的说明及处理策略 |
在这篇文章中: