语义理解接口


语义理解

1475118416259629.jpg

微信开放平台语义理解接口调用(http请求)简单方便,用户无需掌握语义理解及相关技术,只需根据自己的产品特点,选择相应的服务即可搭建一套智能语义服务。

发送语义理解请求

http请求方式: POST(请使用https协议)

https://api.weixin.qq.com/semantic/semproxy/search?access_token=YOUR_ACCESS_TOKEN

POST数据格式:JSON

POST数据例子:

{

"query":"查一下明天从北京到上海的南航机票",

"city":"北京",

"category": "flight,hotel",

"appid":"wxaaaaaaaaaaaaaaaa",

"uid":"123456"

参数说明

参数是否必须参数类型说明
access_tokenString根据appid和appsecret获取到的token
queryString输入文本串
categoryString需要使用的服务类型,多个用“,”隔开,不能为空
latitude见接口协议文档Float纬度坐标,与经度同时传入;与城市二选一传入
longitude见接口协议文档Float经度坐标,与纬度同时传入;与城市二选一传入
city见接口协议文档String城市名称,与经纬度二选一传入
region见接口协议文档String区域名称,在城市存在的情况下可省;与经纬度二选一传入
appidString公众号唯一标识,用于区分公众号开发者
uidString用户唯一id(非开发者id),用户区分公众号下的不同用户(建议填入用户openid),如果为空,则无法使用上下文理解功能。appid和uid同时存在的情况下,才可以使用上下文理解功能。

注:单类别意图比较明确,识别的覆盖率比较大,所以如果只要使用特定某个类别,建议将category只设置为该类别。

返回说明 正常情况下,微信会返回下述JSON数据包:

“errcode”:0, 

“query”:”查一下明天从北京到上海的南航机票”, 

“type”:”flight”, 

“semantic”:{ 

    “details”:{

        “start_loc”:{ 

            “type”:”LOC_CITY”, 

            “city”:”北京市”, 

            “city_simple”:”北京”, 

            “loc_ori”:”北京” 

            }, 

        “end_loc”: { 

            “type”:”LOC_CITY”, 

            “city”:”上海市”, 

            “city_simple”:”上海”, 

            “loc_ori”:”上海” 

          }, 

        “start_date”: { 

            “type”:”DT_ORI”, 

            “date”:”2014-03-05”, 

            “date_ori”:”明天” 

          }, 

       “airline”:”中国南方航空公司” 

    }, 

“intent”:”SEARCH” 

}

返回参数说明

参数是否必须参数类型说明
errcodeInt表示请求后的状态
queryString用户的输入字符串
typeString服务的全局类型id,详见协议文档中垂直服务协议定义
semanticObject语义理解后的结构化标识,各服务不同
resultArray部分类别的结果
answerString部分类别的结果html5展示,目前不支持
textString特殊回复说明

更多详细内容与协议说明,请查看:语义理解接口协议文档