Troubleshooting¶
The default command did not train anything¶
That is intentional: python run.py uses the plan action. Use
python run.py run --profile smoke for a small end-to-end run.
“Analysis is not feasible for these configurations”¶
A model’s estimated analysis exceeds max_model_evaluations, max_saved_bytes
or max_candidate_points in settings_analysis.py. Nothing was computed. The
message names each configuration and the settings to reduce: typically the truths
(truth_design, sobol_truths, truth_points_per_axis), repeats,
observations or candidate_count. Raise a limit only if the hardware can
afford it. Nothing is reduced automatically. Trained models are unaffected: fix
the analysis settings and run analyze.
Analysis says there are no trained models¶
analyze never trains. It analyzes the models of the latest successful train or
run in the profile’s output folder; train first. Changing
settings_training.py afterwards does not change which models are analyzed; run
train again to train the new settings. For loading existing weights on a
different device, use restore.
A Choice in the analysis settings is rejected¶
Sweeps are for training settings. An analysis is one setting: analyze, change the setting, and analyze again. Compare the saved metrics in between.
A list did not produce several configurations¶
Literal lists are one setting value. Use Choice([baseline, alternative, ...])
for alternatives. Choice([[64, 64], [128, 128]]) is a network-width comparison;
[64, 64] by itself is just one two-layer architecture.
A selected parameter does not exist¶
Parameter indices start at zero. std:1 needs at least two observation
dimensions. OFAT alternatives are checked against the baseline, not against a
helpful combination of other alternatives. Use a compatible baseline or one
atomic dictionary choice for coupled settings.
An extra metric unexpectedly rebuilt a dataset¶
Check its product settings selector, dependency keys, source dependencies, explicit version, output root, and recorded package versions. Cache keys are conservative. Products whose builders read new settings must declare them; removing dependencies just to force cache reuse would undermine correctness.
Results of earlier settings are gone¶
That is intended: in an output folder the latest settings win, and the cache
keeps only what the last three distinct training settings used. Training starts
each run’s analysis over; run analyze again. The latest settings files are saved
as outputs/<profile>/settings_training.py and settings_analysis.py. To keep
several experiments side by side, give each its own profile. See
Change settings and run again.
A result was moved and no longer loads¶
Move the whole output root, including cache, source, and runs, rather than
one individual run directory. Relative references require their corresponding
artifact store. verify checks cache integrity but does not recreate missing
artifacts.
CUDA or distributed execution fails immediately¶
Confirm a CUDA-enabled PyTorch installation, visible devices, and worker count.
Use device="cuda" under torchrun; indexed cuda:N settings are for a single
process. The CUDA guide separates independent jobs from collective DDP.
Physical GPU availability is not checked merely by generating a plan.
Coverage or reweighting looks poor¶
Do not infer scientific calibration from passing software tests. Inspect candidate resolution, attained HLD masses, truth repeats, training replicas, reference likelihood results, and overlap/importance-weight ESS. Read the scientific notes for the implemented definitions and finite-candidate limitations.
The documentation has not appeared on GitHub¶
The repository must contain .github/workflows/docs.yml at its root. Enable
Settings → Pages → Build and deployment → Source: GitHub Actions. Publishing
is manual: pushes only build-check the documentation, so run the documentation
workflow on the desired branch with deploy ticked. Inspect the build/deploy jobs
in the Actions tab. Detailed steps and permission caveats are in
Publishing the website.