Advanced_RAG is a command-line application leveraging Retrieval-Augmented Generation (RAG) using Large Language Models (LLMs) and LangChain. This application allows users to store and retrieve projects without the need for PDFs, provides enhanced visual interfaces, and features user-specific memory for human-like interactions.
Welcome to Advanced_RAG! This project aims to enhance productivity by integrating Retrieval-Augmented Generation (RAG) technology. It uses LLMs to enable advanced project storage, retrieval, and user interaction capabilities.
- Retrieval-Augmented Generation using LLMs and LangChain.
- Project storage and retrieval without PDFs.
- Enhanced visual interfaces.
- User-specific memory for contextual and follow-up questions.
- Support for both GPT-4o and Gemini-1.5pro (open-source).
Ensure you have Python installed. You can download it from python.org.
- Clone the repository:
git clone https://github.com/your-username/Advanced_RAG.git cd Advanced_RAG
- Install the dependencies:
pip install -r requirements.txt
- Create a
.env
file in the root directory with the following keys:GOOGLE_API_KEY="" LANGCHAIN_API_KEY="" OPENAI_API_KEY=""
- To switch to the free version using Gemini-1.5pro, uncomment lines 82 and 83 and comment out lines 84 and 85 in the code.
Running the Application
- Open your terminal and navigate to the project directory.
- Run the following command:
typer v3.py run
- Follow the on-screen instructions to interact with the application.
Adjust the configuration settings in your .env
file to personalize your API keys and choose your preferred LLM.
Here's a glimpse of how the application looks in action: As you can see, it can answer questions along with follow-up questions using its memory capabilities. It also stores projects so you can load a project later and ask questions even without the PDFs.
We welcome contributions from the community! Please read the Contributing Guidelines for more information on how to get involved.
This project is licensed under the Apache License.