SAVRN
Search Contact SAVRN

Open-weight model · Tabular classification

sap-rpt-1-oss

by SAP SAP/sap-rpt-1-oss

Go to SAP-RPT Playground ↗ Note: This model and repository were formerly known as ConTextTab. While the code and repository have now been updated in line with the new name sap-rpt-1-oss, the model checkpoint and functionality remain identical.

Parameters
Context
Weights129.2 MB
Licenseapache-2.0
AccessAccess requested at publisher
Monthly Downloads123.8k

Model Card

By SAP, published under apache-2.0, revision bc2c99cc541e.

Go to SAP-RPT Playground ↗ Note: This model and repository were formerly known as ConTextTab. While the code and repository have now been updated in line with the new name sap-rpt-1-oss, the model checkpoint and functionality remain identical. Implementation of the deep learning model with the inference pipeline described in the paper "ConTextTab: A Semantics-Aware Tabular In-Context Learner". Tabular in-context learning (ICL) has recently achieved state-of-the-art (SOTA) performance on several tabular prediction tasks. Previously restricted to classification problems on small tables, recent advances such as TabPFN and TabICL have extended its use to larger datasets. While being…

Read SAP's full model card

[!NOTE] Besides this open‑source release, you can try our latest commercial SAP‑RPT variants free-of-charge via the SAP-RPT Playground.

Go to SAP-RPT Playground ↗

Note: This model and repository were formerly known as ConTextTab. While the code and repository have now been updated in line with the new name sap-rpt-1-oss, the model checkpoint and functionality remain identical.

Description

Implementation of the deep learning model with the inference pipeline described in the paper "ConTextTab: A Semantics-Aware Tabular In-Context Learner".

Abstract

Tabular in-context learning (ICL) has recently achieved state-of-the-art (SOTA) performance on several tabular prediction tasks. Previously restricted to classification problems on small tables, recent advances such as TabPFN and TabICL have extended its use to larger datasets. While being architecturally efficient and well-adapted to tabular data structures, current table-native ICL architectures, being trained exclusively on synthetic data, do not fully leverage the rich semantics and world knowledge contained in real-world tabular data. On another end of this spectrum, tabular ICL models based on pretrained large language models such as TabuLa-8B integrate deep semantic understanding and world knowledge but are only able to make use of a small amount of context due to inherent architectural limitations. With the aim to combine the best of both these worlds, we introduce sap-rpt-1-oss (formerly known under the name ConTextTab), integrating semantic understanding and alignment into a table-native ICL framework. By employing specialized embeddings for different data modalities and by training on large-scale real-world tabular data, our model is competitive with SOTA across a broad set of benchmarks while setting a new standard on the semantically rich CARTE benchmark.

Citations

If you use this model in your research or want to refer to our work, please cite:

@inproceedings{
spinaci2025contexttab,
title={ConTextTab: A Semantics-Aware Tabular In-Context Learner},
author={Marco Spinaci and Marek Polewczyk and Maximilian Schambach and Sam Thelin},
booktitle={Advances in Neural Information Processing Systems (NeurIPS)},
year={2025},
url={https://openreview.net/forum?id=kGMRb4jbTP}
}

Requirements

This project uses model checkpoints available on https://huggingface.co/sap/sap-rpt-1-oss that are automatically downloaded when running the model. Note that downloading the model checkpoints requires logging in to Hugging Face. See the instructions for details.

The requirements are detailed in the requirements.txt file for Python 3.11 version.

Local development installation:
pip install -e .

Installation from source:
pip install git+https://github.com/SAP-samples/sap-rpt-1-oss

Basic Usage

The model supports both classification and regression tasks. It accepts input data in the form of a pandas DataFrame or a NumPy array. No preprocessing is required, column names and cell values are automatically embedded using an LLM that is running in the background, and any missing values are handled correctly.

For best performance, use a GPU with at least 80 GB of memory and set the context size to 8192. For large tables, it is recommended to use a bagging factor of 8.

For a light-weight, faster model with lower requirements on the GPU, try lowering the context size to e.g. 2048 and set the bagging factor to 1.

Classification

from sklearn.datasets import load_breast_cancer
from sklearn.metrics import accuracy_score
from sklearn.model_selection import train_test_split

from sap_rpt_oss import SAP_RPT_OSS_Classifier

# Load sample data
X, y = load_breast_cancer(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42)

# Initialize a classifier, 8k context and 8-fold bagging gives best performance, reduce if running out of memory
clf = SAP_RPT_OSS_Classifier(max_context_size=8192, bagging=8)

clf.fit(X_train, y_train)

# Predict probabilities
prediction_probabilities = clf.predict_proba(X_test)
# Predict labels
predictions = clf.predict(X_test)
print("Accuracy", accuracy_score(y_test, predictions))

Regression

from sklearn.datasets import fetch_openml
from sklearn.metrics import r2_score
from sklearn.model_selection import train_test_split

from sap_rpt_oss import SAP_RPT_OSS_Regressor

# Load sample data
df = fetch_openml(data_id=531, as_frame=True)
X = df.data
y = df.target.astype(float)

# Train-test split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42)

# Initialize the regressor, 8k context and 8-fold bagging gives best performance, reduce if running out of memory
regressor = SAP_RPT_OSS_Regressor(max_context_size=8192, bagging=8)

regressor.fit(X_train, y_train)

# Predict on the test set
predictions = regressor.predict(X_test)

r2 = r2_score(y_test, predictions)
print("R² Score:", r2)

Known Issues

No known issues

How to obtain support

Create an issue in this repository if you find a bug or have questions about the content.

Contributing

If you wish to contribute code, offer fixes or improvements, please send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.

License

Copyright (c) 2025 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

The model checkpoints have been trained on the T4 dataset, which, in turn, is a subset of the TabLib dataset. As such, they inherit the same restrictions described therein and in particular they are only intended for research purposes.

Identity and Version

Repository
SAP/sap-rpt-1-oss
Publisher
SAP
Task
Tabular classification
Modality
Tabular
Library
sap-rpt-1-oss
Parameters
Not stated by the source
Languages
in-context
Revision
bc2c99cc541eeac9d1e10ae79da192d38b9fb27b
First published
2025-06-12
Last updated
2026-08-28

Files and Weights

7 files, 129.3 MB in total. The weights are 2 files totalling 129.2 MB in pt.

Weights2 files · 129.2 MB
Documentation2 files · 7.6 KB
Other2 files · 142.7 KB
Repository1 file · 1.6 KB
Every file
FileTypeSizeSHA-256
2025-11-04_sap-rpt-one-oss.ptWeights64.6 MB
l2/base.ptWeights64.6 MB
README.mdDocumentation7.5 KB
l2/base.pt.licenseDocumentation72 B
architecture.pngOther138.3 KB
notebook.ipynbOther4.3 KB
.gitattributesRepository1.6 KB

License and Download

License
apache-2.0
Access
Access requested at publisher
Download size
129.2 MB
Request access from SAP

SAP grants access through its official repository on Hugging Face. Read the license.

Built From

  • Described by arXiv:2506.10707
  • Trained on (disclosed) mlfoundations/t4-full

Memory Requirements

PrecisionWeights in memory
As published129.2 MB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About sap-rpt-1-oss

Can I use sap-rpt-1-oss commercially?

Yes. sap-rpt-1-oss is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Model · Tabular classification

Nori-30M

Synthefy

Nori-30M is the ~29.2M-parameter 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. Mean and median R² across 96 regression tasks from three public benchmark suites, on the same protocol as the base Nori: Stronger than the ~6M base on every suite. Evaluated with the bundled default inference config and the large-GPU protocol (up to 50k context rows per dataset). Paste this into Claude Code, Cursor, or any AI coding assistant and it will wire python from synthefynori…

Open weights apache-2.0 synthefy-nori

Model · Tabular classification

Nori

Synthefy

Nori is 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. Mean and median R² of the base model across 96 regression tasks from three public benchmark suites (single H200, up to 50K context rows per dataset): Large-N / long-context tables (common in TabArena) are the current focus of the large-table training stages. These numbers are reproducible end-to-end with one command — see Reproducing these numbers. Paste this into Claude Code, Cursor, or any AI coding assistant and it will…

Open weights apache-2.0 synthefy-nori

Model · Tabular classification

EXAONE-Tabular

LG AI Research

EXAONE Tabular is a transformer-based foundation model for tabular data that solves classification and regression through in-context learning: you pass the labeled rows to fit and the model predicts new rows in a single forward pass — no gradient updates and no per-dataset training. This repository is the exaonetabular inference runtime — a self-contained package that loads a released checkpoint and serves predictions through a small, scikit-learn-style API. The code here is permissively licensed; the released weights are non-commercial — see Both checkpoints are released: EXAONETabularClassifier and EXAONETabularRegressor each fetch their own weights with a single frompretrained() call.…

Open weights other

Model · Tabular classification

TabPFN-v2-clf

Prior Labs

TabPFN is a transformer-based foundation model for tabular data that leverages prior-data based learning to achieve strong performance on small tabular datasets without requiring task-specific training. For detailed usage examples and best practices, check out: - Python ≥ 3.9 - PyTorch ≥ 2.1 - scikit-learn ≥ 1.0 This repository hosts the production TabPFN-v2 base checkpoints. Files matching the pattern tabpfn-v2-classifier-finetuned-.ckpt are content-identical aliases of the corresponding base checkpoints (e.g. tabpfn-v2-classifier-finetuned-gn2p4bpt-xp6f0iqb.ckpt is identical to tabpfn-v2-classifier-gn2p4bpt.ckpt; tabpfn-v2-classifier-finetuned-zk73skhh.ckpt is identical to…

Open weights other tabpfn

Model · Tabular classification

tabfm-1.0.0-pytorch

Google

TabFM is a zero-shot tabular foundation model from Google Research. It supports classification and regression on structured/tabular data with mixed numerical and categorical columns, requiring no fine-tuning or hyperparameter search - training examples are passed as context and predictions are made in a single forward pass. This repository contains the PyTorch weights. For the JAX/Flax weights see You can also load directly using the HuggingFace Hub API: Developed by the Google Research team. - Tabular data with numerical and/or categorical columns - Binary and multiclass classification (up to 10 classes) TabFM uses alternating row and column attention to capture both feature interactions…

Open weights other tabfm

Model · Tabular classification

tabpfn_3

Prior Labs

TabPFN-3 is a transformer-based foundation model that uses in-context-learning to solve tabular prediction problems in a forward pass. Inference code can be found at https://github.com/PriorLabs/TabPFN. More details can be found in the Model Report. Fitting a classifier and predicting looks like this: For more examples (e.g. how to train a regressor), see the github repo: https://github.com/PriorLabs/tabPFN! TabPFN-3 ships with default classification and regression checkpoints, plus a few experimental specialized variants. We recommend starting with the defaults — the variants can be useful in ensembling or HPO setups, or tried manually in the regime they were trained for. Their name…

Open weights other