写点什么

面向智能设备的语音交互编程语言:VSL 的架构与应用场景

  • 2019-05-24
  • 本文字数:1601 字

    阅读完需:约 5 分钟

面向智能设备的语音交互编程语言:VSL的架构与应用场景

随着智能科技的快速发展,各种各样的智能设备把越来越多的便利与创新功能融入到我们的生活中。大家对于智能设备的交互行为也不再仅仅满足于鼠标和触控操作,“解放双手”的语音交互逐渐成为了大家期望的新交互形式。


如何才能低成本的让语音传达到业务场景中,并实现视图内的交互呢?百度搜索前端团队探索开发出了一套语音交互编程语言——VSL。到底什么是 VSL?它是如何架构设计的?哪些应用场景更适合使用 VSL?我们在 InfoQ 主办的QCon 2019 全球软件开发大会现场采访到了百度前端工程师陈奇。

面向智能设备的编程语言 VSL 到底是什么?

VSL 全称为 Voice Specific Language,是一种为了解决语音交互视图问题而诞生的领域特定语言,通过提供一套接入规范和基础框架,封装语音交互核心功能,使得各场景能快速低成本接入语音交互功能。


目前语音交互主要有两种形式,一种是对话式交互,另一种是视图操作式交互。前文我们介绍到,VSL 是一种领域特定编程语言,这里的“领域”指的就是视图操作式语音交互。


视图操作式语音交互最常见的应用场景就是手机,虽然大多数人使用手机时习惯于触控操作,但是面对一些比较复杂的场景,例如复杂表单的输入和操作,语音可以发挥快速输入、快速选择和多控件组合输入的优势,达到快速操作的目的。除了手机,车载和智能家用设备可能是视图操作式语音交互更契合的场景,这两个场景能够最大幅度发挥语音的优势——解放双手。在车载场景下,由于双手需要放在方向盘上,所以使用语音与智能设备交互是一种更安全的方式;而在家用场景下,语音具有天然优势,在家里用户不仅无需克服语言表达的胆怯心理,同时也不用担心隐私泄露。另外,语音交互还有很多其它使用场景,例如无障碍场景,有些残障人士可能无法使用双手或者外设顺利的进行视图交互,而语音恰好可以解决这样的问题。



VSL 是如何架构设计的呢?陈奇表示,“我们把 VSL 设计成了两个模块,一个是核心模块,一个是扩展模块。核心模块主要是用来实现视图内语音交互的场景,包括 DSL Parser、Actions、Action Manager 等。而扩展模块主要体现了 VSL 的进化过程,包括 App 端能力、DuerOS 端能力等。扩展模块的出现使得 VSL 成为了一个在交互场景中适配性相对较强的产品框架。”

VSL 的具体应用场景

2017 年 5 月,陈奇所在的团队接到了一个用视图控制音频的需求。刚开始他们采用了 JavaScript 的方式去实现,结果发现这种实现方式不仅开发和维护成本高、可复用性差,而且多场景下交互效果不一致,没有形成规范。2018 年 1 月,经过长时间的踩坑,陈奇及团队成员开始考虑一个全新的解决方案。2018 年 4 月,VSL 作为一种解决方案开始应用于手机上的某些场景,例如快递查询、飞机票查询等。


据陈奇介绍,目前 VSL 主要是在百度内部应用,应用场景主要有三大类,第一是百度搜索结果,例如快递查询、机票查询、房贷计算器等;第二是百度产品,例如百度作业模式等;第三是搭载 DuerOS 的智能设备,例如在小度智能音箱中语音视图交互场景,覆盖率达 90%。


接下来,我们以机票查询为例详细讲讲 VSL 是如何应用的?



从上图中我们可以看到,整个机票查询的界面有 5 个控件,分别是单程 Or 往返、出发城市、到达城市、出发日期和立即查询。如果使用最原始的方式给这些控件来编写程序的话,那么代码量得有数百行。而采用 VSL 之后,我们只需要对控件进行数据声明,代码量出现了明显减少,大概只有十几行。


在机票查询场景下,我们主要要做的工作就是对用户话术进行管理。用户在话术表达之后发送到后端服务器,在意图服务返回需求信息之前,需要主动对视图中的控件进行填充,例如该控件是 Input 还是 Click。


在谈到 VSL 未来发展时,陈奇表示,“VSL 现在的主战场还是在百度,但是未来我们有计划将 VSL 开放出去,为更多场景提供语音交互支持。”

采访嘉宾介绍:

陈奇,毕业于西安电子科技大学,现任百度前端高级工程师,主要负责百度搜索输出 DuerOS 智能设备以及语音交互编程语言 VSL。


2019-05-24 14:526652
用户头像

发布了 497 篇内容, 共 338.6 次阅读, 收获喜欢 1927 次。

关注

评论

发布
暂无评论
发现更多内容

聚势启新,KaiwuDB 生态联盟沙龙首站落地长春

KaiwuDB

在AI时代,提升程序员竞争力的关键策略

不在线第一只蜗牛

人工智能 编程 程序员 AI

流程图怎么画?3个好用的在线流程图软件推荐,绘图再也没烦恼!

彭宏豪95

可视化 流程图 在线白板 画图工具 流程图绘制

使用Amazon WAF有效保护托管Web应用

Hanson

保持http代理服务器的方法

Geek_bf375d

IP HTTP 跨境电子商务 跨境电商 #HTTP

为什么要使用动态IP代理爬取

Geek_bf375d

IP HTTP 跨境电子商务 代理IP 跨境电商

如何在 Python 中执行 MySQL 结果限制和分页查询

小万哥

Python 程序员 软件 后端 开发

深入理解 Django 信号机制

K8sCat

django signal

阿里云、腾讯云之后,华为云耀云服务器L实例凭实力成为“卷”死对手

轶天下事

都快2024年了还在用传统服务器?试试华为云这款中小企业“上云”利器吧!

轶天下事

影响HTTP代理IP的稳定性的相关因素

Geek_bf375d

IP 代理IP 免费代理ip 跨境电商 #HTTP

投资机构Janus Capital Group为Rola-IP品牌融资700万美元

Geek_bf375d

IP 代理IP 免费代理ip 跨境电商 #HTTP

正式开源!网易有道上线“易魔声”语音合成引擎

有道技术团队

人工智能 语音合成 TTS

2023年前端流行的新技术

树上有只程序猿

前端 前端技术

Databend 开源周报第 119 期

Databend

爬虫代理ip和代理ip池确保用户隐私和数据安全的问题

Geek_bf375d

代理IP 代理IP设置 跨境电商 IP 路由 #HTTP

Linux 源码包安装

芯动大师

公司让我开发一个管理系统,有了它,So easy!

互联网工科生

软件开发 低代码 快速开发 JNPF

同济 MBA × 和鲸:聚焦商业数据思维培养,赋能工管人才转型升级

ModelWhale

人才培养 企业数字化转型 数智化 MBA 同济大学

快速拉取聚水潭单据的ETL工具

RestCloud

数据同步 ETL

未来之选:为什么向量数据库是您的数据管理利器

熬夜磕代码、

数据库

代理服务IP的选择上有什么技巧

Geek_bf375d

IP HTTP 代理IP 免费代理ip 跨境电商

爬虫IP使用后遇到问题如何解决

Geek_bf375d

IP 跨境贸易 代理IP 免费代理ip #HTTP

CnosDB 在最近新发布的 2.4.0 版本中增加对时空函数的支持。

CnosDB

开源 时序数据库 CnosDB

万物智联的数字底座上,LightBeeOS筑起金融安全的春巢

脑极体

AI 金融

还在烧钱买量?华为云这款轻量应用服务器让跨境电商生意不难做

轶天下事

面向智能设备的语音交互编程语言:VSL的架构与应用场景_编程语言_田晓旭_InfoQ精选文章