主要内容
● 构建呼叫-回应技能
● 设计语音用户界面
● 使用对话语境
● 使用多模式
● 提示和更佳实践
第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
由Dustin Coates撰写的这本书是一本基础而又全面的智能语音应用开发指南。作为一名首席开发人员,Dustin对多模式界面和声控AI中最难解决的问题有着概念上的敏感性,这也是他的方法与其他方法的不同之处。例如,构建用户与计算机对话时不断变化的物理上下文。这些问题有时存在于代码行之外,但对于人们获得正确的体验至关重要。本书全面研究了这些问题。
—— Lin Nie,Dataminr的心理学/HCI研究科学家
无论是新手还是经验丰富的老手,《智能语音应用开发 基于Alexa、Google Assistant和英文语境》都是智能语音从业人员不可或缺的参考资料。本书对最先进的智能语音设计实践的介绍简明而有用,并且就如何构建这些平台提供了详细的实际操作指南,涵盖了智能语音开发人员需要了解的基本主题——实体解析、对话框管理、SSML甚至最佳设计实践。我强烈推荐本书给那些想要更好理解智能语音构建的读者,他们将会对此有更强的概念和实践把握。
—— John Kelvie,Bespoken联合创始人兼CEO
我觉得Dustin的著作非常有价值,书中介绍的高级概念具有超实用性,并在SDK级别上用代码示例进行了深入解释。这些生态系统中有很多可变的部分,在没有任何指导的情况下试图了解它们是非常困难的。我非常希望本书能对我有所帮助。
—— John Gillilan,Chop Chop Alexa Skill的发明者和bondad.fm的创始人
每隔几年,一项全新的技术就会为创业型开发人员带来淘金热。早在2007年,移动应用就成为热点。如今,出现了由Alexa和Google Assistant支持的智能语音应用。本书能够指导开发人员创建专业级智能语音应用,书中主要介绍如何在Alexa和Google Assistant平台上进行开发。本书能指导读者成功地创建健壮、直观的智能语音应用并将它们发布。
—— Conor Redmond,InComm Product Control的软件基础设施经理