This is a submission for the
Tools Used
TimescaleDB as the main database to store the documents and its embeddings
pgai to access Open AI services in database
pgvector to store document embeddings
pgvectorscale to create indexes on the embeddings
pgai Vectorizer to automatically create embeddings from the uploaded papers
Tech Stack
- PostgreSQL (TimescaleDB)
- Minio
- Remix
So little tech stack for a RAG app😊 We can make it smaller by storing blobs in Postgres but I don't like that idea.
Final Thoughts
This has been an interesting journey because the idea of running LLM directly in database is really weird at first. But after learning it for the last 2 days, I found it really interesting and could possibly revolutionize data mining pipelines for non-AI engineers. I imagine data analysts and researchers could easily get insights from database systems without major changes to existing systems.
One of my favorite experiences in this project is I learned how to write Postgres procedures and functions using PL/pgSQL. It was a really interesting journey especially to write LLM apps that used to be written using LangChain, Haystack, or LammaIndex now I implemented it using pure PL/pgSQL to build a conversational RAG.
Prize Categories
Vectorizer Vibe, All the Extensions
SOCIAL SHARE CARD GENERATOR