Skip to content

Make the FlexCNN multitask model the default (v4.1.1) - #115

Merged
RobbinBouwmeester merged 1 commit into
mainfrom
release/v4.1.1
Aug 26, 2026
Merged

Make the FlexCNN multitask model the default (v4.1.1)#115
RobbinBouwmeester merged 1 commit into
mainfrom
release/v4.1.1

Conversation

@RobbinBouwmeester

Copy link
Copy Markdown
Member

Summary

  • DEFAULT_MODEL now points at multitask_flexcnn_model.pt (fused trunk, low-rank multitask head, 6,543 LC setups; bundled since 4.1.0 as FLEXCNN_MULTITASK_MODEL). Every core function and the CLI use it when no model is given.
  • The 4.0 default multitask_model.pt stays bundled as deeplc.core.LEGACY_MULTITASK_MODEL; pass it as model= to reproduce 4.0 / 4.1.0 predictions exactly.
  • Uncalibrated predict() on a multitask model with setup names reports DEFAULT_TASK_NAME = "PXD005573_mcp" (the DeepLC 1.x-3.x training setup, 200-min gradient) instead of head 0. For the new default, head 0 was an arbitrary setup (2023-06-22 - DIANN - Ajita ...). return_matrix=True, calibration and fine-tuning are unchanged.
  • Docs (models.rst, migration.rst), README, CHANGELOG 4.1.1 entry, version bump.

Verification

  • pytest tests: 117 passed (local, Windows, torch 2.6 CPU).
  • Adjusted tests: test_model_ops pins the legacy file explicitly; test_flexcnn::test_bundled_model_predicts_in_minutes now checks the default-setup column; new tests in test_core cover the default constant, the default-setup contract, and that the legacy model still loads and predicts.
  • ruff check/ruff format --check: no new findings on the changed files (repo-wide count unchanged at 78 pre-existing).

Notes for release

Creating the GitHub release v4.1.1 triggers publish.yml (PyPI, Windows installer, GHCR image).

🤖 Generated with Claude Code

The fused-trunk multitask model trained across 6,543 LC setups, bundled since
4.1.0 as an opt-in, is now what every core function and the command line load
when no model is given. The 4.0 default stays bundled as
`deeplc.core.LEGACY_MULTITASK_MODEL` so existing workflows can pin it.

An uncalibrated `predict()` on a multitask model that carries setup names now
reports the setup named by `DEFAULT_TASK_NAME` (`PXD005573_mcp`, the 200-minute
gradient the DeepLC 1.x to 3.x models were trained on) rather than head 0, which
for the new default was whichever setup sorted first. Calibration, fine-tuning
and `return_matrix=True` are unchanged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@RobbinBouwmeester
RobbinBouwmeester merged commit 482c92a into main Aug 26, 2026
5 checks passed
@RobbinBouwmeester
RobbinBouwmeester deleted the release/v4.1.1 branch August 26, 2026 08:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant