Inspiration
Does ChatGPT or Copilot bother you with its inconsistencies? Introducing pickle.ai, which is a customized web extension that provides better user experiences and suggestions to improve your coding!
What it does
pickle.ai is an extension that provides personalised feedback and allows users to optimise their solutions or receive assistance from a model towards deriving their solution.
How we built it
pickle.ai uses Retrieval-Augmented Generation along with LLM models fine-tuned specifically for competitive programming and algorithmic questions, which allows for more precise responses that specifically target each individual LeetCode problem. For our extension, we used Next.js with Server Components and ShadCN UI.
Challenges we ran into
As our team was coming up with an idea, we had a really hard time finding an idea that fit to the theme. But, one key event that happens to every computer science student is doing LeetCode problems, so we thought we would make something that expedited the learning process on LeetCode.
For the front-end:
- It was our first time using Figma, so there were a lot of difficulties with Figma booleans, components, and the interactions between components.
- Additionally, web development was pretty new to many members of the team, so we struggled with learning the content and writing the programs at the same time. It was difficult to get started and gain traction because of our unfamiliarity with the tools, but we managed to put something together!
For the back-end:
- The concept of Retrieval-Augmented Generation was completely new to us, and none of us have ever fine-tuned a LLM. We spent a good amount of time learning about the concepts and trying to discover the connections between different back-end server-side building blocks.
- Finding a model with high accuracy also proved to be difficult as we found out that, many times, the LLM outputs were highly inaccurate.
Accomplishments that we're proud of
This was our first time using everything! Our team struggled immensely with learning the different tools, but as we got more used to them, we started enjoying them! None of us have used Jupyter Notebook before, but after a few hours it was like second-nature. For the frontend, it was some of our first time using TailwindCSS and ShadCN, which was very cool to learn and implement.
What was most important at this hackathon was the insane amount of new knowledge that was acquired. We chose the Intel track, understanding little about AI concepts and hardware, but gained a lot of exposure to the technology that leads the AI industry through attending workshops and developing our project (described more below).
What we learned
We learned about how to use React with Next.js and Typescript to build a full-stack website for the first time. Additionally, we learned how to generate vector embeddings with Python and Jupyter Notebooks in the Intel Developer Cloud and put them into the MongoDB vector database. Then, we learned how to use the MongoDB vector database as data for Retrieval-Augmented Generation using fine-tuned LLMs for LeetCode problems!
What's next for pickle.ai
Right now, the extension is tailored towards LeetCode problems, but if time permitted, we would have extended out to other popular competitive coding platforms, such as: HackerRank, CodeForces, CodeChef, Code Signal, etc. We would also find a better model and/or fine-tune details to make the improvement recommendations easier to read and more accurate.
Built With
- auth0
- cloudflare
- idc
- next.js
- python
- tailwindcss
- terraform
Log in or sign up for Devpost to join the conversation.