1

我想在我的voicexml文件中有一个动态语法(读取单个产品并用php创建语法)

我的问题是,如果有任何建议或经验,应该在我阅读产品的来源中写多少字。我不太了解单词的结构或发音,所以让我们说

a) 单词彼此相当不同 b) 单词具有相同的结构或发音 c) a) 和 b) 的混合

提前致谢

4

1 回答 1

3

当您为 VoiceXML 指示动态语法时,我假设您指的是 SRGS 语法。

不幸的是,您必须在合理的负载下进行性能测试才能确定。在某些条件下,我已经成功传输了 1M+ 语法。我还完成了 10,000 个名单。我也遇到过只能使用几十个条目的平台。

语音识别 (ASR) 和 VoiceXML 平台将对您的结果产生重大影响。并且,使用此语法的并发识别数量也将与整体识别负载相关。

您提到的因素确实对识别性能和 CPU 负载有影响,但我通常发现语法的大小和条目的长度/可变性更重要。例如,是/否语法通常比复杂的菜单语法具有更高的 cpu 负载(短语往往需要更多的通行证,并在处理时留下更多的可能性)。我从广泛的数字语法(9-31 数字语法)中看到了一些可怕的数字。声音很短,很难消除歧义。同样,组件的可变性会产生大量路径,必须不断检查解决方案。大多数菜单或自然口语短语都有较长的单词,听起来明显不同,因此可以快速排除许多路径。

一些技巧:

大多数企业级 ASR 系统都支持缓存。如果您可以使用 URL 参数识别语法并设置 ASR 所需的任何 HTTP 标头信息(不要假设它们遵循标准),您可能会看到显着的性能提升。

提示通常可以隐藏语法加载/编译阶段。如果你有一个相对较长的提示,人们往往会闯入,你会发现你可以隐藏一些相当大的语法提取。同样,并非所有平台都能很好地并行处理这些任务。请注意,大多数 ASR 引擎可以收集音频并执行端点,同时仍然获取和编译语法。这可以为您争取更多时间,但您会看到延迟时间更长的影响。

大多数 ASR 引擎都提供了工具,可让您使用示例音频分析语法。这些工具通常会给你一个 cpu 资源指标。由于识别并发的复杂性,我很少发现您可以计算/预测整体性能,但它们可以给您与其他语法的比较影响。我还没有找到一个可以轻松跟踪语法处理时间的引擎,甚至很难大致猜测并发挑战。在大多数情况下,需要进行大规模测试。

在语法加载/编译时间之后,识别并发是最显着的性能影响。我已经看到一些应用程序在调用开始时具有高度复杂的语法。在没有机会缓存​​的情况下存在高水平的识别并发(当时的平台问题),这导致了扩展挑战(识别处理中的间歇性、大延迟)。

于 2011-02-11T13:57:46.997 回答