ibm-cloud-solutions / hubot-ibmcloud-nlc

Adds a framework to enable Natural Language interactions in your Hubot scripts
http://www.ibm.com/
Other
11 stars 1 forks source link

NLC stops responding after re-training a classifier #6

Closed aeweidne closed 8 years ago

aeweidne commented 8 years ago

I believe this happens if the bot receives any message while it is in training, but need to debug more. Long training wait will hurt here.

My guess is that at some point a promise isn't being resolved. The problem could also be in the local classifier cache logic.

FYI: @ramab @ycao

jlpadilla commented 8 years ago

There's to problems here:

  1. (resolved) There was to instances of the NLCManager object nlc.train and nlc.catchAll. That meant that nlc.catchAll was not aware, when a new classifier was trained from nlc.train. This has been resolved with #22 .
  2. (open) The confirmation dialog used before starting training seems to remain open and block new incoming messages from being processed correctly. I've narrowed the problem to this line in the code, https://github.com/ibm-cloud-solutions/hubot-ibmcloud-nlc/blob/master/src/scripts/nlc.train.js#L57 but need more investigation on the correct fix.
jlpadilla commented 8 years ago

Problem (2) has been resolved in the dependency library hubot-ibmcloud-utils with the following PR. https://github.com/ibm-cloud-solutions/hubot-ibmcloud-utils/pull/4

jlpadilla commented 8 years ago

A new version of hubot-ibmcloud-utils with the fix for problem (2) has been published. Closing this issue.