搜索查询 V2-RunSearch
功能介绍
从指定服务实例中进行搜索。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2/{project_id}/mms/{service_name}/search
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
参数解释: 用户的项目ID。获取方法请参见获取项目ID和名称。 约束限制: 不涉及。 取值范围: 只能由英文字母和数字组成,且长度为[1-64]个字符。 默认取值: 不涉及。 |
|
service_name |
是 |
String |
参数解释: 服务实例的名称,用户创建服务实例时设置的实例名称。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
search_type |
是 |
String |
参数解释: 搜索类型,必须为服务实例支持的搜索类型,服务实例的搜索类型列表可在创建服务实例时进行配置。 注意:可以使用枚举名或者枚举值(例如IMAGE/0),枚举值可能会变动,建议使用枚举名。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
limit |
否 |
Integer |
参数解释: 返回搜索结果的数量。 约束限制: 不涉及。 取值范围: 取值范围为[1, 1000]。 默认取值: 默认为10。 |
|
offset |
否 |
Integer |
参数解释: 返回搜索结果的偏移量,即返回序号在[offset, offset+limit]内的搜索结果。 约束限制:
取值范围: 取值范围为[0, N]。 默认取值: 默认为0。 |
|
last_item |
否 |
SearchAfterParam object |
参数解释: 前一次搜索的最后一个搜索结果的排序信息。仅对全量召回场景生效,可将上一次搜索返回结果中的last_item字段直接用于此处。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
|
min_score |
否 |
Double |
参数解释: 返回搜索结果的最小得分,用于对搜索结果进行score过滤。 约束限制: 目前仅对IMAGE/CATEGORY搜索类型生效。 取值范围: 取值范围为[0, 1]。 默认取值: 不涉及。 |
|
custom_tags |
否 |
Map<String,Array<String>> |
参数解释: 自定义字符标签,用于对搜索结果进行条件过滤。格式为键值对{key:value}。 约束限制:
取值范围: value: 列表长度范围为[1, 32],标签值类型为字符串,字符长度范围为[1, 64]。 默认取值: 不涉及。 |
|
custom_num_tags |
否 |
Map<String,RangeParam> |
参数解释: 自定义数值标签,用于对搜索结果进行条件过滤。格式为键值对{key:value}。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
|
image_base64 |
否 |
String |
参数解释: 图像文件的base64字符串,基于图像搜索时,与image_url二选一。 约束限制:
取值范围: 默认情况下,要求图像的最短边大于64px,最长边小于4096px。部分服务类型有特殊要求,可参见服务类型说明。 默认取值: 不涉及。 |
|
image_url |
否 |
String |
参数解释: 图片的URL路径,目前支持公网http:/https url,图像入库时,与image_base64二选一。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
keywords |
否 |
Array of strings |
参数解释: 关键词列表。 约束限制: 使用KEYWORD搜索类型进行搜索时,必须提供该参数。 取值范围: 搜索时关键词数量范围为[1, 10],关键词字符长度范围为[1, 64]。 默认取值: 不涉及。 |
|
text |
否 |
String |
参数解释: 文本字符串。 约束限制: 不涉及。 取值范围: 字符长度范围为[1, 512]。 默认取值: 不涉及。 |
|
optional_params |
否 |
SearchOptionalParam object |
参数解释: 搜索的可选参数,其中每个参数仅对部分服务类型生效,具体可参见服务类型说明。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
score |
否 |
Double |
参数解释: 搜索结果的相似度。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
id |
否 |
String |
参数解释: 搜索结果的唯一ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
from |
否 |
Double |
参数解释: 自定义数值标签数值下界,默认包含该下界。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
to |
否 |
Double |
参数解释: 自定义数值标签数值上界,默认包含该上界。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
do_det |
否 |
Boolean |
参数解释: 是否进行目标检测,默认为true。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
box |
否 |
String |
参数解释: 目标矩形框坐标,如给定则不进行目标检测,直接使用该box作为目标。格式为“x1,y1,x2,y2”(无空格),x1/y1为目标左上角坐标,x2/y2为目标右下角坐标、 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
|
do_cls |
否 |
Boolean |
参数解释: 是否进行对象分类,默认为true。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
category |
否 |
Integer |
参数解释: 对象类目,如给定则不进行对象分类,直接使用该category作为类目。具体类目信息可参见对应的服务类型说明。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
collapse_key |
否 |
String |
参数解释: 去重标签名,必须为服务实例custom_tags中已存在的key。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
|
max_scan_num |
否 |
Integer |
参数解释: 查询考察中心点的数目。值越大精度越高,查询速度变慢。 约束限制: 不涉及。 取值范围: 取值范围:1-100000,默认值为10000。 默认取值: 不涉及。 |
|
nprobe |
否 |
Integer |
参数解释: 扫描节点上限。值越大精度越高,查询速度变慢。 约束限制: 不涉及。 取值范围: 取值范围:1-100000,默认值为100。 默认取值: 不涉及。 |
|
text_lang |
否 |
String |
参数解释: 文本字符串的语言类型枚举值。 约束限制: 不涉及。 取值范围:
默认取值: zh。 |
响应参数
状态码: 200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
result |
String |
参数解释: 搜索完成返回success。 取值范围: 不涉及。 |
|
data |
SearchRestInfo object |
参数解释: 搜索的相关信息。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
items |
Array of SearchItem objects |
参数解释: 搜索结果列表。 取值范围: 不涉及。 |
|
search_info |
SearchInfo object |
参数解释: 搜索结果的相关信息。 取值范围: 不涉及。 |
|
image_info |
image_info object |
参数解释: 搜索图像的相关信息,不同服务类型返回信息不同,具体可参见服务类型说明。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 数据唯一ID。 取值范围: 不涉及。 |
|
score |
Double |
参数解释: 数据匹配分数。 取值范围: 不涉及。 |
|
source |
ItemSource object |
参数解释: 数据的元信息,不同数据包含的字段可能不同。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
desc |
String |
参数解释: 数据描述信息。 取值范围: 不涉及。 |
|
custom_tags |
Map<String,String> |
参数解释: 数据自定义字符标签。 取值范围: 不涉及。 |
|
custom_num_tags |
Map<String,Number> |
参数解释: 数据自定义数值标签。 取值范围: 不涉及。 |
|
keywords |
Array of strings |
参数解释: 数据关键词列表。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
total_num |
Integer |
参数解释: 搜索结果总数。 取值范围: 不涉及。 |
|
return_num |
Integer |
参数解释: 返回结果总数。 取值范围: 不涉及。 |
|
search_time |
Integer |
参数解释: 搜索过程耗时,单位为毫秒。 取值范围: 不涉及。 |
|
last_item |
SearchAfterParam object |
参数解释: 最后一个搜索结果的排序信息。仅对全量召回生效,非全量召回场景返回null。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
score |
Double |
参数解释: 搜索结果的得分。 取值范围: 不涉及。 |
|
id |
String |
参数解释: 搜索结果的唯一ID。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
box |
String |
参数解释: 用于搜索的主体目标框。 取值范围: 不涉及。 |
|
category |
Integer |
参数解释: 用于搜索的主体类目序号。 取值范围: 不涉及。 |
|
category_name |
String |
参数解释: 用于搜索的主体类目名称。 取值范围: 不涉及。 |
|
objects |
Array of objects objects |
参数解释: 搜索图像中的所有主体列表。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
box |
String |
参数解释: 主体目标框。 取值范围: 不涉及。 |
|
category |
Integer |
参数解释: 主体类目序号。 取值范围: 不涉及。 |
|
category_name |
String |
参数解释: 主体类目名称。 取值范围: 不涉及。 |
状态码: 400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
error_code |
String |
参数解释: 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 取值范围: 不涉及。 |
|
error_msg |
String |
参数解释: 调用失败时的错误信息。 调用成功时无此字段。 取值范围: 不涉及。 |
请求示例
搜索商品图像,使用图像BASE64编码
POST https://{endpoint}/v2/{project_id}/mms/{service_name}/search
{
"search_type" : "CATEGORY",
"image_base64" : "/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAA...",
"custom_tags" : {
"brand" : [ "HUAWEI" ]
},
"custom_num_tags" : {
"year" : {
"from" : 2020,
"to" : 2022
}
}
}
响应示例
状态码: 200
成功响应示例
{
"result" : "success",
"data" : {
"items" : [ {
"id" : "electronics_01",
"score" : 1,
"source" : {
"desc" : "天地纵横自然",
"custom_tags" : {
"brand" : "HUAWEI"
},
"custom_num_tags" : {
"year" : 2022
}
}
} ],
"search_info" : {
"total_num" : 10,
"return_num" : 1,
"search_time" : 512
},
"image_info" : {
"box" : "26,223,771,704",
"category" : 11,
"category_name" : "electronics",
"objects" : [ {
"box" : "26,223,771,704",
"category" : 11,
"category_name" : "electronics"
}, {
"box" : "55,66,420,315",
"category" : 0,
"category_name" : "others"
} ]
}
}
}
状态码: 400
失败响应示例
{
"error_code" : "MMS.0003",
"error_msg" : "Invalid parameter: custom_tags"
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
成功响应示例。 |
|
400 |
失败响应示例。 |
错误码
请参见错误码。