【发布时间】:2017-12-18 22:53:42
【问题描述】:
有没有一种方法可以训练 Watson 识别电子邮件实体和电话号码,而无需求助于普通快递?
【问题讨论】:
-
也许您想了解 Watson Conversation 中实体的新版本,请查看我的编辑。
标签: ibm-watson chatbot watson-conversation
有没有一种方法可以训练 Watson 识别电子邮件实体和电话号码,而无需求助于普通快递?
【问题讨论】:
标签: ibm-watson chatbot watson-conversation
以前:
史蒂文,几个月前我也有同样的疑问。 IBM 沃森对话 没有电话号码或电子邮件地址的系统实体,没有 还。无论如何,创建新的系统实体是个好主意, 正确的?我们可以为 IBM 提供想法和反馈。
但是,一种轮廓解决方案是使用上下文变量并创建新的 实体。尝试创建一个像
@gmail.com、@hotmail.com、@outlook.com以及您发送的任何电子邮件 想认。您将使用以下条件:
if @mail, response: Your e-mail is $email用于识别电子邮件地址,但用于保存您的电子邮件 需要在
context变量中创建一个正则表达式,例如:"email": "<? input.text.extract('[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+(\\.[a-zA-Z]+){1,}',0)?>"现在,
phone号码:你可以激活系统实体
@sys-number,你会得到 只有几个数字,比如 11 个数字,并保存在一个上下文中 变量也。使用
@sys-number AND input.text.find('^[^\\d]*[\\d]{11}[^\\d]*$',0)')创建一个条件以查找号码 和sys-number用于识别用户的数字。
编辑:(带有新的发行说明 - 在 BETA 版本中):
现在,IBM Watson Conversation 具有实体模式,我们可以使用它来获取电子邮件地址、电话号码等。
现在,当您创建一个新的@entity 时,您可以可选地告知您要使用Pattern 或Synonymous,因此,您将创建一个新实体,在我的示例中,@contactInfo,以及带有 patterns 的值,用于获取 mail 或 phone 值,例如:
并且,在 Watson 训练您的更改之后,检查在 Try it Now 中完美运行:
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b,例如 test@gmail.com(\d{3})-(\d{3})-(\d{4}),例如800-426-4968
查看更多关于创建实体here。
【讨论】: