Welcome to Chainy, a cool personal chatbot built using Retrieval-Augmented Generation (RAG)! Chainy is here to answer all your non-personal questions about me with a mix of retrieval and generative magic. It's main home is here.
-
Intelligent Agentic RAG: Instead of retrieving on every query, Chainy now uses a tool-calling agent to intelligently decide when to search its knowledge base. For general conversation, it responds directly, making it more efficient and conversational.
-
Optimized & Persistent: Chainy is built for speed. It uses a persistent FAISS vector store and multiple caching layers for embeddings, ensuring that heavy data processing only happens once. Subsequent startups are nearly instant.
-
Rate-Limit Aware Retrieval: The retrieval strategy uses an optimized
ParentDocumentRetrieverwith smaller chunk sizes to minimize the number of tokens sent to the LLM, respecting API rate limits and improving responsiveness. -
Integration with Personal Portfolio: Chainy also lives in a chat pop-up in my portfolio page, or you could immerse yourself with it here
Chainy is built using the following technologies:
-
Groq API - LLM Inferences
-
🦜🔗 LangChain - Agentic RAG Logic & Application Framework
-
HuggingFace Sentence Transformers - Document Embeddings
-
FAISS - Persistent Vector Store
-
Chainlit - Frontend
-
Persistent Document Store: Implementing a fully persistent
docstore(e.g., usingLocalFileStore) for the parent documents to complement the persistent FAISS index. This would make the in-memory footprint even smaller and improve scalability. -
Expanded Knowledge Base: Adding more documents and sources to broaden the range of topics Chainy can discuss.
