识别号码正确

问题描述:

我有一个意向,我可能会说“转让4鲍勃”,它标识为“转移为鲍勃”识别号码正确

此外,我可能会说“转让10鲍勃和其标识为”在前一个数字的末尾转移102 Bob'将字改为2。

获得API.AI正确识别这些部件的最佳方式是什么,4是不是和不是2?

+0

当你说“说”,你的意思是你正在使用API​​.AI的顶部语音识别(与谷歌一起助理,例如)? –

+0

我们正在使用谷歌首页,将其传递给API.AI 另一个例子是,如果我们点咖啡,我们说'给我4个拿铁咖啡'它会回来拿我拿铁 我们尝试了一些系统实体,如使四个@ sys.number和拿铁和一个自定义的实体,但没有工作 也尝试sys.unit信息'4拿铁'周围,希望它会提取4作为金额和拿铁作为单位,但也没有运气 – Pagrate

+0

什么是建议的方式来提取一个金额和另一个值作为一个单位,而不是传统的单位,如重量或长度的单位? 就像你会如何解析不是传统单位的“买4把雨伞”或“买30个苹果” – Pagrate

您提到您在Google平台上使用了操作。这意味着语音识别 - 将用户所说的内容翻译成文本的过程 - 在数据进入API.AI之前发生。

您遇到的问题是Google上的操作错误地将某些数字识别为单词,例如, four变成for

因为这发生在API.AI之前 - 而且与API.AI分开,您将无法修复错误识别。

下面,我将解释如何在API.AI中解决此问题。但是,也值得考虑如何让对话设计尽可能健壮,以便像这样的问题不太可能导致问题。

您可以增加稳健性的一种方法是将该数字标记为API.AI中的必需参数,以便由于识别错误而提示用户是否未检测到该数字。在这种情况下,对话框将如下所示:

User:给我四杯拿铁。

应用程序:当然,四个拿铁咖啡来了。

用户:给我拿铁。

应用程序:你想要多少?

用户:四。

应用程序:当然,四个拿铁咖啡来了。

无论如何,这里有一个解决方法,你可以用它来帮助从误认恢复:

  1. 在你的意图,提供这些常见的错误识别值的例子。突出显示并将它们标记为数字。

User says statements

  1. 测试出你的意图,从控制台,你会看到“为”现在匹配与价值“数”实体“ ”。
  2. Console

    1. 在你履行网络挂接,检查参数为这个值,并使用字典将其转换为适当的数字。这里的JSON以上查询:
    2.  
          { 
           "id": "994c4e39-be49-4eae-94b0-077700ef87a3", 
           "timestamp": "2017-08-03T19:50:26.314Z", 
           "lang": "en", 
           "result": { 
           "source": "agent", 
           "resolvedQuery": "Get me for lattes", 
           "action": "", 
           "actionIncomplete": false, 
           "parameters": { 
            "drink": "lattes", 
            "number": "for" // NOTE: Convert this to "4" in your webhook 
           }, 
           "contexts": [], 
           "metadata": { 
            "intentId": "0e1b0e72-78ba-4c61-a4fd-a73788034de1", 
            "webhookUsed": "false", 
            "webhookForSlotFillingUsed": "false", 
            "intentName": "get drink" 
           }, 
           "fulfillment": { 
            "speech": "", 
            "messages": [ 
            { 
             "type": 0, 
             "speech": "" 
            } 
            ] 
           }, 
           "score": 1 
           }, 
           "status": { 
           "code": 200, 
           "errorType": "success" 
           }, 
           "sessionId": "8b0891c1-50c8-43c6-99c4-8f77261acf86" 
          } 
      
    开始=“3”>
开始=“2”>