521
阿里云
属性值类型__语义表示协议_自然语言理解(NLU)_智能语音交互-阿里云
除了基本数据类型,如string,int,double之外,我们还定义了如下数据类型:
基本复合类型(BASIC)
日期时间(DATETIME)
地点(GEO_INFO)
数字(NUMBER)
此外,属性值都定义为数组形式,以支持多值的情况,下面具体描述我们定义的数据类型。
基本复合类型(BASIC)
基本复合类型是属性值中使用最多的一个类型,它包含raw和norm两个字段,raw代表用户query中的原始表述,norm表示归一化之后的标准表述。例如:电视频道领域中的tv_channel这个slot,如果用户说的是cctv1,则表示如下:
"tv_channel":[
{
"norm":"中央一套",
"raw":"cctv1"
}
]
日期时间(DATETIME)
日期时间类型定义了一种结构,可以描述时间点和时间段两种类型,根据type字段的取值不同,type我们定义了5种类型,less,greater,equal,around,interval。
如下表:
type类型 | 时间点/时间区间 | 说明 |
---|---|---|
less | 时间区间 | 某个时间点之前 |
greater | 时间区间 | 某个时间点之后 |
equal | 时间点 | 某个时间点 |
around | 时间区间 | 某个时间点左右 |
interval | 时间区间 | 两个时间点之间 |
时间(DATETIME)的协议表示:
如下表:
字段名称 | 字段类型 | 字段说明 |
---|---|---|
type | string | 上表中定义的5种取值 |
raw | string | query中的原始描述 |
norm | array | 归一化后的时间描述 |
error_code | string | 0正常, 1超长范围错误, 2未知错误 |
relative_mode | string | 1相对时间, 0绝对时间 |
注:norm是一个数组,其中的每个元素都是一个日期时间, | ||
格式为:yyyy-mm-dd hh:mm:ss |
在时间段的表述中,有早上,下午等时间段表述。我们定义这些时间段的始末时间为:
如下表:
时间段表述 | 开始 | 结束 | 时间点 |
---|---|---|---|
早晨,早上,清晨 | 06:00 | 08:00 | 07:00 |
上午 | 08:00 | 12:00 | 10:00 |
中午、晌午 | 11:00 | 13:00 | 12:00 |
下午、午后 | 12:00 | 18:00 | 15:00 |
晚上,傍晚 | 18:00 | 24:00 | 21:00 |
凌晨 | 00:00 | 05:00 | 03:00 |
半夜、深夜、午夜 | 23:00 | 01:00 | 00:00 |
示例: query: 明天上午九点
"time":[
{
"error_code":"0",
"norm":[
"2015-12-02 09:00:00"
],
"raw":"明天上午九点",
"relative_mode":"0",
"type":"equal"
}
]
query: 明天上午八点之前
"time":[
{
"error_code":"0",
"norm":[
"2015-12-02 08:00:00"
],
"raw":"明天上午八点之前",
"relative_mode":"0",
"type":"less"
}
]
query: 明天下午五点之后
"time":[
{
"error_code":"0",
"norm":[
"2015-12-02 17:00:00"
],
"raw":"明天下午五点之后",
"relative_mode":"0",
"type":"greater"
}
]
query:明天上午七点左右
"time":[
{
"error_code":"0",
"norm":[
"2015-12-02 07:00:00"
],
"raw":"明天上午七点左右",
"relative_mode":"0",
"type":"around"
}
]
query:明天上午
"time":[
{
"error_code":"0",
"norm":[
"2015-12-02 08:00:00",
"2015-12-02 12:00:00"
],
"raw":"明天上午",
"relative_mode":"0",
"type":"interval"
}
]
地点(GEO_INFO)
GEO_INFO定义了一个表示地点的数据结构,地点协议的描述:
如下表:
字段名称 | 字段类型 | 字段说明 |
---|---|---|
level_1 | BASIC | 国家 |
level_2 | BASIC | 省 |
level_3 | BASIC | 市 |
level_4 | BASIC | 区县 |
level_5 | BASIC | 乡镇村 |
location | array | POI点 |
备注:location中的shape表示该location是一个点还是一条线,tag表示该location具体的语义标签。 |
例如query:中国浙江省杭州市余杭区文三路附近的ktv,其中的地点geo结构为:
"geo":[
{
"level_1":{
"norm":"中国",
"raw":"中国"
},
"level_2":{
"norm":"浙江省",
"raw":"浙江省"
},
"level_3":{
"norm":"杭州市",
"raw":"杭州市"
},
"level_4":{
"norm":"余杭区",
"raw":"余杭区"
},
"level_5":{
"norm":"",
"raw":""
},
"location":[
{
"norm":"文三路",
"raw":"文三路",
"shape":"line",
"tag":[
"道路"
]
}
]
}
]
数字(NUMBER)
数字用途也很广泛,例如价格,折扣,距离等属性都可以用数字这个结构来表示。 数字的协议定义:
如下表:
字段名称 | 字段类型 | 字段说明 |
---|---|---|
type | string | 取值范围同DATETIME的type |
raw | string | query中的原始描述 |
norm | array | 归一化后的数字描述 |
示例: query: 1000元左右
"price":[
{
"norm":[
1000
],
"raw":"1000元左右",
"type":"around"
}
]
query: 1000到2000元
"price":[
{
"norm":[
1000,
2000
],
"raw":"1000到2000元",
"type":"interval"
}
]
query: 500米以内
"radius":[
{
"norm":[
500
],
"raw":"500米以内",
"type":"less"
}
]
最后更新:2016-11-23 16:04:08
上一篇:
已支持领域__语义表示协议_自然语言理解(NLU)_智能语音交互-阿里云
下一篇:
机器学习简介__机器学习-阿里云
SetLoadBalancerName__LoadBalancer相关API_API 参考_负载均衡-阿里云
GetObject__关于Object操作_API 参考_对象存储 OSS-阿里云
资源编排服务介绍__产品简介_资源编排-阿里云
对比度__图片效果_图片处理指南_对象存储 OSS-阿里云
数据处理类__应用操作接口_API参考手册_开放搜索-阿里云
查看RDS实例详情__实例管理_API 参考_云数据库 RDS 版-阿里云
申请内网连接串(原内外网切换)__实例管理_API 参考_云数据库 RDS 版-阿里云
安全组__网络和安全性_产品简介_云服务器 ECS-阿里云
数据可靠性高达9个9!阿里云推出云数据库HBase版
服务打包__线上服务发布_开发者指南_企业级分布式应用服务 EDAS-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云