Add model-aware guided Puzzletron setup - #2117
Conversation
Offer intent-based profiles so common smoke and pruning campaigns can accept reviewed defaults without traversing the expert questionnaire. Preserve the complete configuration path behind --full. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Keep the compact path from silently changing explicit defaults or opening advanced prompts, and make review and resume behavior trustworthy. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Align setup-v2 tests with stage-derived acquisition bounds and declare the interactive dependency so a clean environment can reproduce validation. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Retain the existing lightweight setup requirements and leave repository-wide environment and lockfile consolidation to dedicated follow-up work. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Require an explicit infrastructure-default decision in guided setup and keep prompt adapter coverage hermetic in ModelOpt unit CI. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Preserve modality-default provenance and reject incompatible guided inputs. Render actual MIP constraints and exercise validated bundle generation through the real guided section path. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Layer historical model budgets over family profiles while preserving explicit defaults-file precedence and reporting the selected model profile as distinct provenance. Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
Signed-off-by: Johannes Rausch <jrausch@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## feature/puzzletron_v2 #2117 +/- ##
=========================================================
+ Coverage 54.76% 54.79% +0.03%
=========================================================
Files 704 704
Lines 90869 90869
=========================================================
+ Hits 49761 49791 +30
+ Misses 41108 41078 -30
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
What does this PR do?
Type of change: New feature
Puzzletron setup exposes many low-level choices before an engineer can produce a usable campaign, and family-only defaults give very different model sizes the same scoring and search budgets. That makes first-time setup harder than necessary and encourages engineers to copy old run files without a clear precedence or provenance contract.
This change adds Quick smoke, Balanced pruning, and High-confidence search profiles while preserving the full-control workflow. Each model family owns generic profile defaults in versioned YAML, and schema 2 can refine only the fields justified for a matching model geometry. Model-specific values are derived from historical Qwen 3.5 0.8B, Qwen 3.5 9B, Qwen 3.6 27B, and Nemotron 3 Nano campaign configurations; machine paths, checkpoints, and cluster-specific topology are not carried forward.
Default precedence is explicit: built-in and model-derived values, then the family profile, then a matching model profile, then an explicitly selected defaults file. Preserved wizard answers remain authoritative when resuming. The resolved-default record distinguishes family profile values from
model_profilevalues, unmatched models inherit the family profile, and ambiguous or malformed model selectors fail closed.The guided flow persists its selected mode and profile, supports explicit back navigation and resume, validates model and dataset compatibility, reuses compatible parallel settings, requires concrete infrastructure values, and shows effective MIP constraints before generating independently validated smoke and production bundles. Engineers who need every advanced control can use
--full; saved states without a setup mode resume in full mode.The outcome is a shorter first-run setup with defaults that scale to known model variants, without removing advanced controls or making historical infrastructure assumptions part of new campaigns.
Usage
Start guided setup:
Use the exhaustive flow when every advanced setting needs customization:
An explicit
--defaultsfile takes precedence over both family and model profile values.Testing
Ran the focused setup-v2 unit suites for guided setup, data handling, and parallel prompts in the dependency-light setup environment. These cover family fallback, model matching, explicit-file precedence, ambiguous-selector rejection, resume behavior, and end-to-end propagation of model-profile values and provenance through bundle generation.
Also ran Ruff lint and format checks, Python bytecode compilation for changed Python paths, and Git whitespace validation. The repository-wide test harness was not run because the available local environment does not include PyTorch; no GPU or campaign execution was performed.
Compatibility and scope
Schema 1 family-default files remain accepted, the model-aware API arguments are optional, and no dependency or security-sensitive loading behavior is added. Additional model descriptors, model search-space definitions, site-specific execution defaults, wizard modularization, scheduler work, and GPU validation are out of scope.