Onboarding Lessons from WAT.ai's political LLM team
We have >75 students starting their tech journeys this term. Here are some examples of growth from one of our teams :-)
Some context: the political LLM team at WAT.ai is trying to create political decision making assistants using chatbots. To get to this end goal, we need to start with the basics and get our students familiar with the technology to build chatbots. We let all our students choose projects that aligned with their hobbies and personalities. Here are all the ways they impressed us at the end of our onboarding 😉
Evan D - Fantasy Football Player Comparison
Evan was working on his skills with building LLM chatbots using Langchain and webscraped datasets with Selenium. Given his interest in fantasy football, he created this tool to compare fantasy football players based on player outlooks!
One of the challenges he ran into was trying to rank players by similarity using precise similarity scores. It also takes around 20 seconds to provide the output, so Evan is working to segment the results into rankings, sentiment, and generative AI text. Still, he’s already using the app to choose fantasy sport lineups in his group of friends!
Julian Z - News Bias Analyser
Julian was also working to level up his skills with Langchain. He created a tool that lets anyone retrieve a news article and analyse its political leanings. He achieved this pretty simply by comparing the text similarity of sections of the article with words that tended to be mentioned often in left-leaning or right-leaning contexts (ex: climate crisis, free market, strong borders, etc.)
One of the challenges Julian ran into was that some generic words (ex: Trump, Harris) could be associated in negative or positive contexts. So future versions of his tool would improve on this by considering full sentences instead of key words.
Jennifer Y - Rock Music Dataset
After just getting started with Python and having never heard of JSON/CSV, Jennifer had an explosive journey of growth learning about Python, Selenium, and bs4 to webscrape last.fm’s datasets on rock artists (her favourite genre of music).
Some challenges she faced included learning to navigate lazy-loaded content across pages. Though in the end, she figured out how to go above and beyond and even created a front-end UI.
Benny W - Prompt Engineering Experiments
Benny was experimenting with the multilingual capabilities of different foundational models, combined with various system messages to improve the reliability of the LLMs.
He was one of our most ambitious members, taking this on alongside early adventures in creating our decision making agents! So he quickly turned started experimenting with decision-making assistants for the game of Monopoly.
Some of the challenges he quickly discovered was using the LLM to successfully update game variables reliably instead of doing this with traditional code. Ex: He kept seeing hallucinations when having LLMs track money balances after buying Monopoly properties. This is why the team will be moving towards existing Monopoly simulators in Python and using the LLMs as decision-making agents only.
Jordan L - League of Legends Advisor
Jordan was just starting his journey with Python when he just got started on the team. Getting familiar with OOP and search algorithms quickly, he even went above and beyond to use tkinter to create a GUI to find and categorise books he read.
Going through that quickly, he then moved on to a League of Legends advisor to help recommend characters for the game.
The largest challenge was preventing hallucinations with fictional League of Legend characters and roles. Future improvements Jordan wants to add include adding a JSON output format and output parsing to check for valid character classes using traditional software.
Devon K - Neighbourhood Recommendation System
Last but not least, Devon hustled to get us a recorded demo of his work, even on his birthday 💪. Given his interest in urban planning policy, he created a tool to help citizens select Toronto neighbourhoods to live in based on demographic information. In the backend, his tool is powered by a FAISS vectorstore with demographic information about Toronto’s neighbourhoods.
We’re beyond impressed to see the personality, creativity, and rapid growth of all of our team members! After a quick pause for midterm cry-sessions, we’ll be launching into our application of political decision making agents in full force 😅. Excited to share more progress as we go!