gradio PyPDF2 pandas google-generativeai markdown-pdf pillow pdf2image opencv-python-headless img2pdf numpy reportlab