Skip to content

Guide · Open source

How to use RAG-Anything: install and query mixed documents

Updated · written with AI from the project's own documentation and checked against our catalogue data

RAG-Anything is an open-source Python framework for asking questions about documents that mix text, images, tables and mathematical equations. It is built on the LightRAG project and aims to handle these content types in one pipeline instead of separate tools. This guide explains what it does, how to install it from PyPI, and how the parse, analyze, build-graph and query workflow fits together.

RAG-AnythingHKUDS/RAG-Anything · ★ 24.4k · MIT

Quick start

  1. 1Check Python 3.10. Confirm you have Python 3.10 available, since the README lists it as the prerequisite.
  2. 2Install the package. Run pip install raganything in your project environment.
  3. 3Pick a parsing path. Use the MinerU-based parsing workflow for raw documents, or insert pre-parsed content lists if you already have them.
  4. 4Process your documents. Parse the file, analyze its text, images, tables and equations, and build the knowledge graph.
  5. 5Query the result. Ask natural-language questions and use VLM-Enhanced Query when images matter.

What RAG-Anything does

RAG-Anything is designed for documents where information is spread across text, figures, tables and formulas. Traditional text-focused RAG systems struggle with non-textual elements, and RAG-Anything aims to process and query all of these in a single integrated framework.

The README describes four stages: parsing documents, analyzing their content, building a knowledge graph, and then querying the result.

  • Universal document support: PDFs, Office documents, images and other formats, according to the README.
  • Specialized processors for images, tables and mathematical equations.
  • A multimodal knowledge graph with automatic entity extraction and cross-modal relationships.
  • Hybrid retrieval across textual and multimodal content.

Install RAG-Anything from PyPI

RAG-Anything is a Python package. The README lists Python 3.10 as the prerequisite and gives the following install command for PyPI.

Because it is a framework you import into your own code, install it inside the Python environment of the project you are building.

  • Prerequisite: Python 3.10.
  • Package name on PyPI: raganything.
pip install raganything

Understand the parsing modes

The README describes adaptive processing modes: a flexible MinerU-based parsing workflow, or direct multimodal content injection. It also supports direct insertion of pre-parsed content lists from external sources, which bypasses document parsing entirely.

Pick the path that matches your inputs. If you already have structured content from another parser, the content list insertion option avoids re-parsing the file.

  • MinerU-based parsing: parses the source document for you.
  • Direct content list insertion: feed in content you have already parsed.

Query your documents

Once content is processed, RAG-Anything answers questions through a hybrid retrieval layer that searches both text and multimodal content. The README also mentions a VLM-Enhanced Query mode that passes images in documents to a vision-language model together with textual context.

Because the project is built on LightRAG, LightRAG concepts such as the knowledge graph carry over to how the content is organized and searched.

  • Ask questions in natural language across text, figures, tables and equations.
  • Use VLM-Enhanced Query when documents include images you want analyzed.

Check the scope before you commit

The README excerpt does not cover full production deployment, so plan your own testing, monitoring and hosting. It also does not document a ready-made application; the project presents itself as a framework to integrate into your code.

If your documents are plain text, a simpler text search or RAG setup will be easier to maintain than the multimodal pipeline.

  • Not a finished end-user app.
  • Production deployment details are outside the README excerpt.

What people use it for

  • Question answering over technical reports that include tables and charts.
  • Searching academic papers with equations and diagrams.
  • Building internal knowledge tools over financial or enterprise reports with mixed content.
  • Adding multimodal retrieval to an existing LightRAG project.

Frequently asked questions

Is RAG-Anything free to use?

RAG-Anything is released under the MIT licence, as stated on its project page. Check the repository's licence file for full terms before using it in a commercial product.

What do I need to install RAG-Anything?

The README lists Python 3.10 as the prerequisite. Install the package with pip install raganything from PyPI.

Does RAG-Anything work with PDFs?

The README says it supports PDFs and Office documents, along with images and other formats. Its document parsing is described as MinerU-based or as direct content list insertion.

How is RAG-Anything different from LightRAG?

RAG-Anything is built on LightRAG and adds multimodal handling for images, tables and equations in one pipeline. LightRAG is the text-focused base project it extends.

What are alternatives to RAG-Anything?

Projects often compared with it include LightRAG, LlamaIndex and RAGFlow. Compare them on the content types you need and how much integration work each requires.

Should I use RAG-Anything for plain text search?

Probably not. The README does not justify the added complexity of the multimodal pipeline for simple text-only documents.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

RAG-Anything suits Python developers building question answering over PDFs or Office files with figures, tables and equations, especially if they already use LightRAG. It is not a ready-made app, and it is a poor fit for plain text search or for teams who need a documented production deployment.

Install options & downloads