From: openbmb <huggingface.co/openbmb>Newsgroups: alt.freeweights.minicpmSubject:

EVisRAG-7B

Date: 2026-11-15Commit: a3a1f46Signed: 2DC28CC7B26A283B ✓

Model with 8.3B parameters. Safetensors weights, 16.6 GB in all. Published by openbmb under Apache-2.0.

8.3B params16.6GBEVisRAG-7Bsafetensorspermissive
FactsParams8.3BSize16.6 GBFormatssafetensorsTasknot taggedLicenseApache-2.0From sourcepermissive
$ fw get openbmb/EVisRAG-7B
# manifest sha256 7b7b44932ebe… · 16.6 GB · 18 files
$ fw verify ./EVisRAG-7B openbmb/EVisRAG-7B
From sourceHosted (signed)openbmb/EVisRAG-7BLast check: 2026-11-15 03:31 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Fine-tune of Qwen2.5-VL-7B-Instruct.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
16.6 GB
Weights
16.6 GB (safetensors)
Parameters
8.3B
Formats
safetensors
Task
not tagged
License
Apache-2.0 (permissive)
Files
18, each with a sha256
Publisher
openbmb
Added
2026-11-15
Section
alt.freeweights.minicpm
Lineage

Original release from the publisher.

Base model: Qwen/Qwen2.5-VL-7B-Instruct

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:31 UTCpassed

Model card

From the publisher at commit a3a1f46. Shown as plain text with links; images open at the publisher.

VisRAG 2.0: Evidence-Guided Multi-Image Reasoning in Visual Retrieval-Augmented Generation#

Github arXiv Hugging Face

β€’ πŸ“– Introduction β€’ πŸŽ‰ News β€’ βš™οΈ Setup β€’ ⚑️ Training

β€’ πŸ“ƒ Evaluation β€’ πŸ”§ Usage β€’ πŸ“„ Lisense β€’ πŸ“§ Contact β€’

πŸ“– Introduction#

EVisRAG (VisRAG 2.0) is an evidence-guided Vision Retrieval-augmented Generation framework that equips VLMs for multi-image questions by first linguistically observing retrieved images to collect per-image evidence, then reasoning over those cues to answer. EVisRAG trains with Reward-Scoped GRPO, applying fine-grained token-level rewards to jointly optimize visual perception and reasoning.

Image: image

πŸŽ‰ News#

  • 20251207: Updated the EVisRAG-7B model, added natural images from the visual_haystacks dataset to the training corpus, expanding the model’s applicability across broader real-world scenarios.
  • 20251001: Released EVisRAG (VisRAG 2.0), an end-to-end Vision-Language Model. Released our Paper on arXiv. Released our Model on Hugging Face. Released our Code on GitHub

✨ EVisRAG Pipeline#

EVisRAG is an end-to-end framework which equips VLMs with precise visual perception during reasoning in multi-image scenarios. We trained and released VLRMs with EVisRAG built on Qwen2.5-VL-7B-Instruct, and Qwen2.5-VL-3B-Instruct.

βš™οΈ Setup#

git clone https://github.com/OpenBMB/VisRAG.git
conda create --name EVisRAG python==3.10
conda activate EVisRAG
cd EVisRAG
pip install -r EVisRAG_requirements.txt

⚑️ Training#

Stage1: SFT (based on LLaMA-Factory)

git clone https://github.com/hiyouga/LLaMA-Factory.git 
bash evisrag_scripts/full_sft.sh

Stage2: RS-GRPO (based on Easy-R1)

bash evisrag_scripts/run_rsgrpo.sh

Notes:

  1. The training data is available on Hugging Face under EVisRAG-Train, which is referenced at the beginning of this page.
  2. We adopt a two-stage training strategy. In the first stage, please clone LLaMA-Factory and update the model path in the full_sft.sh script. In the second stage, we built our customized algorithm RS-GRPO based on Easy-R1, specifically designed for EVisRAG, whose implementation can be found in src/RS-GRPO.

πŸ“ƒ Evaluation#

bash evisrag_scripts/predict.sh
bash evisrag_scripts/eval.sh 

Notes:

  1. The test data is available on Hugging Face under EVisRAG-Test-xxx, as referenced at the beginning of this page.
  2. To run the evaluation, first execute the predict.sh script. The model outputs will be saved in the preds directory. Then, use the eval.sh script to evaluate the predictions. The metrics EM, Accuracy, and F1 will be reported directly.

πŸ”§ Usage#

Model on Hugging Face: https://huggingface.co/openbmb/EVisRAG-7B

from transformers import AutoProcessor
from vllm import LLM, SamplingParams
from qwen_vl_utils import process_vision_info

def evidence_promot_grpo(query):
    return f"""You are an AI Visual QA assistant. I will provide you with a question and several images. Please follow the four steps below:

Step 1: Observe the Images
First, analyze the question and consider what types of images may contain relevant information. Then, examine each image one by one, paying special attention to aspects related to the question. Identify whether each image contains any potentially relevant information.
Wrap your observations within <observe></observe> tags.

Step 2: Record Evidences from Images
After reviewing all images, record the evidence you find for each image within <evidence></evidence> tags.
If you are certain that an image contains no relevant information, record it as: [i]: no relevant information(where i denotes the index of the image).
If an image contains relevant evidence, record it as: [j]: [the evidence you find for the question](where j is the index of the image).

Step 3: Reason Based on the Question and Evidences
Based on the recorded evidences, reason about the answer to the question.
Include your step-by-step reasoning within <think></think> tags.

Step 4: Answer the Question
Provide your final answer based only on the evidences you found in the images.
Wrap your answer within <answer></answer> tags.
Avoid adding unnecessary contents in your final answer, like if the question is a yes/no question, simply answer "yes" or "no".
If none of the images contain sufficient information to answer the question, respond with <answer>insufficient to answer</answer>.

Formatting Requirements:
Use the exact tags <observe>, <evidence>, <think>, and <answer> for structured output.
It is possible that none, one, or several images contain relevant evidence.
If you find no evidence or little evidence, and insufficient to help you answer the question, follow the instructions above for insufficient information.

Question and images are provided below. Please follow the steps as instructed.
Question: {query}
"""

model_path = "xxx"
processor = AutoProcessor.from_pretrained(model_path, trust_remote_code=True, padding_side='left')

imgs, query = ["imgpath1", "imgpath2", ..., "imgpathX"], "What xxx?"
input_prompt = evidence_promot_grpo(query)

content = [{"type": "text", "text": input_prompt}]
for imgP in imgs:
    content.append({
        "type": "image",
        "image": imgP
    })
msg = [{
          "role": "user",
          "content": content,
      }]

llm = LLM(
    model=model_path,
    tensor_parallel_size=1,
    dtype="bfloat16",
    limit_mm_per_prompt={"image":5, "video":0},
)

sampling_params = SamplingParams(
    temperature=0.1,
    repetition_penalty=1.05,
    max_tokens=2048,
)

prompt = processor.apply_chat_template(
    msg,
    tokenize=False,
    add_generation_prompt=True,
)

image_inputs, _ = process_vision_info(msg)

msg_input = [{
    "prompt": prompt,
    "multi_modal_data": {"image": image_inputs},
}]

output_texts = llm.generate(msg_input,
    sampling_params=sampling_params,
)

print(output_texts[0].outputs[0].text)

πŸ“„ License#

πŸ“§ Contact#

EVisRAG#

  • Yubo Sun: syb2000417@stu.pku.edu.cn
  • Chunyi Peng: hm.cypeng@gmail.com

Files

18 files Β· 16.6 GBWeights 16.6 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 18 files with their sha256
FileSizesha256
.gitattributes1.62 KBae32f1d41f827f3973be120275cc1bc1dc2903fc661084f0f5f1e6a269968091
README.md7.61 KB2bcc3703762d70fa50f93418b5c1da7cf29a623f37b2061d101590f9fd326dea
added_tokens.json605 B58b54bbe36fc752f79a24a271ef66a0a0830054b4dfad94bde757d851968060b
chat_template.json1.05 KB94174d7176c52a7192f96fc34eb2cf23c7c2059d63cdbfadca1586ba89731fb7
config.json1.49 KB341e4d2cd3b85bacb873da1e9d027049cb2d609354ceb7cc7af4e042023f2350
evisrag.png1.98 MB235ac213de87b1bfcb2669a9ddf78ddb5c139bbd67d220da546d9045091dea81
generation_config.json143 B712d78593f2bcaa96ca1d1005e4d6739b149f5b4a54ee24d645452f8f585a208
merges.txt1.67 MB8831e4f1a044471340f7c0a83d7bd71306a5b867e95fd870f74d0c5308a904d5
model-00001-of-00004.safetensors5.00 GBe45c31e91a8e273940a44c5cc3ab2ca7bd282a5c981af4ce4778da035799fc14
model-00002-of-00004.safetensors4.86 GB4a6f335798345a2331ade72deaec72ab8067508d8784495d6b10a21935a0f41a
model-00003-of-00004.safetensors4.95 GBc357dcc43f1aa49d9df94d663cbfde58b05be099b0c79e3fbd64eb229bd1f14d
model-00004-of-00004.safetensors1.77 GB2cd8d888d5b18c9d72cf3bf8f0f9a9f1a9bbdaccbaa8b60effa7ded58136f623
model.safetensors.index.json57.6 KBfc9fa2a17de758b2624168b5af9ec0ad638999a44c7da68207893e20b620cd0a
preprocessor_config.json761 B5c4c2108b99eec6f5dbf6f983e419c05aeb8ecbdc263ca93459de70b7701982f
special_tokens_map.json613 B76862e765266b85aa9459767e33cbaf13970f327a0e88d1c65846c2ddd3a1ecd
tokenizer.json11.4 MB9c5ae00e602b8860cbd784ba82a8aa14e8feecec692e7076590d014d7b7fdafa
tokenizer_config.json5.82 KB8e750a0d39b9db8cf4055c19f7570d98f086d62d0cd4cf9285f4f86575e19ddb
vocab.json2.78 MBca10d7e9fb3ed18575dd1e277a2579c16d108e32f27439684afa0e10b1440910
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
a3a1f46475 pinned now2026-11-15 03:31 UTC18 files Β· 16.6 GB

Use it

$ fw get openbmb/EVisRAG-7B
# manifest sha256 7b7b44932ebe… · 16.6 GB · 18 files
$ fw verify ./EVisRAG-7B openbmb/EVisRAG-7B
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/openbmb/EVisRAG-7B.json --dir ./EVisRAG-7B $ python3 fw.py verify ./EVisRAG-7B ./openbmb__EVisRAG-7B.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download openbmb/EVisRAG-7B --revision a3a1f46475270a5b1faff944c8eccf4f145d389e --local-dir ./EVisRAG-7B

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
2bcc3703762d70fa50f93418b5c1da7cf29a623f37b2061d101590f9fd326dea
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: openbmb <huggingface.co/openbmb>Newsgroups: alt.freeweights.minicpmSubject: EVisRAG-7BDate: 2026-11-15Commit: a3a1f46Signed: 2DC28CC7B26A283B ✓
Upstream
openbmb/EVisRAG-7B
Pinned commit
a3a1f46475270a5b1faff944c8eccf4f145d389e
Manifest
EVisRAG-7B.json Β· .minisig
Manifest sha256
7b7b44932ebe5ea09e51ef901e8649c595a664a357608aead9ba22be79e7bb0d
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:31 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/openbmb/EVisRAG-7B.json $ curl -O https://freeweights.allternit.com/manifests/openbmb/EVisRAG-7B.json.minisig $ minisign -Vm EVisRAG-7B.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

Qwen/Qwen2.5-VL-7B-Instruct Β· this model is a finetune of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download openbmb/EVisRAG-7B
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. EVisRAG-7B.json. Provenance. Takedown history: none.
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Explore-GGUF
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Report
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Report-GGUF
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-0.5B-gguf
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-1B-gguf
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-3B-gguf