English or any other language as a matter of fact is difficult for a computer to understand, especially when the meaning is ambiguous. Most chat bots are “if else” programs that do nothing more than basic NLP or pattern recognition. Not denying how useful they have been lately but we still have miles to go.
Most times the chat bot fails to understand us and we lose interest. This is not a new problem but even after years of research, the programming and scientific community still doesn’t have a foolproof solution. This makes me wonder if we are on the right track at all.
Take for instance, when we meet a stranger from another country who speaks a completely different language, we are limited to hand gestures and pictures for communication before we start learning their language. If their language is too hard to learn and other person is willing to learn ours its a win. If this is the case with real world why are we trying to force our language to a computer to understand instead of trying to learn his. The language we are talking about is for conversation and not a programming language. So why not create a language easy for both of humans and machines to learn and understand?
Current Bozo Bot:
Me: Hi Bot, Can you check if there is any vegetarian restaurant around my office.
Bot: I am not sure what you are trying to ask.
Me: Fuck off!
Bot: I am not sure if your language is proper.
Me: Fuck off!
Me: vegetarian restaurants around me
Bot: XYZ Restaurant. 4.2/5. Open now
Me: fetch menu
Bot: <<menu image>>
Me: show address
Bot: 4130, 1st Cross, Vision 5th Block, Austin
There is no proper grammar in my conversation with my proposed bot neither is the bot programmed to respond in a Natural language but we both are clearly understanding our requests and responses. Shouldn’t this be how we should talk to a computer?