Skip to main content

🔬 SciFigBench

Evaluating VLMs' Understanding of Scientific Method Figures.

MIT License Python 3.10+ Paper on arXiv SciFigBench Conference Poster Hugging Face Dataset PyPI

News · Overview · Quick Start · License & Citation


🔥 News

  • [Oct. 20, 2026] 🎉 SciFigBench is officially released! Following a second round of human verification, we further strengthened the benchmark's reliability and revised approximately 5.8% of its reference answers.
  • [Aug. 21, 2026] 🎉 Our paper, SciFigBench: A Benchmark for Scientific Method Figure Understanding, was accepted to EMNLP 2026 Main Conference!
  • [May 26, 2026] 📝 We submitted SciFigBench to the May 2026 ARR cycle, targeting EMNLP 2026.

👋 Overview

SciFigBench is a diagnostic benchmark for evaluating Vision-Language Models (VLMs) on scientific method figure understanding. It consists of 4,352 real-world scientific method figures and 40,670 QA pairs, organized into five fine-grained tasks across three core capabilities: Dense Content Perception, Visual Relation Comprehension, and Information-Flow Tracing.

By separately evaluating text recognition, arrow-induced structural relations, and information-flow reasoning, SciFigBench helps identify where VLMs struggle to understand scientific method figures.

SciFigBench Benchmark Overview

Five diagnostic tasks across three complementary capabilities.

Task Evaluation Focus QA Pairs Metric
Dense Content Perception Reading text across highlighted regions 8,367 Position-wise ANLS
Edge-Level Verification Verifying directed edges between nodes 8,665 Accuracy
Node-Level Degree Counting Counting incoming or outgoing edges 7,848 Accuracy
Path-Level Reachability Reasoning about directed paths 8,144 Accuracy
Information-Flow Tracing Tracing direct neighbors through text and connections 7,646 Set-based ANLS*
Total 40,670

SciFigBench also provides human-verified content and structural annotations for further research. The full dataset is available on Hugging Face.

Note on reported results. The paper reports results on an earlier QA version. Retrospective evaluations show modest score changes, with relative model performance trends and main conclusions remaining largely consistent.

🚀 Quick Start

🤖 Using a Coding Agent? Follow AGENTS.md to quickly set up SciFigBench and evaluate your VLM with tools like Codex, Claude Code, or Cursor.

1. Installation

Install SciFigBench from source:

git clone https://github.com/LeNcyer/SciFigBench.git
cd SciFigBench
pip install .

Install via PyPI:

pip install scifigbench

2. One-call Evaluation

Provide your own callable VLM (model(prompt, image) -> str). SciFigBench automatically handles data downloading, input rendering, model inference, and evaluation.

from scifigbench import SciFigBench

model = MyVLM(...)  # Your callable VLM

# Quick Test (default): 5 QA per task, up to 25 calls.
# Partial scores only, NOT official benchmark results.
result = SciFigBench(model=model)
print(result.scores)

# Full Evaluation: all 40,670 QA pairs.
# WARNING: May incur substantial API costs.
result = SciFigBench(
    model=model,
    max_samples_per_task=None,
    confirm_full_run=True,
)
print(result.scores)

For advanced configuration and resuming evaluations, see AGENTS.md.

3. Download the Dataset

The benchmark dataset is hosted on Hugging Face. Download the QA pairs and images from the latest public version:

from huggingface_hub import snapshot_download

snapshot_download(
    repo_id="LeNcyer/SciFigBench",
    repo_type="dataset",
    revision="main",  # Latest public version; this branch can change.
    local_dir="./data",
    allow_patterns=["QA/*", "images/*.jpg", "checksums.sha256"],
)

The toolkit also supports dataset downloads:

scifigbench download --repo-id LeNcyer/SciFigBench --revision main --data-root ./data

4. Run Your VLM

Use your preferred VLM to answer the benchmark questions. SciFigBench provides the official prompts and a rendering utility for generating query-specific visual inputs.

import json
from scifigbench import prepare_model_payload

with open("data/QA/qa_edge_level_verification.jsonl", encoding="utf-8") as f:
    qa = json.loads(next(f))

payload = prepare_model_payload(qa, data_root="./data")

# Pass payload["prompt"] and payload["image"] to your VLM.

Save your model's raw responses as a JSONL file, with one prediction per line:

{"qid": "cf32f75bc3d9", "response": "true"}
{"qid": "0aaf24e73a36", "response": "1"}

Expected answer text by task:

Task Model output format
Dense Content Perception JSON list of strings, in query color order
Edge-Level Verification true or false
Node-Level Degree Counting Integer
Path-Level Reachability true or false
Information-Flow Tracing JSON list of strings

5. Evaluate Predictions

Evaluate all five tasks using the official SciFigBench metrics:

scifigbench evaluate \
    --predictions predictions.jsonl \
    --task all \
    --data-root ./data

For additional commands and Python API details, refer to AGENTS.md or run scifigbench --help.

✍️ License & Citation

The SciFigBench Evaluation Toolkit is released under the MIT License. See LICENSE.

If you find our work helpful, please use the following citation.

@inproceedings{wu2026scifigbench,
  title     = {SciFigBench: A Benchmark for Scientific Method Figure Understanding},
  author    = {Wu, Lijia and Li, Zheng and Liu, Yuxuan and Zhang, Jingwen and Zhao, Penghai and Li, Xiang},
  booktitle = {Proceedings of the 2026 Conference on Empirical Methods in Natural Language Processing},
  year      = {2026},
  eprint    = {2610.27087},
  archivePrefix = {arXiv},
  url       = {https://arxiv.org/abs/2610.27087}
}

Metadata

Release files for scifigbench 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scifigbench 0.1.0
File Size Uploaded Provenance
scifigbench-0.1.0.tar.gz 62.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for scifigbench 0.1.0
File Interpreter ABI Platform
scifigbench-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 104.1 kB

Release files / scifigbench-0.1.0.tar.gz

Download URL scifigbench-0.1.0.tar.gz
Size 62.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4cac6be60d9bf27628b51e4731e8903a7908a6b33d66cb93bc8a722c33162381
BLAKE2b-256 checksum
How to use checksums
dd47f06ac3f88fef998822d246e43f46ea26ec7bd9388c1666acdd903023e3e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / scifigbench-0.1.0-py3-none-any.whl

Download URL scifigbench-0.1.0-py3-none-any.whl
Size 41.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1ec235b93fe5f85d3cc1d2a46996d68f7e8d324edb3f8b4a0b074b34b728d9ab
BLAKE2b-256 checksum
How to use checksums
512d1ea55701ded39d19c0648cdbc2a2943f81f57dd873dcba111bd571146100
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for scifigbench 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for scifigbench-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page