3 ms·
How do you do NLU? I.e. how do you understand what the customer said and what to do next.
by streetcat1 4y ago
How do you do NLU? I.e. how do you understand what the customer said and what to do next.
- tumidpandora 4y agotl;dr it doesn't. While I did start with a vision of presbot being a self-learning chatbot built to act as an interactive agent that would represent its owner (primarily b2c) in all sorts of situations. Based on the feedback, I realized that until that interaction is smooth, believable and closer to an actual dynamic conversation, it provides much less value. I was using a combination of https://www.nltk.org/ https://www.nltk.org/, https://spacy.io/ https://spacy.io/ and https://textblob.readthedocs.io/en/dev/ https://textblob.readthedocs.io/en/dev/ for NLP then. I pivoted to a rule-based bot focusing on lead capture via a linear conversation driven by user specified questions, more like an interactive version of a static form, with prescribed Q&A (AKA FAQs on the platform).
- streetcat1 4y agoI don't want to hurt the project, but this is basically a chat bot that does not understand what is said to it?
- tumidpandora 4y agoThat's accurate, it doesn't. Didn't want to put out a half-baked conversation experience, so had to shift focus to a rule-based bot. I'm no ML expert by any means, just an enthusiast. That's not to say it can't be extended to support NLU, the backend is modular.
- tumidpandora 4y agoForgot to add, the top level interactions (e.g., lead questions or email capture) require the user to choose an option on the Chat UI (via a button click) to respond, therefore, didn't really have a need to store the context/NLU. I've built some pre-defined responses to open text questions that rely on Levenshtein Distance and threshold (e.g., 90% similarity) for identifying appropriate response. Hope this helps. For stuff that's not defined, the bot says something like "I don't know."