You want to meet friends for dinner or plan a team dinner.
What it does
We developed an AI agent that continuously observes the messages sent on a group and tries to identify the theme of the conversation. The AI agent gets triggered when the group is planning some activity and uses NLP to identify the activity. For the hackathon we have limited our scope to helping users find a restaurant. Once the AI agent is triggered, it tries to build a preference map for the group by identifying cuisines and other food related preferences mentioned in the chat. We then use the Yelp API to search for places that meets the preferences of the group. The recommendations are then provided in the app itself where users can upvote their choice. Once a majority has been reached, the bot which was silently listening to the group messages send a message notifying users of the most upvoted place. The bot also can make a reservation upon confirmation from the users.
How we built it
We used the Hyphenate Chat API to manage group creation, group messaging. We developed a webhook that receives all the messages sent in the group. Each message is then analysed using NLP modules to identify the trigger. Once a trigger has been identified, the AI which is just like a silent listener then scans every message sent on the group for identifying cuisine and food related intents. Once the food related intent is identified we use sentiment analysis to identify if the intent should be added to the preference map. Once the preference map is created, we query the Yelp API to find restaurants that satisfy the group preferences.
We used Node.js to develop the webhook and backend. The server is hosted on Heroku and we used MongoDB as our datastore. Node.js NLP modules were used to identify intents and for sentiment analysis
Challenges we ran into
Understanding the various API and integrating with our backend was one of the major hurdle that we face while building the App. Also developing the AI agent was a challenge as the user could send messages in any form. We wanted to maintain context for every users but that turned to be a complex problem as we were not very familiar with building AI agents
Accomplishments that we're proud of
Building an MVP that integrates different APIs. Developing an AI agent that could understand understand the group dynamics and make recommendations based on those
What we learned
There is a lot of potential in building AI bots for group chats. People like conversing with friends rather than chat bots but need the AI to reduce the overhead associated with group planning activity
What's next for GroupSync
Integrating with other domains like travel, movie watching and any group activity planning.