This project is a Retrieval-Augmented Generation (RAG) application that leverages Google's Gemini API for advanced natural language processing and document retrieval. The application is designed to answer questions by retrieving relevant documents from provided URLs and generating concise answers using the Gemini model.
- Document Retrieval: Uses Chroma as a vector store to retrieve relevant documents based on similarity.
- Question-Answering: Powered by Google's Gemini API to generate accurate and concise answers.
- Streamlit Integration: A user-friendly interface to interact with the application.
You can see a working demonstration of the project in the video below:
Click on the image to play the video.
- Clone the repository:
git clone https://github.com/yourusername/RAG_project.git cd RAG_project
- Create a virtual environment and activate it:
python -m venv env source env/bin/activate # On Windows use `env\Scripts\activate`
- Install the dependencies:
pip install -r requirements.txt
- Set up environment variables:
- Create a .env file in the root directory.
- Add your Google API key and any other required environment variables.
- Run the Streamlit application:
streamlit run app1.py
- Open your browser and navigate to the provided local URL to interact with the application.
- app1.py: Main application script.
- requirements.txt: List of required Python packages.
- .env: Environment variables file (not included in the repository).
- RAG_demonstration.mp4: Demonstration video.
This project utilizes data from Bentley's official website, including information on accessories, history, heritage, and hybrid models, to demonstrate the capabilities of a Retrieval-Augmented Generation (RAG) system built on Google's Gemini API.
- Streamlit: For building the web interface.
- LangChain: For handling document retrieval and processing.
- Chroma: As the vector store for document retrieval.
- Google's Gemini API: For generating answers to queries.