Arkanath Pathak
Abwid Blog
Published in
4 min readOct 19, 2015

--

Abwid Logo

How is the future going to be different from today? technology, right? Sure, but technology is a very wide term. Let me tell you my stand: Artificial Intelligence, or what is generally referred to as AI. AI is already being used in a lot of places today: personalised news / posts / tweets, recommended friends and virtual assistants like Siri or Cortana.

Ray Kurzweil, director of engineering at Google, claims to know and foresee that people will be able to “upload” their entire brains to computers and become “digitally immortal” by 2045. This process has been termed as mind uploading.

I am sure most of the people must have read some famous entities like Stephen Hawking warning us of the adverse effects that AI can have in the future. The primary motivation behind these comments are that the AI might try to disregard others opinion when trying to achieve its goal. Something like, you know… I, Robot (2004 film).

When I think of the future, I see the world where we have artificial agents helping us to an extent that most of the jobs where humans are needed involve “thinking”.

So with this mindset, I took the first step towards creating an Artificial Assistant. And I named it… Abwid. A bot without identity. The primary motivation behind me developing this is to build an agent which can communicate with the public as being your assistant. The assistant should improve over time and should be able to handle complex queries. Clearly, this is a very ambitious idea and it is not easy to implement. However, it was so exciting that I started with an initial model to build on.

I chose a web interface that you can share with a URL or embed into your website. In the future, a model can be built which can be set up over your smartphone to give automated replies, your email to give intelligent auto replies, and similar interfaces. The web interface needs to be mobile friendly in this era.

A screenshot of the chat interface as it would look on a smartphone device

How do you feed your information to the assistant? This, again, bugged me initially with a lot of complicated thoughts. Perhaps it could analyze your activity (such as emails) and derive the information using some advanced information extraction techniques. Or, it could search you over the internet to learn more about you. But then, to start with I decided that the user should manually feed the application the relevant information. I called this information bits as Iotas, representing some tiny amount of information. Initially, I chose some very general Iotas that can be utilized by many users: things like name, address, hobbies, and so on.

The next thing that I decided to include is the ability for the visitor to talk with the user in the same chat. When this happens the user should be notified that some guest wants to have a chat with him.

Also, a crucial thing that the assistant should be capable of is to tell whether the user is free at the time. The solution to this is not trivial as well. I decided to go with the option of user feeding his public calendars as iotas so the intelligent can look up any ongoing events.

Managing all these iotas and other elements requires a dashboard for the user. That, again, is made mobile friendly as well.

A screenshot of how the Abwid dashboard would look like on a 1920x1080 screen.

Handling all kinds of questions is not an easy task even with the current state-of-art methods and is a big research interest for a lot of people. Initially I have chosen api.ai as the tool to handle such requests, with a lot of hard coding and some machine learning provided by the API itself. The responses are not always correct and it needs a lot of building upon, but hey, we are just getting started!

Initially, I have made the application invite-only, since it requires some manual processing to set up a user’s agent in api.ai. Go to abwid.com to register your invite and you shall be guided from there on!

--

--