Alexa是Amazon自家的语音识别技术,需要配合自家的Echo音箱使用。开发者可以在Amazon上建立自己的程序(Skill)来连接到自己的应用或是硬件。例如,用户家里有一套xx牌的智能灯,现在希望通过语音来控制。首先,用户对Echo音箱说出唤醒词(默认是Alexa,也可以设置为Echo),随后说出命令,如Ask xx to turn on the lights,xx是应用的关键词。随后,amazon在识别出用户的意图之后,会发起一个post请求到开发者的服务器上,开发者服务器对此请求作出回应并控制对应的灯泡。以上就是一个典型的请求和响应的流程。
识别的过程也是比较清楚的,首先Echo讲语音数据发送给Alexa识别,Alexa识别后会转化成开发者自定义的intent(不是文字,原始文字是拿不到的)和slots(如果有的话),将其post到开发者服务器上。开发者服务器对intent和slots进行分析,对不同的请求作出相应的动作和相应。这个过程中存在几个映射,1是语音到文字的映射,这是由Alexa完成的,开发者无法控制。2是文字到intent的映射,这个定义在Sample utterance files内,用户可以自行修改;这个映射通常是多对一,即多个文字可能对应相同的intent。第三个是intent到实际动作的映射,应用的intent数量和名字都定义在后台的intent schema内。至于每个intent要如何处理,是开发者自行在服务器上设定的。
时间: 2024-10-15 14:57:18