IBM Watson / Chat Bot / Conversation / Dynamic / Dialog / Discovery

时间:2017-06-12 03:28:15

标签: ibm-watson chatbot watson-conversation watson-dialog watson-discovery

关于Watson能力的问题

背景我们正在设计一个聊天机器人来回答访客关于我们公司的问题,例如:

  • 贵公司在哪里?
  • 贵公司有多大?
  • 我可以更了解贵公司的工作环境吗?
  • 贵公司做什么?

上面列出的示例问题应该能够通过ChatBot通过#Intent和@Entity映射到定义的Dialog处理来解决,以提供预定义的答案。

但是,我们想知道的是关于更具动态性的问答支持,如下一节所述。

动态问答挑战 我们希望我们的聊天机器人能够尽可能多地回答访问者的问题,但不知道如何处理如下问题:

关于员工

  1. 自2007年以来,有多少员工加入了这家公司?

    答案示例:自2007年以来加入了20多名员工

    动态因素:•加入的员工数量•年份范围

  2. 过去五年有多少员工加入并辞职?

    示例答案:加入了10名员工,但没有一人辞职

    动态因素:     •加入的员工人数     •自然语言年份范围     •员工就业状况

  3. 您的员工流失率是多少?

    答案示例:25%或0.25

    动态因素:     •计算:员工加入人数/员工辞职数量

  4. 员工是否可以在贵公司轻松晋升?

    答案示例:员工将每3年晋升一次

    动态因素:     •计算:员工人数和晋升日期,下一题名内部平均值

  5. 关于项目

    1. 哪个项目是贵公司处理的最大项目?
    2. 答案示例:项目A录得$ 10,000,000.00

      动态因素:已知如何按最大服务价格找到项目

      1. 贵公司是否积极参与项目进度或服务交付?

        示例答案:我们最有可能提前10%的原始时间表

        动态因素:     •已知所有项目和所有任务持续时间     •计算进度和实际完成日期之间的差异

      2. 您的平均项目团队规模是多少?

        示例答案:平均项目团队规模为5人

        动态因素:     •已知所有项目并阅读所有项目团队结构     •计算平均值

      3. 指向注意事项:

        • We don't want to code the Question and Answer explicitly
        • We are thinking IBM Watson should be able to answer those questions after understanding our data source
        

        数据源(以WORD格式的一堆文件):     •员工记录加入日期,结束日期和每个促销日期     •项目记录,包括合同,提案,团队结构和进度报告

        问题想澄清或了解

        • Do sample questions listed above must go through programming to handle?
        
        • Can IBM Watson have a way to answer our question in a meaningful manner like we listed example as above, if we provided those data source to IBM Watson and how?
        
        • For the first 2 questions about staff, do we need to code/define separate 2 mapping to handle these 2 questions even they shared similar structure?
        
        • Can it learn to handle dynamic question structure after we let IBM Watson know enough information to answer those questions.
        
        • If I ask something like [Last 5 Years] // [Since 2012] // [Exclude 2011 or Before] , do Watson know they are referring the same date range? Or we need to teach Watson one by one with #Intent and @Entity?
        

3 个答案:

答案 0 :(得分:1)

您的问题可能最适合IBM的DW论坛,因为它实际上并不是Stackoverflow的结构。

回答所有问题:

Watson Conversation的目的是进行非结构化对话,并以一种使计算机更容易使用的方式查找和构建响应。

您可以使用系统实体freadsys-number捕获上述示例。

答案 1 :(得分:0)

会话本身很复杂,即使使用强大的先进自然语言处理,仍然需要花费大量精力才能在聊天或语音界面中与人交互感觉自然。如果您希望了解自己可以快速获得多远,我建议您使用跨平台的自然语言处理工具API.AI

API.AI支持实体提取(即它可以接受用户查询并确定哪些单词指示日期,数字和自定义实体及其值),意图识别(它可以猜出用户打算做什么)如果您举例说明用户会使用机器学习的内容)并支持14个平台(Google智能助理,Facebook,Slack,Twilio,Telegram ......)所有没有任何代码

如果您确实希望自己开发API.AI有一个API,并且支持各种平台的16个SDK(Nodejs,Python,Java,...)以及任何通过HTTP实现webhook的JSON语言。

答案 2 :(得分:0)

我想建议一个对话/发现组合。当您的对话框无法回答问题时,您可以将问题转发给发现。发现可以采用非结构化数据,您可以相应地提取数据并且#34;教授"它得到了正确的答案。