A FastAPI-based document processing service that extracts text from PDF files and enables semantic search capabilities.
- PDF text extraction and processing
- Semantic search with vector embeddings
- RESTful API with automatic documentation
- Rate limiting and security controls
- Persistent vector storage
-
Setup Environment
cp .env.example .env # Edit .env with your OpenAI API key
-
Run with Docker
docker-compose up --build
-
Access API
- Service: http://localhost:8000
- Documentation: http://localhost:8000/docs
POST /api/upload
- Upload PDF documentsPOST /api/ask
- Query document contentGET /api/status
- System statusGET /health
- Health check
Configure via environment variables in .env
:
OPENAI_API_KEY
- Required for embeddingsMAX_FILE_SIZE
- Maximum file size (default: 50MB)MAX_PDF_PAGES
- Maximum pages per document (default: 500)
MIT License