File size: 1,392 Bytes
f106024
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
## PDF Q&A Chatbot
This project is a PDF-based chatbot that allows users to upload a PDF, process its content, and ask questions related to the document using the Langchain library and OllamaLLM (gemma2:2b). The chatbot utilizes Streamlit for the user interface and Chroma for vector storage, enabling efficient document processing and retrieval-based question-answering.

## Features
* PDF Upload: Users can upload a PDF file which will be processed and split into smaller chunks for efficient retrieval.
* Persisted Vector Store: The PDF is processed once and stored in a vector database, allowing for fast responses to user queries without reprocessing the document.
* Q&A: Users can ask questions related to the uploaded PDF, and the chatbot will provide concise answers based on the document content.
* Fast PDF Processing: The use of vector storage ensures that once the PDF is processed, users can query it efficiently.
Tech Stack
* Langchain: For building the Q&A chatbot pipeline and vector-based document retrieval.
* OllamaLLM: The LLM used for generating answers to user queries.
* Chroma: Vector store for document embeddings, enabling fast document retrieval.

### Create and activate a virtual environment:
```bash
python3 -m venv ven
```
### Install the required libraries:
```bash
pip install -r requirements.txt
```

### Run the application:
```bash
streamlit run app.py
```