Inspiration
My google documents are very cluttered and unorganized, I have many jobs that require using google docs, so typically my notes pages will get drowned in the hundreds of doc files i have. So the other day when looking for notes for one of my classes i thought to myself, how could i make this easier? I have also been interested in using some new AI tools such as Gemini in new and unique ways, why not put them together?
What it does
This program will let you chat with an ai assistant using context from your own google docs. Want to test yourself with a practice test over your own notes instead of random questions on the internet? It will do that! Want to ask the bot about your notes from chapter 4 section 12 from your operating systems class, it will do that!
This program also picks out every document named notes in your google docs account and allows for easy viewing of your text straight from the browser. Along with that, clicking the edit button while viewing allows the user to edit their google doc and upload their changes to their docs account.
How I built it
Using flask, python, JavaScript, google API services, pinecone for vector storage, llama index which ties it all together, Google Gemini, stress, sweat, and a few tears.
Challenges we ran into
Google cloud API services and its Oauth2.0 was something I have not worked with. I spent the entire first day dealing with authentication issues to allow users to access their google docs through it.
Google Gemini does not like it when you embed entire pages into pinecone, it acts like it does not have any context about your notes! Finding clever ways to mutate the google doc text was an issue for a couple hours.
I also have little to no experience in using JavaScript or building any front end work at all hopefully its not too ugly!
I also have an entire spring football game to play on 4/13 at 11am so I will get about 16 hours of developing time compared to everyone's 36.
Accomplishments that we're proud of
- Created a well working MVP
- Gemini picks up on a lot of your notes
- Backend works nearly flawlessly
What we learned
-Front end development
- Using Google Api Services and dealing with all of their Oauth stuff
- Better storing of vectors into pinecone to allow Gemini to access as much context as possible
- Pretty much my first project that incorporated so much JavaScript and CSS
What's next for EZDocuments
I would love to make this into a full website this summer
Built With
- flask
- gemini
- google-cloud
- javascript
- llama
- pinecone
- python
Log in or sign up for Devpost to join the conversation.