Coder Social home page Coder Social logo

mapbot's Introduction

MapBot

Hey! I'm your friendly navigator bot! Try me out, not to brag but I'm FUN!

What I do?

I aim to give users a new way to interact with Google Maps through engaging text-based conversational interfaces.

How old am I?

I'm only a baby bot right now, I need you to feed me with logic, data and inspiration.

What is the motivation behind building me?

The primary motivation of the developers of MapBot is to provide a playground to tech enthusiasts, both beginners and advanced to try algorithms, approaches and ideas while contributing to a real-life project.

What I aspire to be one day?
  • I want to help users in the most comprehensive way.
  • I want to give 'geeks' a platform to try out all things 'cool'.

Are you here for GSSoC 2020?

Check out all related information here


What are some pre-requisites?
  • MySQL
  • Install the community version of mySQL from the official mySQL documentation page.
  • Create root user credentials during installation.
  • Verify the installation, running the command mysql -uroot -p -hlocalhost should open the mySQL monitor. (Enter the root password when prompted)
  • StanfordCoreNLP
    • StanfordCoreNLP has a dependency on Java 8. java -version should complete successfully with version 1.8 or higher.
    • Windows- Download as a .zip file from here.
    • Linux and MacOS- Follow the instructions to download the file from here.
How to set me up?
  • Clone the repository
  • Create the mapbot database in mySQL
    • mysql -uroot -p -hlocalhost
    • Enter root password when prompted
    • create database mapbot;
    • Verify creation of the database show databases;
  • Unzip the StanfordCoreNLP package in the repository and keep the file names stanford-corenlp-x.x.x.jar and stanford-corenlp-x.x.x-models.jar handy.
  • Add config.py file to .gitignore to avoid pushing changes made to config
  • Run git rm --cached config.py
  • Edit the config.py file with the corresponding values
    • user = "root"
    • password = <your_root_password>
    • host = "localhost"
    • database = "mapbot"
    • key = <your_Google_Cloud_API_key>
    • stanford_path_to_jar = <your_path_to_stanford-corenlp-x.x.x.jar>
    • stanford_path_to_models_jar = <your_path_to_stanford-corenlp-x.x.x-models.jar>
    • javahome = <your_path_to_jdk_bin_java.exe>
  • Install dependencies from requirements.txt file. Run pip install -r requirements.txt
  • You're all set up, run the init.py file. python init.py
  • It is recommended that you set this project up in a virtual environment to keep the dependencies separated and for easier debugging. Here's how you can do that -
    1. Python
    2. Conda

How do I work?

The analysis folder contains data files for the project. The sentences.csv contains the base training dataset which is used to classify the user's input into three classes - Statement, Question, and Chat. Going through some examples would clarify the difference between statement and chat. The featuresDump.csv is the result of text pre-processing done using the code in features.py and featuresDump.py.


Want to see me in action?

Here's a Medium article with the some superficial explanations, there are some video links too!

mapbot's People

Contributors

vishakha-lall avatar janakrajchadha avatar chttrjeankr avatar dependabot[bot] avatar

Stargazers

Lungoupao Khongsai avatar Shawn Charles avatar  avatar

Watchers

 avatar

Forkers

mturch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.