TabPFN-3 is the next major iteration of the TabPFN, supporting up to 1M rows in-context. The API adds Thinking mode for even better predictions thanks to longer fit times, native text features, and a new endpoint surface. The Python client ships 0.3.0 with full v3 support.Documentation Index
Fetch the complete documentation index at: https://docs.priorlabs.ai/llms.txt
Use this file to discover all available pages before exploring further.
Model
TabPFN-3 handles up to 1M rows x 200 features natively — a 10x increase over the previous model. Rows and features trade off, so you can go deeper (1M rows, 200 features) or wider (100K rows, 2,000 features) depending on your data. Predictions run in under 0.2ms on 1M rows, an order of magnitude faster than before. This makes real-time scoring, dashboards, and multi-predict workflows practical at production scale. Classification now supports up to 160 classes without extensions or workarounds. You can still use the many-class extension for higher-cardinality classification tasks. Regression shows up to 20% target metric improvements, with better predictions on out-of-distribution values, relational data, and time-series patterns.Open-source package
TabPFN-3 model weights are available for local inference and research. Accessing the weights requires a one-time license acceptance - see accessing model weights for more details. The interface for TabPFN-3 stays mostly the same as for TabPFN-2.5 and 2.6. We have also bundled some performance improvements, such as:- Finetuning now distributing automatically across GPUs when launched with
torchrun. - Regressor memory usage is reduced by 60%, which matters for large datasets and constrained environments.
- Fixed a float overflow in the Yeo-Johnson inverse transform that could silently degrade regression predictions.
- MPS hardware support has been improved, with silent errors degrading predictions being fixed.
tabpfn-client and API
Thinking mode for TabPFN-3-Plus is the biggest addition to the API surface. Thinking mode spends more effort on fitting stage, delivering up to 15% improvement (measured on TabArena ELO improvement) over vanilla TabPFN-3. You pay the optimization cost once at fit time, so you can use it for one-time optimization that fuels recurring predictions. TabPFN-3-Plus also handles text-based features natively on the API. Pass text columns such as product descriptions or customer notes directly, without encoding or preprocessing. Especially useful in agentic workflows where an agent passes conversational context straight into a prediction.tabpfn-client also gets a 0.3.0 release - the scikit-learn interface is unchanged. The package is upgraded to handle larger datasets and the new API flow. Thinking mode is exposed as first-class parameters on TabPFNClassifier and TabPFNRegressor. We have also updated the random_state to default to deterministic behavior.
TabPFN-3-Plus is available exclusively through the new /tabpfn/* JSON endpoints, which separate upload from fit/predict and support much larger datasets reliably. The legacy /v1/* multipart routes remain available for a short period of time.
API metering and limits have been updated to reflect TabPFN-3 performance and expected use. We have also introduced a new monthly limit, which lets you run larger experiments in one go.
Migrating from v2.x
OSS (local / Hugging Face)
- Upgrade PyTorch to 2.5+ before updating TabPFN. Minimum version moved from 2.1 to 2.5.
- Upgrade the package:
pip install --upgrade tabpfn. TabPFN-3 is now the default model. - Replace
n_jobswithn_preprocessing_jobsif you were passing it toTabPFNClassifierorTabPFNRegressor. - Expect slightly different predictions compared with v2.x — fingerprint hashing is now fully deterministic (no random salt), SVD is applied after categorical encoding, and ordinal encoding column ordering has been fixed.
- If you use tabpfn-extensions, verify compatibility with the v3 stack before upgrading production notebooks.
API client
- Upgrade:
pip install --upgrade tabpfn-client. Version 0.3.0 handles the new API flow and v3 model limits automatically. Older client versions will show a deprecation warning. random_statenow defaults to0(deterministic). PassNonefor the previous non-deterministic behavior.- Review API metering before load tests — token budgets and thinking fit limits apply.
Extensions
- Upgrade:
pip install --upgrade tabpfn-extensions. Version 0.2.2 is compatible with TabPFN-3. - If you were using
ManyClassClassifierfor problems with fewer than 160 classes, you can now drop it — TabPFN-3 handles up to 160 classes natively withTabPFNClassifier. - The following extensions are deprecated:
hpo,rf_pfn,pval_crt,survival,post_hoc_ensembles,sklearn_ensembles,tabebm,scoring,benchmarking. If you depend on any of these, pin your current version and plan to migrate off them.
REST API
- The legacy
/v1/fitand/v1/predictmultipart endpoints will remain available for a short period of time. New integrations should use the/tabpfn/*JSON routes. TabPFN-3 is only available through the new endpoints. POST /tabpfn/prepare_train_set_upload— prepare an upload destination, then upload your training data.POST /tabpfn/fit— fit a model on the uploaded training set. Returns afitted_train_set_id.POST /tabpfn/prepare_test_set_upload— upload test features.POST /tabpfn/predict— run predictions using thefitted_train_set_idand uploaded test set.- Use
GET /tabpfn/get_model_limitsto check per-model-version limits before uploading.
Get started
Quickstart
Get up and running with TabPFN-3 in minutes.
Thinking mode
Configure fit-time optimization for better predictions.
API metering
Token budgets, usage tracking, and thinking fit limits.
API reference
Full endpoint documentation for the
/tabpfn/* API.