Add v3.5_default model alias - #374
Open
simo-prior wants to merge 14 commits into
Open
Conversation
Add `v3.5_default` to both estimators' available models, `ModelVersion.V3_5`,
and `create_default_for_version` support, so a caller can pin the TabPFN 3.5
pre-release the same way as v3/v2.6/v2.5.
The wire name follows the existing template
(`tabpfn-v3.5-{classifier,regressor}-v3.5_default.ckpt`). Since "v3" is a
prefix of "v3.5", the v3.5 identifier is matched before v3 in
`_model_name_to_path`; the unit tests pin both families.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
brendan-priorlabs
requested changes
Sep 2, 2026
ggprior
previously approved these changes
Sep 2, 2026
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 3 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 0f4df02. Configure here.
…k params, fixing the predict-params contract test
… so the server picks and limit checks use the default version
…ck the default-version limits; derive default names as a tuple
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

ENG-975
Change Description
Adds the
v3.5_defaultalias and stops resolving model names on the client:model_pathnow goes to the server unchanged, and the server owns the name → checkpoint mapping.model_pathis sent as given (v3.5_default,v2.5_real,gn2p4bpt, or a full checkpoint filename)._model_name_to_path, the family identifier constants and client-side name validation are removed.Nonesends nomodel_path;"auto"/"default"go through as given and the server resolves them. The client keeps the alias list only to pick the default-version limits for its pre-flight checks.<version>_defaultentries oflist_available_models()are derived fromModelVersion(newest first) instead of hand-maintained constants;ModelVersion.V3_5is added.create_default_for_versionbuilds the alias the same way and rejects versions not in the enum. The substring-safe ordering that tabpfn-time-series relies on is kept and tested.model_version_from_pathaccepts short names as well as filenames, so the client-side pre-flight limit checks and full-output chunking keep working; bare hash names resolve to v2.Tests cover the pinned model lists, pass-through of the name on the wire and
create_default_for_version(ModelVersion.V3_5); tests for the removed helpers are dropped.Motivation: the tabpfn-server v3.5 smoke test (
basic_v3_5preset) uses this alias; the pinned client rejects it today.If you used new dependencies: Did you add them to
requirements.txt? No new dependencies.Who did you ping on Mattermost to review your PR? —
Breaking changes
Does this PR break the API? If so, what is the corresponding server commit? Wire change: the client sends short model names instead of
tabpfn-<family>-<task>-<name>.ckptfilenames. gapi'sfill_or_validate_model_pathmust accept and resolve them (not yet on tabpfn-servermain). Until it does, any explicitmodel_path, including"auto"/"default", fails at fit with the server's invalid-model-path error; onlyNoneand full checkpoint filenames keep working.Does this PR break the user interface? If so, why? Two small behaviour changes:
create_default_for_versionno longer setsn_estimators=8/softmax_temperature=0.9, it only pinsmodel_path; and unknown model names are no longer rejected locally but by the server at fit time.🤖 Generated with Claude Code