Skip to content

Add a multitask architecture module and its model sources - #1256

Merged
priorphil merged 10 commits into
mainfrom
leo/tabpfn-3-5
Sep 10, 2026
Merged

Add a multitask architecture module and its model sources#1256
priorphil merged 10 commits into
mainfrom
leo/tabpfn-3-5

Conversation

@LeoGrin

@LeoGrin LeoGrin commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Generated by Claude Code

Adds a new multitask architecture module and registers its two model versions in the loader, each backed by one checkpoint that serves both estimators. Nothing changes for the default estimator: the default model version stays v3, the README is untouched, and the new versions are opt-in through ModelVersion or a file name. The checkpoints live in a private Hugging Face repo for now, and CI reaches them through the updated HF_TOKEN.

Commits and what they do
  • Architecture module, ModelVersion.V3_5 / V3_5_FAST, model sources, CPU sample limit, create_default_for_version wiring (Benjamin Jaeger, from ben/inference-update).
  • create_default_for_version takes a ModelVersion in the regressor, as the classifier already does (Benjamin Jaeger).
  • Model sources point at the 20260909 exports and list the multiclass variant.
  • Port of fomo-fitting #3698: missing train cells are filled with the same value the cached path fills test cells with, so cached and uncached predictions agree on tables with NaNs. Regression test included; it fails without the fix.
  • The layerwise-quantization test compares scales with rtol=1e-6 instead of exact equality. On macOS arm64 the two forward passes differ by 2 ulp in the absmax; the quantized keys and values are still compared exactly.
  • The tabpfn_v3_5_prerelease architecture alias and its test are dropped: the released checkpoints name tabpfn_v3_5.
How this was checked
  • Full non-slow suite locally on macOS with the release files cached: 2177 passed, 160 skipped, 8 xfailed.
  • Each release file fit and predicted with both estimators on a table with string and datetime columns; file name resolution gives V3_5 / V3_5_FAST.
  • CI dispatched on this branch: https://github.com/PriorLabs/TabPFN/actions/runs/34398005256. The model download succeeded on all jobs. Ten jobs green, including tabpfn-extensions, tabpfn-time-series and both GPU jobs. The macOS 15 job hit its 30-minute cap in "all tests" mode; on main that job already takes 28 to 29.5 minutes.

Not in this PR: making the new version the default, the README, and the docs. Those follow in a separate PR.

🤖 Generated with Claude Code

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 57cdd42. Configure here.

Comment thread src/tabpfn/architectures/tabpfn_v3_5.py Outdated
@LeoGrin LeoGrin added the no changelog needed PR does not require a changelog entry label Sep 9, 2026
priorphil and others added 2 commits September 10, 2026 09:38
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
priorphil
priorphil previously approved these changes Sep 10, 2026

@priorphil priorphil left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I fixed Codex's comment and restored the simpler version of the "base" name check since the global was not used anywhere else.

@priorphil
priorphil enabled auto-merge September 10, 2026 07:46
@jmkuebler
jmkuebler self-requested a review September 10, 2026 07:48
jmkuebler
jmkuebler previously approved these changes Sep 10, 2026

@jmkuebler jmkuebler left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stamp

@priorphil
priorphil dismissed stale reviews from jmkuebler and themself via 136f190 September 10, 2026 09:10

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reapproving after a push, as this is a PR from an internal author and was already approved.

@priorphil
priorphil added this pull request to the merge queue Sep 10, 2026
Merged via the queue into main with commit 75afafe Sep 10, 2026
19 checks passed
@priorphil
priorphil deleted the leo/tabpfn-3-5 branch September 10, 2026 10:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no changelog needed PR does not require a changelog entry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants