Giter VIP home page Giter VIP logo

pennapps-f15's Introduction

PennApps-F15 : Plaidypus

Each one of us has a unique personality that shines through in the way we communicate, most freely with our friends and peers. We decided to create Plaidypus, a personalized AI bot that reflects the styles and quirks of each user it meets.

What it does

Plaidypus is a fun loving bot that can take on the linguistics style of you or your friends. Pulling from a corpus of a user's past Facebook messages, Plaidypus picks up on many of the subtleties in dialogue that together characterize how each one of speak. In our app, Plaidypus can either take on as you, or any of your Facebook friends who have been with Plaidypus.

What makes it different

Unlike traditional AI bots, Plaidypus does not just regurgitate random and largely irrelevant comments you made in the past. Rather, Plaidypus take the time to formulate a response, much like the way you do; Plaidypus considers different linguistic mannerisms for incorporating local slang, demonstrating knowledge of pop culture with gifs, and responding to articles you send.

How we built it

For the backend natural language processing, we used a variety of toolkits such as NLTK for n-gram modeling & POS tagging, Indicoio for sentiment analysis, and coreNLP for named entity recognition. We also adapted algorithms such as tf-idf (term frequency-inverse document frequency) and applied specific knowledge of linguistics (ie. grammar, fillers, contractions, formality, etc.) to customize Plaidypus to take on each person it speaks to. On the frontend, our web app provides a clean interface for realtime interaction with Plaidypus, built on Django, react, grunt, browserify, es6, babel, and a number of other libraries.

Challenges & Accomplishments

  • Lack of data : A challenge that came with our selection of Facebook messages for our base corpus was the limitation on quantity of data we could access. Since Plaidypus is built on the traits of individuals, we could not aggregate data from multiple users. As a result, we stepped away from a strictly objective data analysis approach; rather we chose to dive into different aspects of linguistics to build our own unique models for optimization.
  • Building an identity : Another challenge was determining what role we would want our AI bot to play, and the personality we would instill. Throughout development, we kept the 4 qualities of humor, intelligence, practicality, and human-ness in mind, so we think Plaidypus has what it takes to be the second best version of you.

What's next for Plaidypus?

To grow and learn.

Development

  • Running the web app development server is as simple as running npm start.
  • To compile the source and watch for changes, run grunt dev.

Team

Felipe Vargas
Animesh Ramesh
Ariel Rao

pennapps-f15's People

Contributors

raoariel avatar fvgs avatar animeshramesh avatar

Stargazers

K. Marco BEKOUTARE avatar Andrew Shaffer avatar  avatar Kumail Jaffer avatar  avatar

Watchers

Kumail Jaffer avatar James Cloos avatar  avatar  avatar  avatar

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.