Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dhaneshdutta/pdftota
A RAG model to analyze and answer questions from a PDF, featuring both GTK and web frontends.
https://github.com/dhaneshdutta/pdftota
Last synced: about 2 months ago
JSON representation
A RAG model to analyze and answer questions from a PDF, featuring both GTK and web frontends.
- Host: GitHub
- URL: https://github.com/dhaneshdutta/pdftota
- Owner: dhaneshdutta
- Created: 2024-10-20T15:02:34.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-31T11:51:25.000Z (2 months ago)
- Last Synced: 2024-10-31T12:32:13.537Z (2 months ago)
- Language: Python
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PDFtota 📄🤖
**PDFtota** is a PDF-based voice assistant that allows users to upload a PDF, ask questions about its content, and receive responses from any local LLM. It also supports voice recording for input and text-to-speech (TTS) to speak out the AI's responses.
## Features ✨
- **📂 PDF Uploading:** Upload a PDF file and extract its content for analysis.
- **🎤 Voice Input:** Record your question via microphone and transcribe it into text.
- **💬 Text Input:** Ask questions directly through a chat-like interface.
- **⚡ AI-Powered Responses:** Get answers based on the PDF's content using a local LLM model.
- **🔊 Text-to-Speech (TTS):** Listen to the AI's responses via a button beside each answer.## Technologies Used 💻
- **Frontend:**
- HTML, CSS, JavaScript
- Bootstrap icons
- **Backend:**
- Python (Flask)
- SpeechRecognition for voice input
- PyMuPDF (fitz) for PDF text extraction
- gTTS for text-to-speech## Installation 🛠️
1. **Clone the Repository:**
```bash
git clone https://github.com/your-username/PDFtota.git
cd PDFtota
```2. **Install Dependencies:**
Ensure you have Python 3.x installed. Then, install the required packages:
```bash
pip install -r requirements.txt
```3. **Run the Flask Server:**
```bash
python app.py
```4. **Access the Application:**
Open your web browser and go to `http://127.0.0.1:5000/`.## Usage 🚀
- **📥 Upload a PDF:** Use the PDF icon next to the chat box to upload a PDF.
- **💬 Ask a Question:** Type your question or record your voice, then press the **send** button to get a response.
- **🔊 Speak the Response:** After a response is received, you will see a button next to the response bubble that allows you to hear the answer using TTS.---
Feel free to contribute, suggest improvements, or report issues! 😊