https://cohere-class-notes.streamlit.app/
Streamlit.-.Google.Chrome.2024-01-16.23-18-51.mp4
I decided to build an RAG-powered chatbot to support connecting to external documents, so that users can upload their class notes as PDF files and ask the chatbot questions to quickly summarize information. I decided to make this after realizing that the process of finding information in my class notes was taking too long (finding the correct page, searching for the right answer, etc). Instead, you can simply upload all of your class notes to this bot and query information blazingly fast.
The RAG chatbot supports document chunking, embedding, retrieval and reranking, all through Cohere's APIs. I also built a user-friendly chatbot interface with Streamlit as a way to support PDF uploads. The PDF's are then converted into plaintext strings using the fitz library.
- Python
- StreamLit
- Cohere Chat and Embedding APIs
I plan to augment the app to use Cohere's Async client to handle concurrent requests, and also to support multiple tabs for different classes. This way, users can upload their PDF's to different chatbots and keep their different classes organized.