Here Is what I want to make:
A virtual assistant that runs on my computer.
I’ve been programming in Python for a while and consequently I have a bunch of Productivity scripts lying around that can perform various general tasks on my computer. I would like to make a Virtual Assistant that can run scripts like this for me using natural language commands.
And also have some chatting abilities.
So here is what I want to do in more technical terms.
I want to make a chatbot that can reduce most complex sentences to simple commands, this seems very possible from what I have read so far.
But I also want it to learn. In the sense that If I tell it that “the President of the United States is Barack Obama”, the Chatbot will then know the reply to “Who is President?” and “Who is Barack Obama”. I’ve seen plenty of examples of this kind of learning, but I’ve found nothing on how to actually implement it in the vast array of tutorials on this site. (great site btw).
but I guess I have yet to really grasp how to program Concepts.
Eventually I would like to connect the bot to the internet, running as a server from my home computer, so I can give it commands no matter where I am, and ideally also chat with other people. I am actively involved in various groups that hang out in chat rooms with easily a few hundred people every day.
The tools I’m looking at:
I prefer Python as a language, and I like Rivescript, after reading the tutorial there.
But, and forgive me for being a total noob at this, is there a way to implement machine learning modules into the chatbot? Python has plenty of them, I’m wondering how common they are to use? (Like PyBrain and PyML)
Secondly, where do I get templates, or databases for conversation I can use so I don’t have to recreate the wheel, I’d hate to have to manually type in every possible conversation, surely there are templates I can download from people much smarter then I?
Ok, thanks for reading, and please let me know If I’m approaching this in the wrong way, or how I should be working on it.