讯飞语音语义接口测试
接上篇 http://www.cnblogs.com/zzugyl/p/3834029.html
1.开始测试提醒功能。分别基于官方demo做了三个测试。
a> 基于语音+ 接口1.0
b> 基于语音+ 接口2.0
c> 基于语音SDK 接口2.0
2.对于语义识别的返回结果,1.0和2.0还是有区别的。
XmlParser.java --->>>
每个周日九点钟提醒我起床 语音+ 1.0
<?xml version="1.0" encoding="utf-8"?>
<nlp>
<version>1.0.0.8000</version>
<rawtext>一个小时后提醒我喝水</rawtext>
<parsedtext>一个 小时 后 提醒 我 喝水</parsedtext>
<result>
<focus>schedule</focus>
<action>
<operation>create</operation>
</action>
<object>
<datetime>
<date>2014-07-04</date>
<time>13:58:00</time>
<time_orig>一个小时后</time_orig>
</datetime>
<name>reminder</name>
</object>
<content>喝水</content>
</result>
</nlp>
<nlp>
<version>1.0.0.8000</version>
<rawtext>一个小时后提醒我喝水</rawtext>
<parsedtext>一个 小时 后 提醒 我 喝水</parsedtext>
<result>
<focus>schedule</focus>
<action>
<operation>create</operation>
</action>
<object>
<datetime>
<date>2014-07-04</date>
<time>13:58:00</time>
<time_orig>一个小时后</time_orig>
</datetime>
<name>reminder</name>
</object>
<content>喝水</content>
</result>
</nlp>
XmlParser.java --->>>
每个周日八点钟提醒我起床 语音+2.0以后
<?xml version="1.0" encoding="utf-8"?>
<nlp>
<semantic>
<slots>
<datetime>
<date>2014-07-17</date>
<type>DT_BASIC</type>
<time>20:00:00</time>
<timeOrig>八点钟</timeOrig>
</datetime>
<repeat>周7</repeat>
<name>clock</name>
</slots>
</semantic>
<rc>0</rc>
<operation>CREATE</operation>
<service>schedule</service>
<text>每个周日八点钟提醒我起床</text>
</nlp>
<nlp>
<semantic>
<slots>
<datetime>
<date>2014-07-17</date>
<type>DT_BASIC</type>
<time>20:00:00</time>
<timeOrig>八点钟</timeOrig>
</datetime>
<repeat>周7</repeat>
<name>clock</name>
</slots>
</semantic>
<rc>0</rc>
<operation>CREATE</operation>
<service>schedule</service>
<text>每个周日八点钟提醒我起床</text>
</nlp>
相关android工程代码在附件
3.关于讯飞语音+ 2.0 语义理解 提醒场景 使用的一些体会 已经反馈给官方msp_support@iflytek.com
A.大部分时间理解都是正确的,而且时间反馈也很快。
B.有些时间的理解有bug,这几天看到的反馈如下:
测试时间 2014-07-08 11:00:00 动作一律用喝水或者起床,其他也一样。
<1>. TEXT:周日八点钟提醒我喝水 ---> 得到正确的时间 2014-07-13 08:00:00
但是
TEXT:每个周日八点钟提醒我喝水 ---> 得到错误的时间 2014-07-08 08:00:00
然后 返回了 repeat 每个周日。可是 2014-07-08 明明不是周日。
这里矛盾了。
<2>. TEXT:周五八点钟提醒我起床 ---> 得到正确的时间 2014-07-11 08:00:00
但是
TEXT:每个周五八点钟提醒我起床 ---> 得到错误的时间 2014-07-08 20:00:00
得到的是今天下午八点钟。今天既不是周五,也不是我想要的(上午)八点.
同时也返回了 repeat 每个周五
<3>. TEXT:工作日九点钟提醒我喝水 ---> 得到错误的时间 2014-07-08 21:00:00
<4>. TEXT:每天九点钟提醒我喝水 ---> 得到错误的时间 2014-07-08 21:00:00
TEXT:每日九点钟提醒我喝水 ---> 得到错误的时间 2014-07-08 21:00:00
以上 1 2 4 的错误,在接口1.0 是没问题的。
<5>.TEXT:等一个小时提醒我喝水 ---> 解析错误 rc = 4
TEXT:再等一个小时提醒我喝水 ---> 解析错误 rc = 4
TEXT:再等一个小时后提醒我喝水 ---> 得到正确的时间 2014-07-08 12:19:35
TEXT:过一个小时提醒我喝水 ---> 得到正确的时间 2014-07-08 12:21:13
TEXT:一个小时之后提醒我喝水 ---> 得到正确的时间 2014-07-08 12:22:53
TEXT:一个小时后提醒我喝水 ---> 得到正确的时间 2014-07-08 12:23:28
5 的错误,在1.0接口上表现为每次出现的时间都是随机的。