AI搜索开放平台支持通过API的方式调用图片内容提取服务,您可以将服务集成到您的业务处理链路中,解析后的文本可用于图片检索问答场景。
服务列表
|
服务名称 |
服务ID |
服务描述 |
API调用QPS限制(含主账号与RAM子账号) |
|
图片内容理解服务001 |
ops-image-analyze-vlm-001 |
提供图片内容解析服务,可基于多模态大模型对图片内容进行解析理解以及文字识别,解析后的文本可用于图片检索及问答等场景。 |
10 说明 如需扩充QPS,请通过工单联系技术支持协助。 |
|
图片文本识别服务001 |
ops-image-analyze-ocr-001 |
提供图片内容OCR识别服务,可基于OCR能力对图片文字进行识别,将文字信息提取出来,用于图片检索及问答等场景。 |
获取身份鉴权信息
通过API调用AI搜索开放平台服务时,需要对调用者身份进行鉴权,如何获取鉴权信息请参见获取API-KEY。
获取服务调用地址
支持通过公网和VPC两种方式调用服务,详情请参见获取服务接入地址。
创建异步提取任务
请求方式
POST
URL
{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/async
-
host:调用服务的地址,支持通过公网和VPC两种方式调用API服务,可参见获取服务接入地址。
在AI搜索开放平台控制台左侧导航栏选择API Keys,在页面上方访问域名区域可查看公网API域名和私网API域名。
-
workspace_name:工作空间名称,例如default。
-
service_id: 系统内置服务ID,例如ops-image-analyze-vlm-001。
请求参数
Header参数
API-KEY认证
|
参数 |
类型 |
必填 |
描述 |
示例值 |
|
Content-Type |
String |
是 |
请求类型:application/json |
application/json |
|
Authorization |
String |
是 |
API-Key |
Bearer OS-d1**2a |
Body参数
|
参数 |
类型 |
必填 |
描述 |
示例值 |
|
service_id |
String |
是 |
系统内置服务ID:
|
ops-image-analyze-vlm-001 |
|
document.url |
String |
否 |
指明文件保存的URL地址。URL和content二选一,支持http,https协议。 |
http://path/to/***.jpg |
|
document.content |
String |
否 |
指明文件的内容,用Base64Encode编码。URL和content二选一。 |
"aGVsbG8gd29ybGQ=" |
|
document.file_name |
String |
否 |
文件名,如果为空从URL推断,如果URL为空需要显式指定。 |
test.jpg |
|
document.file_type |
String |
否 |
文件类型,为空则从file_name的后缀推断,无法推断则需要显式指定,如:jpg, jpeg, png, bmp,tiff。 |
jpg |
返回参数
|
参数 |
类型 |
描述 |
示例值 |
|
result.task_id |
String |
图片解析异步任务ID。 |
6177bf71-f87f-4d86-ab0c-e2b64dfe**** |
Curl请求示例
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <您的API-KEY>" \
"http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/async"
--data '{
"document": {
"url": "https://img01.yzcdn.cn/****/2017/05/11/FoTMgBa0SvUaAeFruY7i7O_EUMhf.jpg%21middle.jpg",
"file_type": "jpg"
}
}' \
响应示例
正常响应示例
{
"request_id":"CD4E26F0-23FF-449C-83DC-20CC8FF1****",
"latency":8.0,
"http_code":200,
"result":{
"task_id":"cd4e26f0-23ff-449c-83dc-20cc8ff1****"
}
}
异常响应示例
在访问请求出错的情况下,输出的结果中会通过code和message指明出错原因。
{
"request_id":"0CCAC03B-D83F-432F-B6BA-C3049576****",
"latency":0.0,
"code":"InvalidParameter",
"http_code":400,
"message":"document.content or document.url required, and both cannot be present at the same time"
}
获取异步提取任务状态
请求方式
GET
URL
{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/async/task-status?task_id=${task_id}
-
host:调用服务的地址,支持通过公网和VPC两种方式调用API服务,可参见获取服务接入地址。
-
workspace_name:工作空间名称,例如default。
-
service_id: 系统内置服务ID,例如ops-image-analyze-vlm-001。
-
task_id:创建图片解析响应中返回的任务标识ID,例如cd4e26f0-23ff-449c-83dc-20cc8ff1****。
请求参数
Header参数
API-KEY认证
|
参数 |
类型 |
必填 |
描述 |
示例 |
|
Content-Type |
string |
是 |
请求类型:application/json |
application/json |
|
Authorization |
string |
是 |
API-Key |
Bearer OS-d1**2a |
返回参数
|
参数 |
类型 |
描述 |
示例 |
|
request_id |
String |
系统对一次API调用赋予的唯一标识。 |
3C09570D-12DB-46B4-BF0F-A100D79B**** |
|
latency |
Float/Int |
请求耗时,单位ms。 |
3.0 |
|
result.task_id |
String |
异步任务ID,同步调用时无此项。 |
a7e4c0f6-874c-47e3-b05b-02278a96e**** |
|
result.status |
String |
任务状态:
|
SUCCESS |
|
result.data |
Object |
图片解析的结果。 |
{"content":"图中展示的是XXXX", "content_type":"plain"} |
|
result.data.content |
String |
图片内容。 |
"XXX" |
|
result.data.content_type |
String |
输出的文本类型:plain。 |
plain |
|
usage.token_count |
int |
输出的token数,适用于ops-image-analyze-vlm-001服务。 |
1234 |
|
usage.pv_count |
int |
调用次数(固定为1),适用于ops-image-analyze-ocr-001服务。 |
1 |
Curl请求示例
curl -X GET \
-H"Content-Type: application/json" \
-H "Authorization: Bearer 您的API-KEY" \
"http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/async/task-status?task_id=d9781786-20b8-4fb4-bbb5-38f82e69****"
响应示例
正常响应示例
{
"request_id":"3C09570D-12DB-46B4-BF0F-A100D79B****",
"latency":3.0,
"http_code":200,
"result":{
"status":"SUCCESS",
"data":{
"content":"图中展示的是一台WMF品牌的搅拌机,周围摆放着各种水果和蔬菜。搅拌机旁边有一个装有红色果汁的杯子,杯子里还插着一根吸管。桌子上散落着几片柠檬、几个草莓和一些猕猴桃。在桌子的一角还有一个切好的菠萝和一个橙子。此外,还有一些胡萝卜被切成小块放在搅拌机里准备榨汁。整个场景看起来非常健康和美味。",
"content_type":"plain"
},
"task_id":"d9781786-20b8-4fb4-bbb5-38f82e69****"
},
"usage":{
"token_count":95
}
}
异常响应示例
在访问请求出错的情况下,输出的结果中会通过code和message指明出错原因。
{
"request_id":"153FC253-468D-4C46-873E-2AEB918C****",
"latency":2.0,
"code":"BadRequest.TaskNotExist",
"http_code":404,
"message":"task[d9781786-20b8-4fb4-bbb5-38f82e690b****] not exist"
}
创建同步提取任务
请求方式
POST
URL
{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/sync
参数说明
-
host:调用服务的地址,支持通过公网和VPC两种方式调用API服务,可参见获取服务接入地址。
-
workspace_name:工作空间名称,例如default。
-
service_id: 系统内置服务ID,例如ops-image-analyze-vlm-001。
请求参数
Header参数
API-KEY认证
|
参数 |
类型 |
必填 |
描述 |
示例值 |
|
Content-Type |
String |
是 |
请求类型:application/json |
application/json |
|
Authorization |
String |
是 |
API-Key |
Bearer OS-d1**2a |
Body参数
|
参数 |
类型 |
必填 |
描述 |
示例值 |
|
service_id |
String |
是 |
系统内置服务ID:
|
ops-image-analyze-vlm-001 |
|
document.url |
String |
否 |
指明文件保存的URL地址。URL和content二选一,支持http,https协议。 |
http://path/to/***.jpg |
|
document.content |
String |
否 |
文档内容,用Base64Encode编码 与document.url二选一即可。 |
"aGVsbG8gd29ybGQ=" |
|
document.file_name |
String |
否 |
文件名,如果为空从URL推断,如果URL为空需要显式指定。 |
test.jpg |
|
document.file_type |
String |
否 |
文件类型,如果为空从file_name的后缀推断,如果无法推断需要显式指定,如:jpg,jpeg,png, bmp,tiff。 |
jpg |
返回参数
|
参数 |
类型 |
描述 |
示例值 |
|
result.status |
String |
任务状态:
|
SUCCESS |
|
result.error |
String |
status=FAIL时的错误信息内容,正常情况为空。 |
文档解密失败 |
|
result.data |
Object |
图片解析的结果。 |
{"content":"图中展示的是XXXX", "content_type":"plain"} |
|
result.data.content |
String |
图片内容。 |
"XXX" |
|
result.data.content_type |
String |
输出的文本类型:plain。 |
plain |
|
request_id |
String |
系统对一次API调用赋予的唯一标识。 |
B4AB89C8-B135-xxxx-A6F8-2BAB801A2CE4 |
|
latency |
Float/Int |
请求耗时,单位ms。 |
10 |
|
usage |
Object |
本次调用产生的计量信息。 |
"usage": { "token_count": 1234 } |
|
usage.token_count |
Int |
输出的token数,适用于ops-image-analyze-vlm-001服务。 |
1234 |
|
usage.pv_count |
Int |
调用次数(固定为1),适用于ops-image-analyze-ocr-001服务。 |
1 |
Curl请求示例
curl -X POST \
-H"Content-Type: application/json" \
-H "Authorization: Bearer 您的API-KEY" \
"http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/sync" \
\ -d "{
\"document\":{
\"url\":\"https://img01.yzcdn.cn/****/2017/05/11/FoTMgBa0SvUaAeFruY7i7O_EUMhf.jpg%21middle.jpg\",
\"file_type\":\"jpg\"
}
}"
响应示例
正常响应示例
{
"request_id":"BB5CD4C3-C8B6-40E7-A037-4ADAE88A****",
"latency":12525.0,
"http_code":200,
"result":{
"status":"SUCCESS",
"data":{
"content":" 图中展示的是一台WMF品牌的搅拌机,周围摆放着各种水果和蔬菜。搅拌机旁边有一个装有红色果汁的杯子,杯子里还插着一根吸管。桌子上散落着几片柠 檬、几个草莓和一些猕猴桃。在桌子的一角还有一个切好的菠萝和一个橙子。此外,还有一些胡萝卜被切成小块放在搅拌机里准备榨汁。整个场景看起来非常健康和美味。",
"content_type":"plain"
}
},
"usage":{
"token_count":95
}
}
异常响应示例
在访问请求出错的情况下,输出的结果中会通过code和message指明出错原因。
{
"request_id": "6F33AFB6-A35C-4DA7-AFD2-9EA16CCF****",
"latency": 2.0,
"code": "InvalidParameter",
"http_code": 400,
"message": "JSON parse error: Cannot deserialize value of type `ImageStorage` from String \\"xxx\\"
}
状态码说明
|
HTTP 状态码 |
错误码 |
描述 |
|
200 |
- |
请求成功,包括任务失败场景,实际任务状态需从result.status中判断。 |
|
404 |
BadRequest.TaskNotExist |
任务不存在。 |
|
400 |
InvalidParameter |
不合法请求。 |
|
500 |
InternalServerError |
内部错误。 |
更多状态码说明,请参见状态码说明。