Vibeleaderboard
Index / tool
Visit github.com
Category
AI Tools
Rank
No. 1307Tools index

Previous survey · No. 1313 ·

Pricing
Open Source
Type
TOOL
Builder
openbmb
GitHub
979 stars
Date

About

Parsing-free RAG pipeline backed by vision-language models — index PDFs and slides as images instead of text.

What it does

VisRAG answers questions across visually rich documents. Its current EVisRAG workflow inspects each retrieved image, records image-specific evidence, reasons over those observations, and returns an answer or declares that the evidence is insufficient. A separate document model handles retrieval, while compatible vision-language models handle generation.

Why it's ranked here

The project tackles a real weakness in document question answering: text extraction can discard layout and other visual information. Its strongest case is the explicit evidence stage for multi-image reasoning, backed by released models, training procedures, datasets, evaluation scripts, and several generation modes. The setup remains research-oriented and operationally demanding.

What's good

The evidence format makes the reasoning pipeline inspectable. Each image receives a relevant finding or an explicit no-information marker before answer generation. Users can evaluate exact match, accuracy, and F1, including separate treatment of answerable and insufficient-evidence cases. Retrieval training supports distributed contrastive learning, shared negatives, gradient caching, and custom datasets.

Tradeoffs

Installation pins an older CUDA toolkit and several exact package versions, then requires editable installation of both the main package and a modified vision library. Training spans external frameworks and manually prepared datasets. The supplied prediction script contains placeholder model locations and fixes visible GPUs in code. Generation still depends on substantial vision-language models and local orchestration.

How to use it well

Choose VisRAG for research or controlled document question-answering systems where charts, slides, page layout, and evidence across several images matter. Start with the released retriever and vision-language models, then benchmark against your own documents and insufficient-evidence cases. It does not provide a hosted application service, general document management, or a lightweight turnkey deployment surface.

Technical notes+

setup.py packages src/openmatch as openmatch-thunlp, requires Python 3.7 or newer, and declares Transformers, Datasets, and SentencePiece; requirements.txt adds pinned Torch, Transformers, CUDA-oriented DeepSpeed, PyMuPDF, Pillow, OpenAI, and evaluation dependencies. src/evisrag/predict.py is an argparse-driven batch inference script using vLLM, Qwen vision utilities, bfloat16, local JSONL data, and placeholder model paths. src/evisrag/prompt.py defines tagged observation, evidence, reasoning, and answer prompts. src/evisrag/eval.py computes exact match, subset accuracy, F1, and answer-sufficiency splits. src/openmatch/loss.py implements local and distributed contrastive losses plus ranking losses. src/rsgrpo/setup.py separately packages the customized reinforcement-learning framework as verl under Apache 2.0.

Observed

Primary language
Python
Main package
Setuptools package named openmatch-thunlp, installed from the repository in editable mode
Install surface
Conda environment, pip requirements, two editable package installs, and an NVIDIA CUDA 11.8 toolkit
Interfaces
Python library modules and command-line scripts for training, prediction, generation, retrieval, and evaluation
Model ecosystem
Released retriever and generation models are linked through Hugging Face
Licensing metadata
The main package classifier declares MIT; the bundled RS-GRPO package declares Apache 2.0

Read from README.md, setup.py, requirements.txt, src/evisrag/eval.py, src/rsgrpo/setup.py, src/evisrag/prompt.py, src/openmatch/loss.py, src/evisrag/predict.py, src/openmatch/utils.py, src/openmatch/arguments.py, src/openmatch/generation_utils.py, src/rsgrpo/verl/__init__.py, src/openmatch/dataset/__init__.py, src/openmatch/trainer/__init__.py.

What it can do

  • Index PDF documents as images

    PDF filesImage-based document index

  • Index presentation slides as images

    Slide files (PPT, PPTX)Image-based slide index

  • Perform visual document retrieval

    User query and indexed document imagesRelevant document sections or pages

  • Generate answers from visual content

    User questions and retrieved document imagesText-based answers derived from visual analysis

  • Process documents without text parsing

    Documents with complex layouts, charts, or diagramsSearchable visual content understanding

  • Extract information from visual elements

    Images containing charts, graphs, or infographicsStructured information and insights

Tags

ragvlmretrievaldocumentmultimodal

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.