Nori

Nori 1.5

Nori 1.5 is the ~21M-parameter (20,757,832) Model v3 variant of Nori, a tabular foundation model for regression via in-context learning (ICL). Given a few labeled rows as context, it predicts on new query rows in a single forward pass, with no task-specific training or fine-tuning. The model is trained entirely on synthetic data.

What is different about Model v3

The other Nori sizes share one architecture. Nori 1.5 adds a two-phase encoder: a 9-layer cell encoder (embedding 128, 4 heads) followed by a separate 12-layer row encoder (width 256, 8 heads), with two target tokens per row and query-key normalisation throughout. Features are tokenized with RBF64 + PLE64.

It also has its own inference config: a fixed 4-member preprocessing ensemble, where the other sizes use 8 members. The config is stored inside nori.pt, so every way of loading this file uses it. Pass inference_config= to choose a different one.

Results

Mean and median R² across 95 public regression tasks from three suites, for all four sizes, from one sweep on one machine with the same code:

Suite Datasets Nori-6M Nori 1.5 (21M) Nori-30M Nori-100M
TabArena 13 0.8068 / 0.8772 0.8175 / 0.8939 0.8097 / 0.8831 0.8120 / 0.8901
TALENT 71 0.7561 / 0.8918 0.7614 / 0.8939 0.7523 / 0.8942 0.7539 / 0.8944
OpenML 11 0.6366 / 0.5719 0.6559 / 0.6265 0.6430 / 0.6190 0.6488 / 0.6313
Overall 95 0.7492 / 0.8708 0.7569 / 0.8869 0.7475 / 0.8752 0.7497 / 0.8799

Nori 1.5 has the highest mean on every suite. Task by task, it beats Nori-100M on 57 tasks, ties 31 (within 0.001 R²) and loses 7. It does this with 4 ensemble members instead of 8, so on TabArena and TALENT it took 309 s of model time against 782 s for Nori-30M (2.5x faster) and 3,370 s for Nori-100M (11x faster). Each size ran on its own H100 alongside other jobs, so treat the times as approximate.

How the table was produced: synthefy-nori-eval with --max-elements-budget 2000000 and up to 50,000 context rows, on one H100 per size. Each size used its default inference config. TALENT excludes topo_2_1, as the 6M/30M/100M benchmark in the repository README does. TALENT and Overall sit about 0.01 below that README for every size. One dataset, CookbookReviews, scores R² −0.37 to −0.63 for every size (the released 0.21.1 code gives the same −0.63 for Nori-30M), and dropping it alone puts every size above the README's TALENT mean. Compare sizes within this table.

Usage

pip install "synthefy-nori>=0.22.0"
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from synthefy_nori import NoriRegressor

X, y = load_diabetes(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

model = NoriRegressor(model="nori-1-5")   # downloads these weights from the Hub on first use
model.fit(X_train, y_train)               # "fit" just stores the labeled rows as context
pred = model.predict(X_test)              # predictions in a single forward pass, no training

It uses a GPU when one is available and falls back to CPU. A one-shot helper skips the object entirely:

from synthefy_nori import predict
pred = predict(X_train, y_train, X_test, task="regression", model="nori-1-5")

To run from a local copy of this checkpoint, pass its path; the stored config comes with it:

model = NoriRegressor(model_path="path/to/nori.pt")

Earlier synthefy-nori releases cannot load this checkpoint; use 0.22.0 or later.

This model is public: the first call downloads and caches it automatically, with no token and no access request. A Hugging Face token (read scope) is only worth setting if you hit anonymous download rate limits — provide it via export HF_TOKEN=hf_..., hf auth login, or NoriRegressor(model="nori-1-5", token="hf_...").

Intended use & limitations

  • Intended for small-to-medium tabular regression where in-context learning is attractive (no per-task training).
  • Limitations: dense O(N²) sample attention bounds practical context size, so the current gap vs the best baselines is on large-N / long-context tables. Trained entirely on synthetic data; no benchmark data is used in training.

Citation

@software{synthefy_2026_20710462,
  author       = {Synthefy and
                  Li, Po-han and
                  Narayanan, Aditya and
                  Narasimhan, Sai Shankar and
                  Mallampalli, Raghav and
                  Agrawal, Aahan and
                  Ajan, Bekzat and
                  Shah, Raimi and
                  Agarwal, Shubhankar},
  title        = {Synthefy Nori: Tabular Foundation Model for Regression},
  month        = jun,
  year         = 2026,
  publisher    = {Zenodo},
  version      = {0.6.0},
  doi          = {10.5281/zenodo.20710462},
  url          = {https://doi.org/10.5281/zenodo.20710462},
}

License

Apache-2.0. See LICENSE and NOTICE.

Downloads last month
179
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support