Skip to main content

MulTaBench: Benchmarking Multimodal Tabular Learning

Leaderboard arXiv NeurIPS 2026 Spotlight Datasets PyPI Python 3.11+ MIT license

🏆 Leaderboard · 📄 Paper · 🤗 Datasets · 📚 Collection · 🚀 Getting started · ➕ Add a model · 📝 Cite

MulTaBench is a benchmark for multimodal tabular learning: tables whose columns hold free text or images alongside numbers and categories. Its 40 core datasets, 20 text-tabular and 20 image-tabular, were kept only if they show both joint signal, each modality carrying signal about the target that the others don't, and target awareness, the best representation of the text or images depending on the task. 40 more datasets with joint signal are released alongside them, 80 in total.

Models are ranked on the live leaderboard, but the benchmark's purpose is to compare ways of encoding text and images for tabular learners, and new methods are welcome.

Getting started

The core package loads the datasets, their splits and cached embeddings, without torch or any model package:

pip install multabench
from multabench import Size, list_datasets, load_embeddings, load_split, score

datasets = list_datasets(modality="text", task="regression", tier="core")

split = load_split("MUL_IMAGE_PETFINDER", fold=0, size=Size.TEN_K)
split.x_train, split.y_train, split.x_test, split.y_test

embeddings = load_embeddings("MUL_TEXT_WINE_REVIEW", fold=0, size=Size.TEN_K, encoder="e5-small")
embeddings.train["description"], embeddings.test["description"]

predictions = model.fit(split.x_train, split.y_train).predict(split.x_test)
result = score(split.task_type, y_true=split.y_test, y_pred=predictions)
result.test_error

load_published_results() returns every leaderboard run.

The loaders download from the Hugging Face Hub at pinned revisions. To read a local copy instead, e.g. offline or from a read-only mount, pass data_dir, holding one folder per Hub repo named without the org, with images extracted: <data_dir>/<dataset repo>/data.parquet and <data_dir>/embeddings-e5-small/<dataset repo>/embeddings.npz.

split = load_split("MUL_IMAGE_PETFINDER", fold=0, data_dir="/data/multabench")

with_image_files=False loads an image dataset's table without its image files, enough for the cached image embeddings, which are looked up by file name; the split's image_folder is then None.

To run the benchmark itself, set up the environment and evaluate one model on one fold:

source init.sh && source .venv/bin/activate
cp .env.example .env  # Hugging Face token

python benchmark.py --model light --dataset_name MUL_IMAGE_PETFINDER --fold 0

Running the benchmark covers sweeps, hardware and collecting results; Cached embeddings, Datasets and Protocol, including how Elo is computed and how MulTaBench differs from TabArena, cover the rest.

Adding a model

Open a pull request that adds the model; once it is merged, we run it from master on the leaderboard's hardware, so every result comes from the same machines and from code anyone can check out. The pull request adds:

  1. A wrapper, multabench/baselines/<model>.py: a TabularModel subclass, e.g. multabench/baselines/tabdpt13.py.
  2. The model in BASELINES in benchmark.py.
  3. Its dependencies as an extra in pyproject.toml, locked in requirements.txt, or in its own requirements-<ENV>.txt if they conflict.
  4. A row in space/data/models.csv, with a small logo in space/assets/logos/ and a link to its paper.

Use the model's default hyperparameters, pin anything it downloads, and say on which datasets it can't run, e.g. too many classes. Running the benchmark has the details.

Citation

@article{arazi2026multabench,
  title   = {MulTaBench: Benchmarking Multimodal Tabular Learning with Text and Image},
  author  = {Arazi, Alan and Shapira, Eilam and Grunblat, Shoham and Ventura, Mor and Hoffer, Elad and Blayer, Gioia and
             Holzm{\"u}ller, David and Purucker, Lennart and Varoquaux, Ga{\"e}l and Hutter, Frank and Reichart, Roi},
  journal = {arXiv preprint arXiv:2605.10616},
  year    = {2026}
}

License

The code is under the MIT license; each dataset keeps the terms of its source, linked in MULTABENCH_SOURCES in multabench/datasets/all_datasets.py.

Metadata

Release files for multabench 0.0.4

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

Source distribution (sdist)

Source distribution for multabench 0.0.4
File Size Uploaded Provenance
multabench-0.0.4.tar.gz 689.0 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 1.4 MB

Release files / multabench-0.0.4.tar.gz

Download URL multabench-0.0.4.tar.gz
Size 689.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d455bffa3948a2f5c9e52bebadf2634124972ee10901cc8ff0e46699e71c68ee
BLAKE2b-256 checksum
How to use checksums
cb76c8b6c74edca0f3a5726cd8235d8a9534d42bf1afe43fa8c35c3fa7706f7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / multabench-0.0.4-py3-none-any.whl

Download URL multabench-0.0.4-py3-none-any.whl
Size 717.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2487692a3a3c7bedbf38c1830b4db36a9346b21822a7ec0bddbaa41312b3c7a3
BLAKE2b-256 checksum
How to use checksums
78520cb080f913a3058328b9d96f8bcaeaf714253cde625e9872a9efca9fd4dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Security for multabench 0.0.4

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

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