沃森助理模式

时间:2018-07-20 11:45:38

标签: watson-conversation

我正在创建对话以“提出投诉”。 在此对话框中使用的数据是:

  • 合同编号:它可以包含10个数字或数字和字母(类型:模式)
  • 公司(类型:实体)
  • 名称:它可以由([A-Za-z àâæçéèêëîïôœùûüÿÀÂÆÇnÉÈÊËÎÏÔŒÙÛÜŸ'- ", ]){1,}(类型:图案)组成
  • 名字:它可以由([A-Za-z àâæçéèêëîïôœùûüÿÀÂÆÇnÉÈÊËÎÏÔŒÙÛÜŸ'- ", ]){1,}(类型:模式)组成
  • 投诉对象:可以包含字母,数字,字符,空格等的段落(类型:模式)

收集这些数据之后,将向客户提出一个问题: 您的合同号为$num_contrat,您的姓氏为:$surname您的名字为:$first_name您的索赔为:$obj_reclamation。您确认这些数据吗?

如果是,则索赔将记录在数据库中。如果不是,将提出的问题是:您要编辑哪些数据? ...

直到现在,我的机器人仅检测到$company,因为它存在于公司实体中,并且未检测到$num_contrat$surname$first_name和{{1} }。

1 个答案:

答案 0 :(得分:0)

我建议使用测试工具测试您的正则表达式。我在以下位置运行您的正则表达式:https://regexr.com

它报告了错误:

Range values reversed. Start char code is greater than end char code.

-有关。

因此您应该使用正确的正则表达式来解决此问题。

([A-Za-z àâæçéèêëîïôœùûüÿÀÂÆÇnÉÈÊËÎÏÔŒÙÛÜŸ'\- ", ]){1,} 

但是您仍然有问题。这将匹配输入的第一个完整字符串。如果此人正在使用插槽,则您只会检测第一个单词。

您可以选择一些方法来解决此问题。

1。使用@sys-name系统实体。那会给你一个人的名字。

2。您可以构建请求以询问其显式名称。

3。您可以创建一个迷你表单,以强制其填充结构化内容。需要UI工作。

4。您可以创建一个将其传递给NLU的云函数,您可以将其返回人员姓名和公司名称等。我有一个example here