Forked from https://github.com/SynHub/syn-bot-samples/tree/master/oscova-console-bot
There is a possibility to use some internal Oscova platform techniques that can help to enable better semantic analysis of tokens in user input.
- Loading WordNet Database
- Loading Word Vectors (you can train your own words set or use pretrained one)
- Use Oscova Machine Learning. This feature is available with a license only and I was not able to test it.
It's not clear how to test the understanding of user input by means of this platform because it works mostly as a black box. As you can see from simple examples below, enabling 1 and 2 together can help to better understand the meaning of some words. To make the chatbot understand sentences we need to hack the Oscova on low level (hook and transform user inputs - not sure if it's doable though) or consider using some other platform which support such advanced techniques as doc2vec etc.
The code of chatbot is taken from SynHub. To compile:
- Install and open MS Visual Studio,
- Go to Tools->NuGet Package Manager->Package Manager Console
- Run install-package Syn.Bot It will take several seconds for the app to run.
hello
Hello Bot developer!
hey
Please specify an App name.
hi
Please specify an App name.
bot
Hello Bot developer!
robot
Please specify an App name.
how are you
(no answer)
hello
Hello Bot developer!
hey
Please specify an App name.
hi
Hello Bot developer!
bot
Hello Bot developer!
robot
Please specify an App name.
how are you
(no answer)
hello
Hello Bot developer!
hey
Please specify an App name.
hi
Please specify an App name.
bot
Hello Bot developer!
robot
Hello Bot developer!
how are you
(no answer)
hello
Hello Bot developer!
hey
Please specify an App name.
hi
Please specify an App name.
bot
Hello Bot developer!
robot
Please specify an App name.
how are you
(no answer)