TabPFN is a foundation model for tabular data that outperforms traditional methods while being dramatically faster. This client library provides easy access to the TabPFN API, enabling state-of-the-art tabular machine learning in just a few lines of code.
This is an alpha release. While we've tested it thoroughly in our use cases, you may encounter occasional issues. We appreciate your understanding and feedback as we continue to improve the service.
This is a cloud-based service. Your data will be sent to our servers for processing.
Do NOT upload any Personally Identifiable Information (PII)
Do NOT upload any sensitive or confidential data
Do NOT upload any data you don't have permission to share
Consider anonymizing or pseudonymizing your data before upload
Review your organization's data sharing policies before use
pip install tabpfn-client
from tabpfn_client import init, TabPFNClassifier
# Login (interactive first time)
init()
# Use it like any sklearn model
model = TabPFNClassifier()
model.fit(X_train, y_train)
# Get predictions
predictions = model.predict(X_test)
# Get probability estimates
probabilities = model.predict_proba(X_test)
📚 For detailed usage examples and best practices, check out:
You can retrieve your access token
import tabpfn_client
token = tabpfn_client.get_access_token()
and login (on another machine) using your access token, skipping the interactive flow, use:
tabpfn_client.set_access_token(token)
We're building the future of tabular machine learning and would love your involvement! Here's how you can participate and get help:
- Try TabPFN: Use it in your projects and share your experience
- Connect & Learn:
- Join our Discord Community for discussions and support
- Read our Documentation for detailed guides
- Check out GitHub Issues for known issues and feature requests
- Contribute:
- Report bugs or request features through issues
- Submit pull requests (see development guide below)
- Share your success stories and use cases
- Stay Updated: Star the repo and join Discord for the latest updates
To encourage better coding practices, ruff
has been added to the pre-commit hooks. This will ensure that the code is formatted properly before being committed. To enable pre-commit (if you haven't), run the following command:
pre-commit install
Additionally, it is recommended that developers install the ruff extension in their preferred editor. For installation instructions, refer to the Ruff Integrations Documentation.
if [ -d "dist" ]; then rm -rf dist/*; fi
python3 -m pip install --upgrade build; python3 -m build
python3 -m twine upload --repository pypi dist/*
You can use our UserDataClient
to access and delete personal information.
from tabpfn_client import UserDataClient
print(UserDataClient.get_data_summary())