{"name":"OmniParse: Ingest, Parse, and Optimize Data for GenAI Frameworks","description":"OmniParse is a powerful platform designed to ingest, parse, and optimize any unstructured data, from documents to multimedia, into structured, actionable formats. It enhances compatibility with GenAI frameworks, preparing data for applications like RAG and fine-tuning. This tool simplifies the complex process of data preparation for AI, making it accessible and efficient.","github":"https://github.com/adithya-s-k/omniparse","url":"https://osrepos.com/repo/adithya-s-k-omniparse","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/adithya-s-k-omniparse","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/adithya-s-k-omniparse.md","json":"https://osrepos.com/repo/adithya-s-k-omniparse.json","topics":["Python","GenAI","Data Ingestion","OCR","Multimedia Parsing","Web Crawler","LLM","AI Frameworks"],"keywords":["Python","GenAI","Data Ingestion","OCR","Multimedia Parsing","Web Crawler","LLM","AI Frameworks"],"stars":null,"summary":"OmniParse is a powerful platform designed to ingest, parse, and optimize any unstructured data, from documents to multimedia, into structured, actionable formats. It enhances compatibility with GenAI frameworks, preparing data for applications like RAG and fine-tuning. This tool simplifies the complex process of data preparation for AI, making it accessible and efficient.","content":"## Introduction\n\nOmniParse is an innovative platform that streamlines the ingestion and parsing of diverse unstructured data, transforming it into structured, actionable formats optimized for Generative AI (GenAI) and Large Language Model (LLM) applications. Whether you're dealing with documents, tables, images, videos, audio files, or web pages, OmniParse prepares your data to be clean, structured, and ready for advanced AI applications such as Retrieval Augmented Generation (RAG) and fine-tuning.\n\nThis project aims to provide a comprehensive solution for data preparation, addressing the inherent challenges of processing data that comes in various shapes and sizes. By offering a unified ingestion and parsing platform, OmniParse ensures that your data is always in the best possible state for your AI workflows.\n\n## Installation\n\n**Important Note:** The OmniParse server currently operates exclusively on Linux-based systems due to specific dependencies and configurations. It is not compatible with Windows or macOS.\n\nTo get started with OmniParse, follow these steps:\n\n1.  **Clone the Repository:**\n\n    bash\ngit clone https://github.com/adithya-s-k/omniparse\ncd omniparse\n    \n\n2.  **Create a Virtual Environment:**\n\n    bash\nconda create -n omniparse-venv python=3.10\nconda activate omniparse-venv\n    \n\n3.  **Install Dependencies:**\n\n    bash\npoetry install\n# or\npip install -e .\n# or\npip install -r pyproject.toml\n    \n\n### Docker Deployment\n\nFor an easier deployment, OmniParse can be run using Docker:\n\n1.  **Pull the Docker Image:**\n\n    bash\ndocker pull savatar101/omniparse:0.1\n    \n\n2.  **Run the Docker Container:**\n\n    *   **With GPU support:**\n\n        bash\ndocker run --gpus all -p 8000:8000 savatar101/omniparse:0.1\n        \n\n    *   **Without GPU support:**\n\n        bash\ndocker run -p 8000:8000 savatar101/omniparse:0.1\n        \n\nAlternatively, you can build the Docker image locally:\n\n1.  **Build the Docker Image:**\n\n    bash\ndocker build -t omniparse .\n    \n\n2.  **Run the Docker Container:**\n\n    *   **With GPU support:**\n\n        bash\ndocker run --gpus all -p 8000:8000 omniparse\n        \n\n    *   **Without GPU support:**\n\n        bash\ndocker run -p 8000:8000 omniparse\n        \n\n## Examples\n\nOnce installed, you can run the OmniParse server and interact with its API.\n\n### Running the Server\n\nStart the server with desired model support:\n\nbash\npython server.py --host 0.0.0.0 --port 8000 --documents --media --web\n\n\n*   `--documents`: Loads models for parsing documents (Surya OCR, Florence-2).\n*   `--media`: Loads Whisper model for audio and video transcription.\n*   `--web`: Sets up a Selenium crawler for web parsing.\n\n### Downloading Models (Optional)\n\nYou can pre-download models before starting the server:\n\nbash\npython download.py --documents --media --web\n\n\n### Supported Data Types\n\nOmniParse supports a wide range of data types:\n\n| Type      | Supported Extensions                                |\n|-----------|-----------------------------------------------------|\n| Documents | .doc, .docx, .pdf, .ppt, .pptx                      |\n| Images    | .png, .jpg, .jpeg, .tiff, .bmp, .heic               |\n| Video     | .mp4, .mkv, .avi, .mov                              |\n| Audio     | .mp3, .wav, .aac                                    |\n| Web       | dynamic webpages, http://<anything>.com             |\n\n### API Endpoints\n\nOmniParse provides various API endpoints for different parsing tasks. Here are a few examples:\n\n*   **Parse Any Document:**\n\n    bash\ncurl -X POST -F \"file=@/path/to/document\" http://localhost:8000/parse_document\n    \n\n*   **Parse Image:**\n\n    bash\ncurl -X POST -F \"file=@/path/to/image.jpg\" http://localhost:8000/parse_media/image\n    \n\n*   **Process Image with Task (e.g., Captioning):**\n\n    bash\ncurl -X POST -F \"image=@/path/to/image.jpg\" -F \"task=Caption\" -F \"prompt=Optional prompt\" http://localhost:8000/parse_media/process_image\n    \n\n*   **Parse Website:**\n\n    bash\ncurl -X POST -H \"Content-Type: application/json\" -d '{\"url\": \"https://example.com\"}' http://localhost:8000/parse_website\n    \n\n## Why Use OmniParse?\n\nOmniParse stands out as a crucial tool for anyone working with GenAI applications due to its robust features and clear mission:\n\n*   **Local Processing:** Operates completely locally, eliminating reliance on external APIs and enhancing data privacy and security.\n*   **Resource Efficient:** Designed to fit within a T4 GPU, making it accessible for many setups.\n*   **Broad Compatibility:** Supports approximately 20 different file types, ensuring versatility across various data sources.\n*   **High-Quality Output:** Converts documents, multimedia, and web pages into structured, high-quality markdown, ideal for AI consumption.\n*   **Comprehensive Extraction:** Features include advanced table extraction, image extraction and captioning, audio and video transcription, and robust web page crawling capabilities.\n*   **Easy Deployment:** Can be easily deployed using Docker and Skypilot, and is friendly for Google Colab environments.\n*   **Interactive UI:** Comes with an interactive user interface powered by Gradio for ease of use.\n\nOmniParse addresses the significant challenge of unifying disparate data formats into a single, AI-ready structure, making it an invaluable asset for developing and deploying GenAI solutions.\n\n## Links\n\nFor more detailed information, contributions, or to explore the codebase, visit the official GitHub repository:\n\n*   [adithya-s-k/omniparse GitHub Repository](https://github.com/adithya-s-k/omniparse){:target=\"_blank\"}","metrics":{"detailViews":5,"githubClicks":11},"dates":{"published":null,"modified":"2026-04-07T16:14:44.000Z"}}