RAG-based system for querying pharmaceutical research papers using LangChain, ChromaDB, and Google Gemini.
## Overview PharmaQuery is an advanced Pharmaceutical Insight Retrieval System designed to help users gain meaningful insights from research papers and documents in the pharmaceutical domain. ## Demo https://github.com/user-attachments/assets/c12ee305-86fe-4f71-9219-57c7f438f291 ## Features - **Natural Language Querying**: Ask complex questions about the pharmaceutical industry and get concise, accurate answers. - **Custom Database**: Upload your own research documents to enhance the retrieval system's knowledge base. - **Similarity Search**: Retrieves the most relevant documents for your query using AI embeddings. - **Streamlit Interface**: User-friendly interface for queries and document uploads. ## Technologies Used - **Programming Language**: [Python 3.10+](https://www.python.org/downloads/release/python-31011/) - **Framework**: [LangChain](https://www.langchain.com/) - **Database**: [ChromaDB](https://www.trychroma.com/) - **Models**: - Embeddings: [Google Gemini API (embedding-001)](https://ai.google.dev/gemini-api/docs/embeddings) - Chat: [Google Gemini API (gemini-1.5-pro)](https://ai.google.dev/gemini-api/docs/models/gemini#gemini-1.5-pro) - **PDF Processing**: [PyPDFLoader](https://python.langchain.com/docs/integrations/document_loaders/pypdfloader/) - **Document Splitter**: [SentenceTransformersTokenTextSplitter](https://python.langchain.com/api_reference/text_splitters/sentence_transformers/langchain_text_splitters.sentence_transformers.SentenceTransformersTokenTextSplitter.html) ## Requirements 1. **Install Dependencies**: ```bash pip install -r requirements.txt ``` 2. **Run the Application**: ```bash streamlit run app.py ``` 3. **Use the Application**: - Paste your Google API Key in the sidebar. - Enter your query in the main interface. - Optionally, upload research papers in the sidebar to enhance the database. ## :mailbox: Connect With Me <img align="right" src="https://media.giphy.com/media/2HtWpp60NQ9CU/giphy.gif" alt="handshake gif" width="150"> <p align="left"> <a href="https://linkedin.com/in/codewithcharan" target="blank"><img align="center" src="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/linked-in-alt.svg" alt="codewithcharan" height="30" width="40" style="margin-right: 10px" /></a> <a href="https://instagram.com/joyboy._.ig" target="blank"><img align="center" src="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/instagram.svg" alt="__mr.__.unique" height="30" width="40" /></a> <a href="https://twitter.com/Joyboy_x_" target="blank"><img align="center" src="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/twitter.svg" alt="codewithcharan" height="30" width="40" style="margin-right: 10px" /></a> </p>