智能语音应用开发基于Alexa、GoogleAssistant和英文语境

智能语音应用开发基于Alexa、GoogleAssistant和英文语境"

作者:[美]达斯廷·科茨(DustinCoates)著王超译
ISBN:9787302553809
定价:¥79.80
字数:千字
页数:
出版时间:2020.06.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

主要内容

● 构建呼叫-回应技能

● 设计语音用户界面

● 使用对话语境

● 使用多模式

● 提示和更佳实践

前言

前    言

记得在收到Amazon Echo后不久,我和同事们进行过讨论。幸运的是,当Amazon第一次发布这款设备时,我一时心血来潮就买了一台,而不用像许多同事那样等上几个月。我告诉他们这款设备很棒,但并不完美。“你已经习惯了等待计算机开始听你说话。有了Amazon Echo,你几乎只需要训练自己自然地说话。”没错。令人惊讶的是,它的功能太强大了。当然,我想在其中加入自己的功能。我不得不等待了几个月,但最终Amazon为Alexa增加了“技能”。我开始潜心研究,那时候完全是为了自己的利益。

Google宣布推出Google Home设备也是个好消息。我每天都在使用如此多的Google产品。我选择的音乐供应商是Google Play Music,我和妻子白天在Hangouts上聊天,我还使用Google Calendar,等等。我对它的兴趣如此浓厚,以至于飞到国外以便拿到这个设备(好吧,还有去见我当时的女朋友,也就是现在的妻子,她还住在布鲁克林)。当然,我也要开始进行Assistant操作。

当Manning找到我并问我是否愿意写这本书时,我想了想,说“可以,写吧!”多年来,我为这些平台做了大量有趣的工作。但也遇到过一些挫折。我犯了很多错误,不得不从各种不同的渠道学习。市面上有很多很棒的书,但我觉得没有一本是真正针对开发人员的。《智能语音应用开发 基于Alexa、Google Assistant和英文语境》是我为专业或业余开发人员编写的,他们希望基于Alexa和Google Assistant开发智能语音应用,同时学习如何获得良好的语音体验。在这个过程中,Manning的团队和我看到这本书随着生态系统的变化以及读者的反馈而不断发展。在写作过程中,由于Amazon和Google都决定重写他们的SDK,因此导致我对《智能语音应用开发 基于Alexa、Google Assistant和英文语境》进行了重写。

各种各样的智能语音应用仍然在不断出现,但我们还没有真正理解开发人员构建的这些程序。我希望通过《智能语音应用开发 基于Alexa、Google Assistant和英文语境》的学习,你可以自己创建智能语音应用。或者,至少我希望你能从中找到学习的乐趣。感谢你阅读《智能语音应用开发 基于Alexa、Google Assistant和英文语境》。

目录

第1章  语音优先概述   1

1.1  什么是语音优先   2

1.2  设计语音UI   4

1.3  剖析语音命令   5

1.3.1  唤醒语音优先设备   7

1.3.2  自然语言处理介绍   8

1.3.3  语音如何转换为文本   8

1.3.4  意图是某种技能的函数   10

1.3.5  用样本话语训练NLU   10

1.3.6  从口语文本中提取相关信息   11

1.4  捆绑在一起的实现代码   13

1.5  告诉设备该说什么   13

1.6  本章小结   14

第2章  在Alexa上构建呼叫-回应技能   15

2.1  技能元数据   16

2.1.1  交互模型   18

2.1.2  调用名   19

2.1.3  意图   20

2.1.4  样本话语   20

2.1.5  插槽   22

2.2  交互模型   24

2.2.1  构建意图   25

2.2.2  插槽   26

2.3  实现   27

2.3.1  托管的端点   28

2.3.2  AWS Lambda   28

2.3.3  编码实现   28

2.4  本章小结   36

第3章  设计语音用户界面   37

3.1  VUI基础   37

3.2  合作准则   39

3.2.1  数量准则   40

3.2.2  质量准则   41

3.2.3  关系准则   41

3.2.4  方式准则   42

3.3  VUI规划   44

3.4  多样性   45

3.5  本章小结   47

第4章  在Alexa技能中使用实体解析和内置意图   49

4.1  Alexa Skills Kit CLI   49

4.2  实体解析   54

4.2.1  实现   56

4.2.2  内置意图   60

4.2.3  LaunchRequest   62

4.3  本地调用技能   64

4.4  本章小结   66

第5章  创建会话式的Alexa技能   67

5.1  创建对话   68

5.1.1  状态管理   68

5.1.2  每个状态的处理程序   73

5.1.3  使用Unhandled处理程序   76

5.2  维护长期信息   77

5.3  将所有这些汇总   82

5.3.1  新的意图   82

5.3.2  新的话语   82

5.3.3  新的实现   83

5.3.4  纠正错误   88

5.4  本章小结   90

第6章  VUI和对话最佳实践   91

6.1  对话和上下文   91

6.2  上下文技能   93

6.2.1  基于帧的交互   94

6.2.2  实现   96

6.2.3  衰减上下文   100

6.3  拦截回应和请求   104

6.4  单元测试   107

6.5  本章小结   109

第7章  使用对话工具增加意义和可用性   111

7.1  话语标记   111

7.2  用SSML控制应用的语音   115

7.2.1  中断和暂停   116

7.2.2  韵律   118

7.2.3  amazon:effect   121

7.2.4  w和say-as标签   121

7.2.5  音素   124

7.3  嵌入式音频   125

7.4  本章小结   126

第8章  引导对话流程   127

8.1  指导用户交互   127

8.2  对话框界面   128

8.2.1  创建技能   131

8.2.2  建立对话框模型   132

8.2.3  插槽填充   134

8.2.4  意图确认   140

8.2.5  对话框模型实现   142

8.3  处理错误   149

8.4  本章小结   151

第9章  构建Google Assistant   153

9.1  设置应用   154

9.2  构建交互模型   155

9.2.1  构建意图   157

9.2.2  使用模拟器测试   160

9.2.3  参数和实体   161

9.2.4  添加实体   162

9.2.5  使用意图中的参数   163

9.3  实现   164

9.3.1  代码   165

9.3.2  部署   167

9.3.3  更改调用名称   168

9.4  本章小结   168

第10章  使用多模式   169

10.1  引入多模式   170

10.2  操作中的多模式   171

10.2.1  简单的回应   171

10.2.2  丰富的回应   173

10.2.3  列表回应   175

10.2.4  建议芯片   179

10.3  界面功能   180

10.4  多界面对话   181

10.5  本章小结   184

第11章  推送交互   185

11.1  例程建议   186

11.1.1  存储用户数据   186

11.1.2  例程的操作建议   190

11.2  每日更新   190

11.3  推送通知   195

11.4  隐式调用   199

11.5  本章小结   201 

第12章  使用Actions SDK在Google上构建操作   203

12.1  Dialogflow和Actions SDK   203

12.2  应用计划   205

12.3  操作包   206

12.4  实现   209

12.4.1  使用正则表达式解析输入   211

12.4.2  处理意外的请求   218

12.5  本章小结   220

附录A  添加AWS IAM配置文件   221

附录B  将DynamoDB连接到Lambda函数   227

术语表   229

作者简介

编辑推荐

据统计,2018年全球家庭安装了1亿台智能语音控制设备,以及控制这些设备的应用,比如Amazon Alexa和Google Assistant,这些设备的功能越来越强大,并且每天都在增加新的技能。无论用户是查看天气、询问体育比赛成绩还是玩游戏,优秀的智能语音应用都改变了他们与Web交互的方式。

《智能语音应用开发 基于Alexa、Google Assistant和英文语境》是基于Alexa和Google Assistant设计、构建并实现智能语音应用的优秀指南。当你没有任何基础就想创建一个语音驱动的睡眠跟踪器时,通过阅读本书,将学会如何构建能够倾听用户、存储信息和依赖于用户语境的应用。掌握这些基础知识后,你会深入了解多用途对话流程和其他更高级的概念。在此过程中,一些小项目会强化你的技术水平和更佳实践。

作者寄语

Dustin Coates是一名Web开发人员和Web开发讲师,他在联合国大会的网上和线下教过数百名学生。Dustin还为OneMonth.com和欧洲非营利组织Konexio开发了热门课程,教人们如何编码。

电子资料

www.luweidong.cn

下一个