Download Latest Version v1.4.4 source code.zip (3.2 MB)
Home / v1.4.4
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-10-28 6.0 kB
v1.4.4 source code.tar.gz 2026-10-28 3.1 MB
v1.4.4 source code.zip 2026-10-28 3.2 MB
Totals: 3 Items   6.3 MB 0

MinerU compatibility

RAG-Anything now requires MinerU >=3.4.1,<4 on Python 3.10–3.13. MinerU 4 replaced the CLI used by this integration. The parser now rejects incompatible versions at initialization and includes the actual command output and repair advice in errors (#449).

On Python 3.14, install RAG-Anything with Docling and select parser="docling", or use Python 3.13 for MinerU. MinerU 3.x cannot be installed on Python 3.14, so this release excludes that dependency there. The configured parser is checked at initialization, including operations that insert pre-parsed content.

For existing Python 3.10–3.13 environments that picked up MinerU 4:

:::bash
pip install -U raganything
pip uninstall -y docvortex mineru-llama-cpp
mineru --version
pip check

The upgrade selects MinerU 3.x. Removing docvortex resolves a leftover pypdfium2 dependency conflict. A fresh virtual environment also avoids these leftovers. Keep mineru-magika in an upgraded environment: its installed files overlap with magika, so uninstalling it can delete the module MinerU 3.x needs. If that already happened, reinstall the installed magika version, for example pip install --force-reinstall --no-deps magika==1.0.3 for the validated environment.

Minimal Debian/Ubuntu images need the OpenCV system libraries:

:::bash
apt-get update && apt-get install -y --no-install-recommends libgl1 libglib2.0-0

Security: standalone Markdown-to-PDF conversion

The WeasyPrint backend of raganything.enhanced_markdown now loads only data: resources and local images, CSS and fonts within the Markdown file's directory and its subdirectories. Resolved paths and extensions are checked, including symlinks. Remote resources, files outside that directory and other attachment types are refused (#446).

This changes the standalone PDF conversion utility; document ingestion uses the direct Markdown parser. For string conversion, supply base_url to allow local resources. Pandoc has its own resource loading and is unchanged. Since method="auto" chooses Pandoc when installed, explicitly select method="weasyprint" for these restrictions.

If you converted untrusted Markdown with earlier WeasyPrint configurations, check generated PDFs before sharing them: referenced local files may have been embedded or attached.

Fixes

  • Ingestion: re-inserting an already-processed multimodal document returns to PROCESSED; README-style equation items retain their LaTeX formula and description; captions and footnotes reach model prompts as readable text (#446).
  • VLM queries: retrieved image paths preserve spaces, uppercase extensions and full filenames while retaining the existing image-path validation (#445).
  • Tables and equations: preserve every table cell's column; handle Word function names, limits, tracked deletions and hidden radical degrees correctly (#423, [#422], [#421], [#443]).
  • Text parsing: preserve Japanese kana joins without deleting ordinary word spaces; skip null caption items; give regex-fallback entities useful names (#441, [#444], [#416]).
  • Batch processing: start per-file timeout accounting when the worker starts, report timeouts as failures, and reparse a file if its output directory was removed (#434, [#431]).
  • Office conversion: isolate generated PDFs by source path so same-stem documents cannot overwrite one another (#437).
  • Parse cache: include result-affecting Docling options, PaddleOCR cls and MinerU vlm_url; the URL is hashed in cache metadata (#432, [#446]).
  • Configuration: read environment defaults when each RAGAnythingConfig is created (#428).
  • Media and reliability: close MoviePy readers after failed audio extraction, discard empty Whisper segments, and ignore outcomes from older circuit-breaker recovery cycles (#427, [#438], [#425]).
  • Markdown-to-PDF: honor configured CSS files, preserve relative images, and import successfully when optional WeasyPrint system libraries are missing (#442, [#426], [#449]).
  • Packaging: include reproduction scripts and their example configuration in the source distribution, allowing the shipped vision-example tests to run from the sdist (#451).

The image-section lookup also avoids repeatedly scanning the same content (#429).

Upgrade notes

  • RAGAnythingConfig fields should be read from an instance, rather than from the class.
  • Office PDFs are now under <output_dir>/<stem>_<path-hash>/<stem>.pdf.
  • A missing batch output directory invalidates its incremental manifest entry and triggers a reparse.
  • Changes to newly recognized parser options can invalidate parse caches once.
  • Supported security fixes apply to the 1.4.x line; lightrag-hku<1.5 remains pinned.
  • The PyAV <19 compatibility pin remains in the audio/video extras.

Validation

Release finalization on Python 3.12: 1115 passed, 2 skipped, 1 expected failure, both from the checkout and from the newly built and extracted source distribution. Pinned Ruff check/format, twine check --strict, and check-wheel-contents pass. Wheel source files match the validated checkout. GitHub CI covers Python 3.10, 3.11 and 3.12.

The preceding release validation also exercised fresh installs and upgrades across Python 3.10–3.14, MinerU 3/4 diagnostics, clean Linux containers, real MinerU 3.4.5 PDF parsing, Docling, model-backed ingestion and queries, repeated ingestion, and WeasyPrint resource restrictions. The final changes affect installation instructions, the corresponding diagnostic text and source-distribution contents; they do not change those model pipelines.

Known limitation: MinerU chart blocks still use the generic text processor, so their image content is not sent to the vision model. This existing issue is scheduled for a separate follow-up. Performance PRs [#448] and [#450] are outside this release.

Full changelog

Source: README.md, updated 2026-10-28