Search code examples
ibm-watsonchatbotwatson-conversationwatson-dialogwatson-discovery

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


Question About Watson Capability

Background We are designing a Chat Bot to answer visitor questions about our company, for example:

  • Where are, your company located?
  • How large is your company?
  • May I know more about your company working environment?
  • What does your company do?

Sample questions listed above should be able to address by Chat Bot through #Intent and @Entity mapping into defined Dialog handling to provide a predefined answer.

However, what we want to know is about the more dynamic question and answer support as the following section.

Dynamic Question and Answer Challenge We want our Chat Bot can answer as many as a visitor might ask, but no idea how to handle the question like:

About Staff

  1. How many staff has joined this company in the since 2007 years?

    Example answer: Over 20 staffs joined since 2007

    Dynamic factors: • # of staff joined • Year Range

  2. How many staff has joined in last five years and resigned?

    Example answer: 10 staffs joined and none of them resigned

    Dynamic factors: • # of staff joined • Natural Language Year Range • Staff employment status

  3. What is your staff turnover rate?

    Example answer: 25% or 0.25

    Dynamic factors: • Calculation: # of staff join / # of staff resign

  4. Will a staff get promote easily in your company?

    Example answer: Staff will be promoted every 3 years

    Dynamic factors: • Calculation: # of staff and promotion date with next title internal average

About Project

  1. Which project is the largest project in terms of price your company has handled?

Example answer: Project A recorded $10,000,000.00

Dynamic factors: Known how to find project by largest service price

  1. Does your company aggressive on project schedule or service delivery?

    Example answer: Most likely we ahead 10% of the original schedule

    Dynamic factors: • Known all project and all task duration • Calculate difference between schedule and actual completion date

  2. What is your average project team size?

    Example answer: Average project team size is 5 peoples

    Dynamic factors: • Known all project and read all project team structure • Calculate the average

Point to Note:

• 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

Data Source (in a bunch files of WORD format): • Staff record with Join Date, Last Date and each Promotion Date • Project record including Contract, Proposal, Team Structure and Progress Report

Question would like to clarify or know

• 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?

Solution

  • I would like to suggest a conversation/discovery combination. When your dialog can't answer the question then you forward the question to discovery. Discovery can take unstructured data and you can extract that data accordingly and "teach" it to get the right answer.