首页>>>技术>>>语音应用>>>语音识别(ASR)  语音识别产品

 

VoiceXML语音门户的引擎

冉隆科 2000/12/11

  曾几何时,人们对XML已耳熟能详,并将它用于描述图像和结构复杂的其他数据。Web技术发展之快令人惊叹!现在,业界又正在展开一项XML的新的应用:VoiceXML(话音可扩展标记语言),其主要特点是通过语音输入和音频输出支持人机对话。

  1999年,AT&&T、IBM、朗讯科技和摩托罗拉公司等组成了VoiceXML论坛,旨在讨论将VoiceXML确定为通过话音和电话利用Internet内容的标准。目前,参加该论坛的公司达150多家。讨论所涉及的主要内容包括将VoiceXML作为标准,怎样用VoiceXML解释程序取代HTML解释程序,用人的语音取代鼠标和键盘。

  下面就VoiceXML的基本功能、VoiceXML 1.0版的主要特性和分布式模型等作一简要介绍。


  VoiceXML的基本功能


  VoiceXML是万维网集团(W3C)定义的可扩展标记语言(XML)的一种新的应用。或者说它是一种域专用语言,根据所播放的音频文件、要口述的文本、要记录和识别的语言以及所收集的按键音输入,定义人和计算机之间的对话。VoiceXML可以描述传统的语音响应业务以及新的混合主动式业务。

  VoiceXML保护应用开发程序不受同时多线程控制——资源供给和平台专用API等问题的影响,因为这些问题都由交互式话音响应(IVR)平台的VoiceXML客户程序去处理。这种保护功能使平台之间具有更大的业务可移植性。

  VoiceXML与XML相比具有某些重要的优点,其中最主要的优点是能够重复使用和容易重组现有的软件工具,以生成、转换和分析XML文件,而且还能使VoiceXML利用其他基于XML的补充标准。例如,VoiceXML应用程序有时需要确定语音合成参数,比如音量、讲话快慢和音调等。

  从VoiceXML的对话看,调用程序将电话号码拨入具有VoiceXML客户程序的IVR平台。该平台将电话号码送给URL,而客户程序把HTTP请求送给专用的URL。Web服务器用包含同调用程序执行对话的VoiceXML文件表示响应。客户程序解释该文件,从而与调用程序、播放提示、收集按键音输入的信息交互作用,最后将收集的信息提交给文件本身指定的URL。Web服务器处理输入,用处理后的文件表示回答,从而继续进行对话。


  VoiceXML的主要特性


  VoiceXML 1.0版的主要特性可以分为4个方面:对话、电话、平台和性能。

  1.对话特性

  每个VoiceXML文件由一次或多次对话组成。对话特性包括收集按键音输入、音频输出的生成、异步事件的处理、客户端编写脚本的性能以及对话的连续性。VoiceXML支持下面的输入格式:音频记录、自动语音识别和按键音。输出可以是预先记录的音频文件、 文本对应于语音的生成或二者兼而有之。

  VoiceXML支持异步事件的生成和处理。异步事件有两种:一是内部事件,如超时、未被识别的输入或请求帮助;二是用户定义的事件。事件处理程序一般确定要提供给调用程序的某些新的输出,以及是否继续现在的对话或转换到另外的对话。

  为使服务器的响应时间最短,VoiceXML允许在一次对话中收集多个数据段,并允许用这种数据段编写客户端脚本。对话还确定何时根据用户的输入将数据提交给另一个URL服务逻辑,以及何时转换成不同的对话。

  VoiceXML还支持传统的IVR系统,即选单、定向对话以及新的混合主动式人机交互样式。选单交互样式允许调用程序从一系列的选项中选择几个选项。定向对话交互样式可使调用程序连续收集数据集。混合主动式对话交互样式可使调用程序以单一语调输入多个数据段,并提供部分信息。

  这里以天气信息为例,表明不同的人机交互样式提供的信息各不相同,但主动式更快捷(见表1)。

  2.电话特性

  VoiceXML对电话连接实施基本控制。它允许文件制作者规定何时拆接,何时传送呼叫。传送是一种跟随特性,即只要呼叫被成功传送,并连接到被呼叫人,例如客户的业务代表,便立即隐藏端接VoiceXML对话的传送,暂停VoiceXML对话。与被呼叫人的对话结束后,VoiceXML对话继续进行。这一特性可节省呼叫传送时间,有利于在后续URL请求中提交其他数据。

  3.平台特性

  VoiceXML在提供描述对话的标准方法的同时,还能提供容纳单个平台的机制。这包括调用平台专用功能和控制平台专用属性。例如,一个平台具有先进的讲话人验证组件,而另一个平台可能具有定制信用卡对话,可以控制其专用的语音识别参数。无线环境里的客户程序可以提供主叫用户的位置。所有这些专用平台特性都可借助VoiceXML平台一种或几种特性得以实现。

  4.性能特性

  VoiceXML文件和这些文件所使用的资源,以及URL确定的每一种资源的位置都是基于Web的。这些资源包括音频文件、输入语法、脚本和对象。VoiceXML客户程序必须在使用这些资源之前查找和安装这些资源。VoiceXML服务提供商要面对的一个问题是在读取资源的同时,主叫用户听到的是极其微弱的“静音”。当系统查找资源时,采用可视浏览器的PC用户看到一个旋转图标,但是与VoiceXML平台保持联系的主叫用户也可能察觉不到这种业务是基于Web的,因此有可能把“静音”看作是失去联系的信号。

  VoiceXML提供几种消除或隐藏与查找Web资源有关的静音的装置。像可视浏览器一样,VoiceXML客户程序可以使用高速缓存而无需读出数据。与可视浏览器所不同的是,VoiceXML客户程序不必再装入按钮,这样VoiceXML便让文件编制人能够确定是否使用高速缓存资源,或查找新的拷贝。

  当必须查找新的资源拷贝时,文件编制人可以指定查找需等候的时间,对于某些资源还可以在读取期间确定要播放的音频文件。

  VoiceXML还了解有些客户程序在使用资源之前可能读取资源。只要装入音频文件,文件编制人员就可以提示与可能要读取的资源有关的客户程序。这种资源读取可能与文件解释同时进行,其目的在于按二者所需的时间利用资源和解释文件。


  VoiceXML分布式模型


  Web为每个用户提供全球范围的信息,同时给每个信息和服务提供商提供全球范围的用户。因此,分布式应用模型是Web的基本模型;VoiceXML建立在与基于Web的相同的模型上。图1表示通过电话访问的VoiceXML业务使用的基于Web的分布式应用模型。

  在这种应用模型中,除HTML解释程序(Web浏览器)被VoiceXML解释程序取代,语音取代作为用户接口媒介的鼠标和键盘外,VoiceXML结构与可视Web模型的结构基本相同。除其核心能力外,VoiceXML提供更先进的功能特性,包括本地验证和处理、音频回放和记录,以及支持上下文特有的修剪,并支持可重用的附属对话。

  用户输入的本地处理和验证是通过收集提供标准编程模型的诸多元素实现的。一个“程序块”元素允许代码在收集输入的过程中的任何一点运行。一个“填充”元素可使输入验证代码,根据用户输入的任何一组数据提高控制效能;该元素对混合主动式对话特别有用,因为在该模型中用户能够用任何指令应用输入。“脚本”元素可使JavaScript程序碎段在对话过程中的任何一点运行。(下转E11版)

  预先记录的音频提示的回放是通过“音频”元素完成的。用户信息的记录是通过“记录”元素完成的;而后,记录的音频可以通过“音频”元素回放,或者上装到服务器,供存储、处理或以后回放使用。

  同时,上下文特有的修剪帮助由内部事件系统和事件处理程序提供。例如,VoiceXML定义一系列相对于用户请求帮助的事件。这种应用还可以在任何给定的上下文中(包括表格或字段),提供相对于特定上下文的特定的事件。

  最后,VoiceXML对附属对话(所执行的完整的表格)提供支持,对话的结果是对另一个表格提供输入字段。这一功能特性有两个用途,一是对输入消除多义性或确认对话,二是支持可重用的附属对话。


  青出于蓝而胜于蓝


  尽管VoiceXML重用许多HTML的概念和设计,但由于可视和语音交互之间的区别,它在几个方面具有不同的特点。例如,HTML文件是从统一资源识别符确定的网络资源中读出的单个元素,并同时将所有的元素提供给用户。VoiceXML则不同,它包含若干对话元素(选单、表格),依次顺序地将这些元素提供给用户。这种区别归因于可视媒介能够同时显示若干选项,而话音媒介本来就具有连续性特点。

  因此,尽管特定的VoiceXML文件可以包含与相对应的HTML文件的相同的信息,但VoiceXML文件不同的结构反映了话音媒介的连续性,而HTML只相当于前面所述的VoiceXML文件中的选单。

  就HTML而言,没有必要把这种选单视为一个元素,或者使用标记结构把它与同一页面上的其他元素分隔开来。但是,VoiceXML要求把对话元素(选单和表格)看作是不同的元素,以便一次对用户提供一个元素。因此,HTML文件实际上起单一对话元素的作用,而 VoiceXML文件是对话元素(如选单和表格)的一个容器,每个容器包含对文本元素排列解释程序的逻辑。

表1 选单、定向对话和混合主动式对话的人机交互样式
提供天气信息举例

选单

定向对话

混合主动式对话

计算机:对安徽输出1;
对黄山输出2,……
人:输入1,……
计算机:对北京输出1;
对上海输出2,……
人:输入1,……

计算机:请问你要哪个省的天气?
人:安徽。
计算机:请问哪个城市?
人:黄山。

计算机:你想要哪个省和城市的天气?
人:安徽黄山。


  话音媒介连续性的再一个不同特点是要求标记包含应用逻辑,以用于在对话元素之间排列程序。这一要求反映在顺序逻辑元素的集成方面,VoiceXML比HTML更紧凑。例如,VoiceXML包含顺序控制元素,而在HTML中,这种控制只能通过更麻烦的编写脚本的方法才能实现。

  W3C语音浏览器工作组已将VoiceXML 1.0版确定为对话标记语言的基础。VoiceXML客户程序和VoiceXML应用业务,目前已在许多公司中开始实用。

《赛迪市场专家》2000/12/11

 


分类信息:     技术_语音识别_文摘