PDFQuery AI is an intelligent PDF conversation companion that allows users to upload PDF documents and interact with their content through a natural language interface, powered by Google's Gemini AI.
- 📄 PDF Upload & Processing (up to 16MB)
- 💬 Interactive Chat Interface with Suggested Prompts
- 🤖 AI-Powered Document Analysis using Gemini 1.5
- 📱 Responsive Design with Modern UI
- 🎨 Beautiful Gradient Styling
- ⚡ Real-time Response Generation
- 🔒 Secure File Handling
-
Frontend:
- HTML5
- CSS3 (Tailwind CSS)
- JavaScript (Vanilla)
- Font Awesome Icons
-
Backend:
- Flask (Python Web Framework)
- Google Generative AI (Gemini 1.5)
- PyPDF2 (PDF Processing)
- Tenacity (Retry Logic)
- Python 3.8+
- Google Gemini API Key
- Clone the repository:
git clone https://github.com/PSHACKERZ/PDFQuery-AI.git
cd PDFQuery-AI
- Install the required dependencies:
pip install -r requirements.txt
- Set up environment variables:
Create a
.env
file in the root directory and add:
GEMINI_API_KEY=your_api_key_here
- Run the application:
python app.py
- Open your browser and navigate to:
http://localhost:5000
- Open the application in your web browser
- Click "Upload PDF" to select your PDF file (max 16MB)
- Wait for the upload confirmation
- Start asking questions about the PDF content
- Use suggested prompts or type your own questions
- Secure file handling with automatic cleanup
- Session management
- File size restrictions
- Secure cookie configuration
- Input validation and sanitization
- Maximum file size: 16MB
- Supports only text-based PDF files
- Maximum content length: 10,000 characters
- Requires internet connection for AI processing
The application includes comprehensive error handling for:
- File size limitations
- File type validation
- PDF text extraction
- API communication
- Server errors
We welcome contributions to PDFQuery AI! Please read our Contributing Guidelines for details on:
- 🐛 Bug Reports and Feature Requests
- 🔀 Pull Request Process
- 📝 Code Style Guidelines
- 📜 Licensing Information
For major changes, please open an issue first to discuss what you would like to change.
For support or queries, contact us on Telegram: @PS_Hacker
Made with ❤️ by P.S. Hackerz