MinerU parses PDFs, images, and Office documents into structured, readable content for agents and applications. Version 4.0 combines three things in one workflow: document parsing, a local document library, and service tools (a Python SDK, a V1 API, stateless batch conversion, a multi-service Router, and a Gradio-based web UI). The command-line reader is also packaged as an agent skill, so a coding agent can parse a local document, continue reading by page or block, search documents it has already indexed, and cite stable locators of the form doc/tier/page/block in follow-up reads and answers. It is not a RAG framework, a vector database, or a chat-with-documents application.
Parsing runs in four quality tiers. Flash is the fastest and lowest quality, for discovery, preview, and indexing. Basic covers OCR and model-based parsing for private or lower-resource local work. Standard is the default for normal reading and complex documents, and Advanced trades speed for better results on difficult layouts. PDF and images support every tier. Office, OpenDocument, EPUB, OFD, HTML, MHTML, and CSV/TSV files are parsed locally at the Flash tier through DocVortex, and plain-text files are read directly. One document model renders to Markdown, HTML, LaTeX, DOCX, EPUB, PDF, Structured Content, and Content List V1/V2.
Model engines are configured independently: ONNX or PyTorch for the small models and llama.cpp, vLLM, or LMDeploy for the vision-language model, with the default install running ONNX on CPU and the VLM through llama.cpp in Vulkan mode. Memory needs range from about 2 GB for the ONNX Basic tier to 16 GB and a GPU with 8 GB or more of VRAM for Standard and Advanced with PyTorch.
Parsing is local by default. A document goes to the remote parsing service only when a command explicitly asks for it, a local failure never falls back to remote silently, and the agent guide instructs agents to ask before uploading sensitive material. Anonymous, locally aggregated telemetry on command usage and timing can be inspected, enabled, or disabled, and never includes document contents, file names, paths, queries, or keys.
Features
- Input formats: PDF (including scanned PDFs), PNG, JPEG, WebP, GIF, BMP, TIFF, JP2, DOC/DOCX, PPT/PPTX, XLS/XLSX, RTF, ODT/ODS/ODP, EPUB, OFD, HTML, MHTML, and CSV/TSV
- Four parsing tiers: Flash for preview and indexing, Basic for OCR and model-based parsing, Standard as the default for active reading, Advanced for difficult documents
- Rendering targets: Markdown, HTML, LaTeX, DOCX, EPUB, PDF, Structured Content, and Content List V1/V2 from one document model
- Agent reading: parse the first page window, continue by page or block from a returned next_request, and keep stable doc/tier/page/block locators for citations
- Local document library: discover files in watched folders, cache parse results, search indexed content, and retrieve page or block images for visual inspection
- Model engines: ONNX or PyTorch for small models and llama.cpp, vLLM, or LMDeploy for the vision-language model, selected to match CPU, Apple Silicon, NVIDIA, or other accelerators
- Service tools: Python SDK (DoclibClient), V1 API, stateless batch conversion, a multi-service Router, and a Gradio-based web UI
- Machine-readable control flow: JSON output with structured error codes, retryable flags, and suggested user actions for agents to branch on
- Privacy-first remote parsing: documents stay local unless remote parsing is explicitly requested, and remote configuration alone never authorizes an upload
- Telemetry controls: anonymous aggregated usage and diagnostic data with status, preview, enable, disable, and flush commands, excluding document contents and identifiers





