Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/madhanmohanreddy2301/gemini-rag-application

This RAG Streamlit app lets users chat with PDF documents using Gemini and Google's generative AI. Upload PDFs, process text, and get intelligent answers to your questions.
https://github.com/madhanmohanreddy2301/gemini-rag-application

ai gen-ai-initiatives generative-ai ml rag rag-implementation

Last synced: 2 days ago
JSON representation

This RAG Streamlit app lets users chat with PDF documents using Gemini and Google's generative AI. Upload PDFs, process text, and get intelligent answers to your questions.

Awesome Lists containing this project

README

        

# Chat with PDF Using Gemini 💁

This Streamlit application allows users to interact with PDF documents using conversational AI powered by Gemini and Google's generative AI.

## Features

- **Upload PDF Files**: Users can upload multiple PDF documents.
- **Process PDFs**: Extracts text from uploaded PDFs and creates text chunks for indexing.
- **Search and Chat**: Users can ask questions related to the PDF content and receive answers using a combination of FAISS vector search and generative AI.

## Requirements

- Python 3.7+
- Libraries specified in `requirements.txt`
- Google API Key configured via environment variable `GOOGLE_API_KEY`

## Installation and Setup

1. **Clone the repository**:

```bash
git clone
cd
```

2. **Install dependencies**:

```bash
pip install -r requirements.txt
```

3. **Set up environment variables**:

Create a `.env` file in the root directory and add your Google API Key:

```makefile
GOOGLE_API_KEY=
```

## Usage

1. **Run the application**:

```bash
streamlit run app.py
```

2. **Interact with the application**:

- Upload PDF files using the sidebar.
- Click "Submit & Process" to extract text from PDFs and create vector embeddings.
- Enter a question related to the PDF content in the text input field.
- Click "Ask" to get an answer generated by the Gemini conversational AI model.

## About

This project demonstrates the integration of PDF processing, semantic search using FAISS, and conversational AI with Google's generative models through the Gemini API. It's designed to provide an intuitive interface for querying and retrieving information from uploaded PDF documents.

## Credits

- **Streamlit**: Frontend framework for building interactive web applications.
- **PyPDF2**: Library for reading and manipulating PDF files in Python.
- **langchain**: Python library for natural language processing tasks.
- **Google Generative AI**: API used for generating AI responses based on context and questions.