Inspiration

How do you get a person who doesn't know what they want to figure out what they want? You get them to think about what questions matter to them relevant to the decision and get them information on those questions. Then when they feel like they know enough to make an informed decision they can choose with confidence. This is what our game tries to do to combat apathy and misinformation. Many people feel overwhelmed by the idea of politics and they don't participate because they don't know how to navigate the misinformation to get trustworthy answers to their questions, or they don't know what questions they even have. Our app is a gamification for getting people to learn more about the presidential candidates, and even, perhaps more about themselves.

What it does

Let the user play the role of debate host and judge! The user submits questions of their choice to the app and receives responses from chatbots representing each of the two candidates, Biden and Trump. The candidate's name is obscured during this part of the game to avoid bias and focus on content, and the user can evaluate these anonymous responses and vote for the one they prefer. At the end of the game, the user can view the result of the debate and see which candidate won based on his or her votes. This lets the user understand which presidential candidate aligns better with the user's views. Additionally, there is a trivia section where the user can test their knowledge about Biden and Trump, through which they can learn new presidential facts and assess if they had any misconceptions. The app would also collect the data from this gameplay and make it usable for analytics, such as election result forecasting, gauging people's interest in topics, and assessing voter knowledge and preferences.

How we built it

The main app is a javascript website as the user interface. The back end calls the chat gpt API with the user's submitted question along with contextual text to prompt the LLM to give a Trump response and a Biden response. These are used to populate the candidate's answer boxes. The gameplay data currently is not stored, so we created mock data in a csv for the voter insights data visualizations. The mock data includes the categorization of the user-submitted prompts into broader topics which were generated by Chat GPT. The data analysis is done through a python notebook using pandas to read, transform, and plot the graphs. The notebook output is exported to html.

Challenges we ran into

  • Finding an LLM with free/inexpensive API was difficult, as many companies do not offer API usage of their LLMs for free
  • Using RAG effectively was difficult, as it was hard to evaluate what documents we should include and whether the results of adding the RAG over the LLM gave improved results. More effort would be needed to identify a good training workflow and metrics for things like hallucinations and "good answers".
  • Limited tools was an obstacle, as we could not freely use cloud environments, compute, databases, ETL orchestration, and dashboarding software
  • remote team

What we learned

  • gained better understanding of using LLMs and RAG
  • learned some facts about the presidential candidates and increased familiarity with their platforms

What's next for Debate Bot

  • More robust infrastructure for the app and data
  • Prettier graphs and more analytics, on a real dashboard
  • More tuning on the model to improve chat bot responses

Built With

Share this project:

Updates