As interns, we had to search around a lot during our first weeks here and ask tons of questions during our learning process at Wayfair. Hours were spent browsing the KB and Slack channels. During this time, we noticed things that we could do to improve the answer-hunting experience. We created Wayflow (Wayfair + StackOverflow) in order to address these concerns.
What it does
Wayflow can be used as a Slack Hubot command to ask questions and receive previously asked questions/answers that are similar. Simply message Hubot with "q", followed by your question. Users can also visit a web-page where questions and answers are archived in threads, much like Stack Overflow.
How we built it
The retrieval of similar questions and answers is done with the help of Gensim, a topic modelling and document indexing Python library. Gensim allows us to analyze semantic similarities between words and sentences. We used Wayfair's main PHP-MVC framework along with Redux for the webpage. We also built a search via Solr for better search performance. The website is structured similarly to Stack Overflow. The home page has a search bar where users can search for a question, and then select from a list of questions to find their answers. Once a user clicks on a question, they get redirected to a page that has a list of answers that have been associated with the question. It also allows for other users to add in follow-up responses and vote on which answers have helped them as well. The user can also post questions from the website and optionally associate a help channel with the question.
Challenges we ran into
We ran into a lot of issues with the machine learning. We were all beginners/had never touched anything in this realm before today. We investigated word2vec models, GLoVe models, Siamese networks, and read a ton of papers before we even had an inkling of what was going on. Throughout the hackathon, we ran into tons of permission issues, trying to install things on our dev machines, network permission issues, and restrictions such as a lack of access to our Slack API and Hubot.
Accomplishments that we're proud of
Retaining our sanity after staying up for so long.
What we learned
We learned a lot about how to use Solr, Slack/Hubot API's, machine learning in the natural language realm, and how to organize a large project.
What's next for Wayflow
It would be great if work could be continued on this project or a variation of it in the future. We think it could offer a lot of utility to everyone if it was more polished.