Uh-oh… I’ve done it again. You may have noticed over the past couple of Galahad-related blog posts that I haven’t really sailed in a straight line. First, I’m going to leverage an existing AI. Then I’m going to start from scratch. Next I’m going to python and run it on the RPi.
So, what’s next for me and my start-free AI project? Back to scratch. I don’t think that python is robust enough for my needs. With that being said, I am also a better C# programmer. A final decision to get this project going is to at least start it in C#. That logic may be able to translate over to python down the line though so don’t think that idea is out.
I’m headed back to the drawing board. If I’ve learned nothing else, it’s that the world of AI is vast and deceivingly barren. It is dominated by simple open-source projects and famous closed-source products. I need to create a solution with the quality of the products with availability of the projects and add a little fracsec spice to it.
The drawing board, right. What’s the plan? I need to draft out a comprehension model that mimics natural speech and understanding in a programmatic way. Machine learning, self-improvement, and maybe one day creativity will all be pivotal to creating the proper solution. From there, I’ll need to put “meaning” behind everything which will mean programming out API usages and other basic functions. Finally, a way to teach Galahad without creating more code is imperative.
The English language sucks. I need to embark on the voyage of teaching a computer how to speak it. Off the cuff, a simple learning function would be the use of synonyms. If I say, “Search for XYZ” because he knows the command search, what happens when I say, “Find XYZ?” The answer is he’ll say that he doesn’t know that command. I’d need to follow that up with something about “Find” being the same as “Search.”
Let’s get to some nitty-gritty. We’re back to his brain being based on a database. Both the user and Galahad will have the ability to read and modify this. I’ll be able to create tables for things like synonyms. Next, I need to store each important piece of each sentence dictated so that the follow on statements can reference them.
Finally, to feel accomplished I’m starting to code out some passive actions for Galahad. This means linking into a syslog server to monitor my network for me. At some point I’ll attack myself to see if he tells me.