Skip to content

arpitkath/Brain.ai

Repository files navigation

Brain.ai

The goal is to design an android application of a virtual assistant. It is basically a voice assistant which would help the user to provide answer to his question. All the data would be send to our server which would respond to the given queries by using algorithms.

Features:

  • Unit Conversion
  • Search Summarization
  • Maps search
  • Live News
  • Setting Alarm

What it does:

The assistant takes voice as input and convert it to text and send the raw text to server.(The voice input and voice to text is done on android using Google API and sent to the python server using socket used in brain_server.py) The server first pre processes the text for classification, i.e which module to run using ensemble of NaiveBayes, Linear SVM and Perceptron using voting.

The server uses some Natural Language Processing tools such as POS tagging, Named Entity recognition to do semantic analysis of the text and determines which module will reply and what to reply. It can also remember it's past conversation and relate it to new queries like "Who's Bill Gates", "Who's is his wife" do it will get the results of "Bill Gate's wife".

Requirements:

  • Python2.7
  • NLTK
  • SPACY
  • SEMANTICS.UNITS
  • INFLECT
  • BS4
  • REQUESTS
  • DUCKDUCKGO API