Inspiration
I got the idea by combining two main things: the heated political climate as well as the successes of the recent release of ChatGPT. People (me included) seem to love things like ChatGPT and Dalle so an application like this should be of similar value. The recent movements of holding politicians accountable for what they’ve said, plus the great divide in American views, always had me wondering what it would be like to actually talk to one.
What it does
PolitiBot is an MVP that allows a user to interact with the AI form of Joe Biden and Donald Trump. Each question asked to either bot is also comprised of an explainability component in which the reasoning behind the answer is shown.
How I built it
- Created models using PyTorch and
GODEL - Created sentence embeddings using transformers and contextual embeddings
- Vector space searching done through
SentenceTransformer - Webscraping written with
beautifulsoupandselenium - Backend uses
FastAPIand runs usingGunicorn - Frontend built with
Reactand had to set upReduxstructure - Deployment is containerized with Docker and utilizes Docker-Compose
Challenges I ran into
- I hadn't done Redux in a while so that was a tougher fight than I had anticipated.
- I also ran into issues of not being given more vCPUs on AWS and GCP not having any GPU VMs available. So I went with a basic VM (sorry if it is slower!)
Accomplishments that I'm proud of
I saw a post about this hackathon this previous week and had started thinking of ideas. I've always wanted to do something sort of like this (original idea was to be able to talk to religious figures such as Jesus) and with the recent ChatGPT I got very inspired. I'm just happy that I built a FULL MVP in a weekend. There were plenty of times...I didn't think I'd make it.
What I learned
- Training time is crucial. I'm glad I started with that.
- I had a big refresher on frontend tech and was happy to learn more and work within the Conversational AI space again.
What's next for PolitiBot
- Political bots to debate with each other
- Explainability directly linked to audio and video data
- Currently only trained for 10 epochs using less than 10% of data; more training time!
- Plot how politicians have changed their views/sentiment on subjects over time
MVP: what I built for this hackathon
Alpha: be able to chat with every presidential candidate
Beta: be able to chat with every house and senate member
V1: be able to chat with EVERY politician in the US
Log in or sign up for Devpost to join the conversation.