下拉提示是搜索服务的基础功能,在用户输入查询词的过程中,智能推荐候选query,减少用户输入,帮助用户尽快找到想要的内容。OpenSearch下拉提示在实现了中文前缀,拼音全拼,拼音首字母简拼查询等通用功能的基础上,实现了基于用户文档内容的query智能识别。用户通过控制台的简单配置,就能拥有专属的定制下拉提示。此外,控制台上还提供了黑名单,推荐词条功能,让用户进一步控制下拉提示的结果,实现更灵活的定制。更多关于下拉提示产品使用介绍,详见产品使用文档。
URL
/v3/openapi/apps/{appName}/suggest/{suggestName}/search
{appName} 为您的应用名称
{suggestName} 为您的下拉提示模型名称
以上 URL 省略了请求Header参数及编码等因素
以上 URL 中省略了访问应用的 host 地址
支持格式
JSON
HTTP请求方式
GET
查询参数
参数 | 类型 | 必须 | 取值范围 | 默认值 | 描述 |
query | String | 是 | 搜索关键词(包含中文需进行urlencode编码) | ||
hit | int | 否 | [1-10] | 10 | 下拉提示条数 |
user_id | String | 否 | 用来标识发起当前下拉提示请求的终端用户, user_id的值需要做urlencode。建议跟app搜索请求中user_id参数保持一致,详见搜索处理。 | ||
re_search | String | 否 | 默认开启同音别字补全召回可以设置re_search="disable"关闭该功能 |
注:下拉提示的query参数和search接口的query参数不同。下拉提示的query参数就是用户在输入框中输入的原始文本,不需要索引字段名,直接query=mp3(mp3为用户输入查询词)即可。
返回结果
参数 | 类型 | 描述 |
request_id | string | 该条查询的记录id,主要用于排查问题使用 |
searchtime | float | 引擎查询耗时,单位为秒 |
suggestions | array | 下拉提示结果,array的每个值代表一个结果 |
errors | array | 错误内容,message代表错误信息。code 错误码含义参考 错误码 文档 |
示例
请求:(此处省略了请求Header参数及编码等因素)
http://$host/v3/openapi/apps/app_demo/suggest/suggest_demo/search?hit=10&query=连衣&user_id=xxx
成功返回:
{
"request_id": "150116615820104116121674",
"searchtime": 0.002654,
"suggestions": [
{
"suggestion": "连衣裙"
},
{
"suggestion": "连衣裙春装"
},
{
"suggestion": "连衣裙文艺"
}
]
}
错误返回:
{
"request_id": "150116635320104116122572",
"searchtime": 0.037484,
"suggestions": [],
"errors": [
{
"code": 2551,
"message": "suggester not found"
}
]
}