不知为何,Dialogflow无法识别训练短语中存在的名字。例如,我发送的信息是“我的名字是Ashvin”,应得到的回应应该是:“您的姓氏是什么?”
我还尝试让Dialogflow记住这个名字,但它仍然无法识别。
这是来自训练界面的截图:
回答:
Dialogflow在处理非英语/非美国名字时存在问题。目前,Dialogflow仅能识别@sys.given-name
数据库中包含的名字。因此,大多数英语名字以及在美国常见的一些非英语名字可以通过@sys.given-name
被识别。
如果你需要识别的名字数量有限,可以将这些名字添加到复合/枚举实体中,这样代理就能识别这些名字。否则,可以使用@sys.any
,然后在Webhook中设计一些逻辑来近似匹配用户提供的名字,并在捕获后请求确认。