We wanted to push the bounds of mashing together a number of APIs and multiple machine-learning contexts to create an almost Turing-Test passing experience.
What it does
It can hold a conversation with you like a normal human to gain some contextual insight and recommend things for your travels. You'll feel more comfortable about revealing your biases about where you're traveling to and enjoy an overall better experience at your destination.
How we built it
Regarding our logic in the application, we use simple unigram and bigram assertions for the language model, including some basic parsing and recognition trained off of Azure's sample datasets for restaurant features. In addition, we use Azure's Machine Learning API for sentiment analysis and keyword recognition. We also use Yelp's API to pull information about a user's destination.
All of this is hosted on Azure as an AngularJS app.
Challenges we ran into
Many of the APIs we tried to use were difficult to properly request from because of Cross-Origin-Request errors. We got past most of these by using small hacks with Angular's "jsonp" method and adapting our request's MIME-types to the appropriate form the requested servers expect.
Also, training the language model proved quite difficult at first, but Azure's interface and guides were very helpful as a reference for our issues.
Accomplishments that we're proud of
We built something cool.
What we learned
We learned more about NLP, Machine Learning, and the nuances of AngularJS.
What's next for EVE, Your Personal Travel Assistant
Expanding it's NLP capabilities and moving to genres beyond just food and travel.