Lightning-AI/pytorch-lightning · error · ValueError
f"`Trainer(barebones=True, num_sanity_val_steps={num_sanity_
Error message
f"`Trainer(barebones=True, num_sanity_val_steps={num_sanity_val_steps!r})` was passed." " Sanity checking can impact raw speed so it is disabled in barebones mode." What it means
Trainer was created with barebones=True while num_sanity_val_steps was set to a non-zero value. The sanity check runs validation batches before training and can affect raw speed, so barebones mode rejects it.
Source
Thrown at src/lightning/pytorch/trainer/trainer.py:368
raise ValueError(
f"`Trainer(barebones=True, enable_progress_bar={enable_progress_bar!r})` was passed."
" The progress bar can impact raw speed so it is disabled in barebones mode."
)
enable_progress_bar = False
if log_every_n_steps is not None and log_every_n_steps != 0:
raise ValueError(
f"`Trainer(barebones=True, log_every_n_steps={log_every_n_steps!r})` was passed."
" Logging can impact raw speed so it is disabled in barebones mode."
)
log_every_n_steps = 0
if enable_model_summary:
raise ValueError(
f"`Trainer(barebones=True, enable_model_summary={enable_model_summary!r})` was passed."
" Model summary can impact raw speed so it is disabled in barebones mode."
)
enable_model_summary = False
if num_sanity_val_steps is not None and num_sanity_val_steps != 0:
raise ValueError(
f"`Trainer(barebones=True, num_sanity_val_steps={num_sanity_val_steps!r})` was passed."
" Sanity checking can impact raw speed so it is disabled in barebones mode."
)
num_sanity_val_steps = 0
# opt-ins
if fast_dev_run is not False and fast_dev_run != 0:
raise ValueError(
f"`Trainer(barebones=True, fast_dev_run={fast_dev_run!r})` was passed."
" Development run is not meant for raw speed evaluation so it is disabled in barebones mode."
)
if detect_anomaly:
raise ValueError(
f"`Trainer(barebones=True, detect_anomaly={detect_anomaly!r})` was passed."
" Anomaly detection can impact raw speed so it is disabled in barebones mode."
)
if profiler is not None:
raise ValueError(
f"`Trainer(barebones=True, profiler={profiler!r})` was passed."View on GitHub (pinned to 9fed5c27d2)
Solutions
- Remove num_sanity_val_steps when using barebones=True
- Set num_sanity_val_steps=0 or None
- Drop barebones=True if sanity checking is needed
Example fix
// before trainer = Trainer(barebones=True, num_sanity_val_steps=2) // after trainer = Trainer(barebones=True)
Defensive patterns
Strategy: validation
Validate before calling
if cfg.get("barebones"):
cfg["num_sanity_val_steps"] = 0
trainer = Trainer(**cfg) Prevention
- Treat barebones=True as 'strip everything' — audit every Trainer kwarg against the barebones blocklist
When it happens
Trigger: Trainer(barebones=True, num_sanity_val_steps=2) (anything other than None or 0).
Common situations: Standard configs that set num_sanity_val_steps=2 being reused with barebones=True for speed runs.
Related errors
- f"`Trainer(barebones=True, log_every_n_steps={log_every_n_st
- f"`Trainer(barebones=True, enable_model_summary={enable_mode
- f"`Trainer(barebones=True, fast_dev_run={fast_dev_run!r})` w
- f"`Trainer(barebones=True, detect_anomaly={detect_anomaly!r}
- f"`Trainer(barebones=True, profiler={profiler!r})` was passe
AI-assisted analysis of Lightning-AI/pytorch-lightning@9fed5c27d2 (2026-08-28).
Data as JSON: /api/errors/55ecdf89606ca1c6.
Report an issue: GitHub.