[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-nv-generate-vae-finetune":3,"mdc--cd16fq-key":31,"related-repo-nvidia-nv-generate-vae-finetune":3301,"related-org-nvidia-nv-generate-vae-finetune":3407},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":20,"repoUrl":21,"updatedAt":22,"license":23,"forks":24,"topics":25,"repo":26,"sourceUrl":29,"mdContent":30},"nv-generate-vae-finetune","finetune MAISI VAE models from NIfTI data","Used for finetuning the NV-Generate-CTMR MAISI VAE from CT\u002FMRI NIfTI datalists. Not for clinical or production data approval.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,16,19],{"name":13,"slug":14,"type":15},"Machine Learning","machine-learning","tag",{"name":17,"slug":18,"type":15},"Life Sciences","life-sciences",{"name":9,"slug":8,"type":15},2473,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills","2026-07-14T05:30:26.679556","Apache-2.0",281,[],{"repoUrl":21,"stars":20,"forks":24,"topics":27,"description":28},[],"AI agent skills published by NVIDIA","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fnv-generate-vae-finetune","---\nname: nv-generate-vae-finetune\ndescription: Used for finetuning the NV-Generate-CTMR MAISI VAE from CT\u002FMRI NIfTI datalists. Not for clinical or production data approval.\nlicense: Apache-2.0\nallowed-tools: Bash\nmetadata:\n  author: NVIDIA MedTech Team\n  tags:\n    - MedTech\n    - CT\n    - MRI\n    - VAE\n    - finetune\n---\n\n# NV-Generate-VAE-Finetune\n\n## Purpose\n- Used for finetuning the NV-Generate-CTMR MAISI VAE\u002Fautoencoder from user-supplied CT or MRI NIfTI training volumes.\n- Not for clinical interpretation, regulatory use, or approving synthetic data for production training.\n- Upstream currently documents VAE training in `train_vae_tutorial.ipynb` and provides configs\u002Fhelpers, but not a `scripts.train_vae` CLI. This skill does not execute the notebook; it stages the required config\u002Fdatalist glue locally and uses upstream helper APIs.\n- Manifest I\u002FO: inputs are `datalist` and `data_base_dir`; outputs are `autoencoder_checkpoint`, `discriminator_checkpoint`, and `result_json`.\n- The underlying training contract is the upstream config\u002Fenv JSON (`config_maisi_vae_train.json` + `environment_maisi_vae_train.json`, as used in `train_vae_tutorial.ipynb`). The wrapper stages those JSON files for you and exposes the most-tuned fields as CLI flags; the sections below document the fields, their defaults, and how to monitor\u002Ftune a run.\n\n## Instructions\n- Read `skill_manifest.yaml` before changing arguments, side effects, or validation gates.\n- Run `scripts\u002Frun_vae_finetune.py` from the Medical AI Skills repo root.\n- If a host agent exposes `run_script`, use `run_script(\"scripts\u002Frun_vae_finetune.py\", args=[...])`; otherwise run the Bash\u002FPython command below.\n- Use `--preflight` first when checking a new datalist; remove `--preflight` only when the user explicitly wants to launch GPU finetuning.\n- For a staged preflight input bundle directory, use `BUNDLE\u002Fpreflight_datalist.json` as the datalist and `BUNDLE\u002Fpreflight_dataset` as `--data-base-dir` when those files are present.\n\n## Examples\n\nValidate and stage a preflight finetune check from an input bundle (the recommended first step — no GPU, no training). This is the single canonical command; replace `INPUT_BUNDLE` and `OUT_DIR` with your paths:\n\n```bash\nexport NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  INPUT_BUNDLE\u002Fpreflight_datalist.json \\\n  --data-base-dir INPUT_BUNDLE\u002Fpreflight_dataset \\\n  --output-dir OUT_DIR \\\n  --modality mri \\\n  --preflight\n```\n\nFor real GPU finetuning and other variations, see [Usage](#2-usage-one-line-training) below.\n\n## Available Scripts\n| Script | Purpose | Arguments |\n|---|---|---|\n| `scripts\u002Frun_vae_finetune.py` | Primary entrypoint declared by `skill_manifest.yaml`. | `DATALIST.json --data-base-dir DATA_DIR --output-dir OUT_DIR [--epochs N] [--modality mri] [--patch-size 64,64,64] [--preflight]` |\n\n## Prerequisites\n- An explicit `NV_GENERATE_ROOT` may point to the caller's local checkout and\n  must contain `configs\u002Fconfig_maisi_vae_train.json`, `scripts\u002Ftransforms.py`,\n  and `scripts\u002Futils.py`. The result records its current commit.\n- If `NV_GENERATE_ROOT` is unset, the wrapper searches `.workbench_data\u002Fupstreams\u002FNV-Generate-CTMR`.\n- `CUDA_VISIBLE_DEVICES` is optional and can be used to select the GPU for real training.\n- Runtime requirements: NVIDIA CUDA GPU for real training, Python packages from the upstream `requirements.txt`, `lpips`, and downloaded VAE weights unless using `--train-from-scratch`.\n- Side effects: writes staged configs, checkpoints, TensorBoard logs, and run summaries under the caller-provided `--output-dir`; may write model caches under the upstream checkout, `~\u002F.cache\u002Fhuggingface\u002F`, and `~\u002F.cache\u002Ftorch\u002F`; may contact `https:\u002F\u002Fhuggingface.co`, `https:\u002F\u002Fgithub.com`, and `https:\u002F\u002Fdownload.pytorch.org`.\n- The datalist is a MONAI-style JSON object with non-empty `training[]` and `validation[]` or `testing[]`. Each entry has an `image` path relative to `--data-base-dir` and optional `class` or `modality` of `ct` or `mri`.\n\nWhen no local checkout is supplied, create the recommended pinned default\ncheckout once:\n\n```bash\nif [ -z \"${NV_GENERATE_ROOT:-}\" ]; then\n  export NV_GENERATE_COMMIT=61c4ec709b84cad468852243c48e250bec732074\n  export NV_GENERATE_ROOT=\"$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7\"\n  if [ ! -d \"$NV_GENERATE_ROOT\u002F.git\" ]; then\n    git clone https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Generate-CTMR.git \"$NV_GENERATE_ROOT\"\n    git -C \"$NV_GENERATE_ROOT\" checkout --detach \"$NV_GENERATE_COMMIT\"\n  fi\nfi\n```\n\n## 1. Config and environment JSON (adapt to your data)\n\nThe wrapper copies the upstream VAE config\u002Fenv JSON from `$NV_GENERATE_ROOT\u002Fconfigs`, rewrites the fields below, and writes the staged copies under `OUT_DIR\u002Fworkflow\u002Fconfigs\u002F`. You normally only set your datalist and data root; the listed CLI flags override individual fields when you need to.\n\nEnvironment JSON (`environment_maisi_vae_train.json`):\n\n| Field | Set from | Notes |\n|---|---|---|\n| `model_dir` | `--output-dir` | Where `autoencoder.pt`\u002F`discriminator.pt` and best checkpoints are saved. |\n| `tfevent_path` | `--output-dir` | TensorBoard event directory. |\n| `finetune` | `--train-from-scratch` | `true` (default) loads `trained_autoencoder_path`; the flag sets it `false`. |\n| `trained_autoencoder_path` | upstream weights \u002F `--trained-autoencoder-path` | Starting VAE checkpoint when finetuning. |\n\nTraining fields (`config_maisi_vae_train.json`):\n\n| Field | Flag | Type | Default | Notes |\n|---|---|---|---|---|\n| `autoencoder_train.n_epochs` | `--epochs` | int | `1` | |\n| `autoencoder_train.batch_size` | `--batch-size` | int | `1` | Per-GPU (single-GPU runner). |\n| `autoencoder_train.patch_size` | `--patch-size` | int,int,int | `64,64,64` | Training crop. |\n| `autoencoder_train.val_batch_size` | `--val-batch-size` | int | `1` | |\n| `autoencoder_train.val_sliding_window_patch_size` | `--val-sliding-window-patch-size` | int,int,int | `96,96,64` | Sliding-window validation ROI. |\n| `autoencoder_train.lr` | `--lr` | float | `1e-4` | |\n| `autoencoder_train.perceptual_weight` | `--perceptual-weight` | float | `0.3` | LPIPS term. |\n| `autoencoder_train.kl_weight` | `--kl-weight` | float | `1e-7` | KL term. |\n| `autoencoder_train.adv_weight` | `--adv-weight` | float | `0.1` | Adversarial term. |\n| `autoencoder_train.recon_loss` | `--recon-loss` | `l1`\\|`l2` | `l1` | |\n| `autoencoder_train.val_interval` | `--val-interval` | int | `1` | Epochs between validation passes. |\n| `autoencoder_train.cache` | `--cache-rate` | float | `0.0` | MONAI `CacheDataset` fraction. |\n| `autoencoder_train.amp` | `--no-amp` | flag | on | Mixed precision; flag disables it. |\n| `data_option.random_aug` | `--no-random-aug` | flag | on | Random augmentation; flag disables it. |\n| `data_option.spacing_type` | `--spacing-type` | `original`\\|`fixed`\\|`rand_zoom` | `original` | |\n| `data_option.spacing` | `--spacing` | float,float,float | unset | Required when `spacing_type` is `fixed`\u002F`rand_zoom`. |\n| `data_option.select_channel` | `--select-channel` | int | `0` | Channel for multi-channel inputs. |\n\n`--modality` (`ct` or `mri`, default `mri`) fills the per-entry `class` for datalist items missing one. Validation\u002Ftesting entries are required because the training loop runs a validation pass.\n\nFor an end-to-end reference including example data download, see the upstream tutorial `train_vae_tutorial.ipynb`.\n\n## 2. Usage (one-line training)\n\nPreflight only:\n\n```bash\nexport NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_DATALIST.json \\\n  --data-base-dir PATH_TO_DATA_ROOT \\\n  --output-dir runs\u002Fnv_generate_vae_finetune_preflight \\\n  --preflight\n```\n\nPreflight bundle input:\n\n```bash\nexport NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_INPUT_BUNDLE\u002Fpreflight_datalist.json \\\n  --data-base-dir PATH_TO_INPUT_BUNDLE\u002Fpreflight_dataset \\\n  --output-dir runs\u002Fnv_generate_vae_finetune_preflight \\\n  --preflight\n```\n\nGPU finetuning:\n\n```bash\nexport NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython -m pip install -r \"$NV_GENERATE_ROOT\u002Frequirements.txt\" && \\\npython -m pip install lpips tensorboard && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_DATALIST.json \\\n  --data-base-dir PATH_TO_DATA_ROOT \\\n  --output-dir runs\u002Fnv_generate_vae_finetune \\\n  --epochs 1 \\\n  --modality mri \\\n  --patch-size 64,64,64 \\\n  --download-model-data\n```\n\nReplace `PATH_TO_DATALIST.json` and `PATH_TO_DATA_ROOT` with the user's actual paths. Do not use the fixture datalist for real training; it is a preflight-only placeholder.\n\n## 3. Monitor training (TensorBoard)\n\nThe runner writes TensorBoard scalars (per-iteration and per-epoch `recons_loss`, `kl_loss`, `p_loss`, adversarial\u002Freal\u002Ffake losses, and a validation `scale_factor`) under `OUT_DIR\u002Fartifacts\u002Ftfevent\u002Fautoencoder`. Launch TensorBoard against the output directory:\n\n```bash\npython -m pip install tensorboard && \\\ntensorboard --logdir runs\u002Fnv_generate_vae_finetune\u002Fartifacts\u002Ftfevent\n```\n\nThe same per-epoch loss history is also captured in `OUT_DIR\u002Fartifacts\u002Fworkflow_summary.json` and echoed in the JSON the wrapper prints to stdout (`loss_history`, best-checkpoint paths, `exit_code`, `stderr_tail`).\n\n## 4. Hyperparameter tuning and common pitfalls\n\n- **Reconstructions blurry** — raise `--perceptual-weight` (default `0.3`); try `--recon-loss l2` if edges look washed out.\n- **Posterior collapse \u002F over-regularized latents** — `--kl-weight` is intentionally tiny (`1e-7`); increasing it too much degrades reconstruction.\n- **Adversarial training unstable** — lower `--adv-weight` (default `0.1`) or `--lr`; a warmup schedule already ramps the LR over the first 20 epochs.\n- **Out-of-memory** — reduce `--patch-size` (e.g. `48,48,48`) and `--val-sliding-window-patch-size`, keep `--batch-size 1`, and lower `--cache-rate`.\n- **`datalist must include non-empty validation[] or testing[]`** — the validation loop is mandatory; add `validation[]` (or `testing[]`) entries.\n- **Single-GPU only** — the runner asserts exactly one CUDA GPU; set `CUDA_VISIBLE_DEVICES` to pick which one.\n\n## 5. Evaluate the finetuned VAE\n\nValidation reconstruction loss (lowest-`val_weighted_loss` epoch) is tracked automatically and the best autoencoder is saved as `autoencoder_epochN.pt` under `OUT_DIR\u002Fartifacts\u002Fmodels`. To evaluate downstream:\n\n- Compare validation `recons_loss`\u002F`p_loss` curves across runs in TensorBoard, and\n- Plug the finetuned autoencoder into a diffusion finetune\u002Fgeneration run (e.g. [`nv-generate-mr-brain-finetune`](..\u002Fnv-generate-mr-brain-finetune\u002FSKILL.md) via `--trained-autoencoder-path`) to confirm latents still decode to usable volumes.\n\nThis skill gates file accounting and reconstruction bookkeeping only — image quality and downstream utility must be judged by a domain expert.\n\n## Limitations\n- Requires a current upstream `NV-Generate-CTMR` checkout with VAE configs and helper APIs. The skill owns the runner glue and does not depend on the notebook.\n- Full training can be expensive and is not deterministic across hardware, CUDA, and package versions.\n- The wrapper gates file accounting and command provenance, not anatomical realism, reconstruction quality, or downstream model utility.\n- Not for clinical deployment, clinical interpretation, autonomous diagnosis, regulatory submission, or production training-data approval.\n\n## Troubleshooting\n| Error | Cause | Fix |\n|---|---|---|\n| `VAE configs\u002Fhelpers were not found` | `NV_GENERATE_ROOT` does not point at a current NV-Generate-CTMR checkout. | Clone or update `https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Generate-CTMR` and set `NV_GENERATE_ROOT`. |\n| `datalist must include non-empty validation[] or testing[]` | VAE training requires validation data for the configured validation loop. | Add `validation[]` or `testing[]` entries with relative image paths. |\n| CUDA, MONAI, or LPIPS import failure | Runtime environment lacks upstream dependencies. | Install `\"$NV_GENERATE_ROOT\u002Frequirements.txt\"` plus `lpips tensorboard` in the selected environment. |\n",{"data":32,"body":42},{"name":4,"description":6,"license":23,"allowed-tools":33,"metadata":34},"Bash",{"author":35,"tags":36},"NVIDIA MedTech Team",[37,38,39,40,41],"MedTech","CT","MRI","VAE","finetune",{"type":43,"children":44},"root",[45,53,60,170,176,275,281,302,509,523,529,592,598,814,819,1068,1074,1095,1107,1271,1282,2017,2055,2066,2072,2077,2229,2234,2385,2390,2683,2703,2709,2752,2808,2844,2850,3031,3037,3066,3111,3116,3122,3153,3159,3295],{"type":46,"tag":47,"props":48,"children":49},"element","h1",{"id":4},[50],{"type":51,"value":52},"text","NV-Generate-VAE-Finetune",{"type":46,"tag":54,"props":55,"children":57},"h2",{"id":56},"purpose",[58],{"type":51,"value":59},"Purpose",{"type":46,"tag":61,"props":62,"children":63},"ul",{},[64,70,75,97,142],{"type":46,"tag":65,"props":66,"children":67},"li",{},[68],{"type":51,"value":69},"Used for finetuning the NV-Generate-CTMR MAISI VAE\u002Fautoencoder from user-supplied CT or MRI NIfTI training volumes.",{"type":46,"tag":65,"props":71,"children":72},{},[73],{"type":51,"value":74},"Not for clinical interpretation, regulatory use, or approving synthetic data for production training.",{"type":46,"tag":65,"props":76,"children":77},{},[78,80,87,89,95],{"type":51,"value":79},"Upstream currently documents VAE training in ",{"type":46,"tag":81,"props":82,"children":84},"code",{"className":83},[],[85],{"type":51,"value":86},"train_vae_tutorial.ipynb",{"type":51,"value":88}," and provides configs\u002Fhelpers, but not a ",{"type":46,"tag":81,"props":90,"children":92},{"className":91},[],[93],{"type":51,"value":94},"scripts.train_vae",{"type":51,"value":96}," CLI. This skill does not execute the notebook; it stages the required config\u002Fdatalist glue locally and uses upstream helper APIs.",{"type":46,"tag":65,"props":98,"children":99},{},[100,102,108,110,116,118,124,126,132,134,140],{"type":51,"value":101},"Manifest I\u002FO: inputs are ",{"type":46,"tag":81,"props":103,"children":105},{"className":104},[],[106],{"type":51,"value":107},"datalist",{"type":51,"value":109}," and ",{"type":46,"tag":81,"props":111,"children":113},{"className":112},[],[114],{"type":51,"value":115},"data_base_dir",{"type":51,"value":117},"; outputs are ",{"type":46,"tag":81,"props":119,"children":121},{"className":120},[],[122],{"type":51,"value":123},"autoencoder_checkpoint",{"type":51,"value":125},", ",{"type":46,"tag":81,"props":127,"children":129},{"className":128},[],[130],{"type":51,"value":131},"discriminator_checkpoint",{"type":51,"value":133},", and ",{"type":46,"tag":81,"props":135,"children":137},{"className":136},[],[138],{"type":51,"value":139},"result_json",{"type":51,"value":141},".",{"type":46,"tag":65,"props":143,"children":144},{},[145,147,153,155,161,163,168],{"type":51,"value":146},"The underlying training contract is the upstream config\u002Fenv JSON (",{"type":46,"tag":81,"props":148,"children":150},{"className":149},[],[151],{"type":51,"value":152},"config_maisi_vae_train.json",{"type":51,"value":154}," + ",{"type":46,"tag":81,"props":156,"children":158},{"className":157},[],[159],{"type":51,"value":160},"environment_maisi_vae_train.json",{"type":51,"value":162},", as used in ",{"type":46,"tag":81,"props":164,"children":166},{"className":165},[],[167],{"type":51,"value":86},{"type":51,"value":169},"). The wrapper stages those JSON files for you and exposes the most-tuned fields as CLI flags; the sections below document the fields, their defaults, and how to monitor\u002Ftune a run.",{"type":46,"tag":54,"props":171,"children":173},{"id":172},"instructions",[174],{"type":51,"value":175},"Instructions",{"type":46,"tag":61,"props":177,"children":178},{},[179,192,205,226,246],{"type":46,"tag":65,"props":180,"children":181},{},[182,184,190],{"type":51,"value":183},"Read ",{"type":46,"tag":81,"props":185,"children":187},{"className":186},[],[188],{"type":51,"value":189},"skill_manifest.yaml",{"type":51,"value":191}," before changing arguments, side effects, or validation gates.",{"type":46,"tag":65,"props":193,"children":194},{},[195,197,203],{"type":51,"value":196},"Run ",{"type":46,"tag":81,"props":198,"children":200},{"className":199},[],[201],{"type":51,"value":202},"scripts\u002Frun_vae_finetune.py",{"type":51,"value":204}," from the Medical AI Skills repo root.",{"type":46,"tag":65,"props":206,"children":207},{},[208,210,216,218,224],{"type":51,"value":209},"If a host agent exposes ",{"type":46,"tag":81,"props":211,"children":213},{"className":212},[],[214],{"type":51,"value":215},"run_script",{"type":51,"value":217},", use ",{"type":46,"tag":81,"props":219,"children":221},{"className":220},[],[222],{"type":51,"value":223},"run_script(\"scripts\u002Frun_vae_finetune.py\", args=[...])",{"type":51,"value":225},"; otherwise run the Bash\u002FPython command below.",{"type":46,"tag":65,"props":227,"children":228},{},[229,231,237,239,244],{"type":51,"value":230},"Use ",{"type":46,"tag":81,"props":232,"children":234},{"className":233},[],[235],{"type":51,"value":236},"--preflight",{"type":51,"value":238}," first when checking a new datalist; remove ",{"type":46,"tag":81,"props":240,"children":242},{"className":241},[],[243],{"type":51,"value":236},{"type":51,"value":245}," only when the user explicitly wants to launch GPU finetuning.",{"type":46,"tag":65,"props":247,"children":248},{},[249,251,257,259,265,267,273],{"type":51,"value":250},"For a staged preflight input bundle directory, use ",{"type":46,"tag":81,"props":252,"children":254},{"className":253},[],[255],{"type":51,"value":256},"BUNDLE\u002Fpreflight_datalist.json",{"type":51,"value":258}," as the datalist and ",{"type":46,"tag":81,"props":260,"children":262},{"className":261},[],[263],{"type":51,"value":264},"BUNDLE\u002Fpreflight_dataset",{"type":51,"value":266}," as ",{"type":46,"tag":81,"props":268,"children":270},{"className":269},[],[271],{"type":51,"value":272},"--data-base-dir",{"type":51,"value":274}," when those files are present.",{"type":46,"tag":54,"props":276,"children":278},{"id":277},"examples",[279],{"type":51,"value":280},"Examples",{"type":46,"tag":282,"props":283,"children":284},"p",{},[285,287,293,294,300],{"type":51,"value":286},"Validate and stage a preflight finetune check from an input bundle (the recommended first step — no GPU, no training). This is the single canonical command; replace ",{"type":46,"tag":81,"props":288,"children":290},{"className":289},[],[291],{"type":51,"value":292},"INPUT_BUNDLE",{"type":51,"value":109},{"type":46,"tag":81,"props":295,"children":297},{"className":296},[],[298],{"type":51,"value":299},"OUT_DIR",{"type":51,"value":301}," with your paths:",{"type":46,"tag":303,"props":304,"children":309},"pre",{"className":305,"code":306,"language":307,"meta":308,"style":308},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  INPUT_BUNDLE\u002Fpreflight_datalist.json \\\n  --data-base-dir INPUT_BUNDLE\u002Fpreflight_dataset \\\n  --output-dir OUT_DIR \\\n  --modality mri \\\n  --preflight\n","bash","",[310],{"type":46,"tag":81,"props":311,"children":312},{"__ignoreMap":308},[313,414,433,446,464,482,500],{"type":46,"tag":314,"props":315,"children":318},"span",{"class":316,"line":317},"line",1,[319,325,331,337,342,347,352,357,362,367,372,376,381,385,390,394,399,404,409],{"type":46,"tag":314,"props":320,"children":322},{"style":321},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[323],{"type":51,"value":324},"export",{"type":46,"tag":314,"props":326,"children":328},{"style":327},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[329],{"type":51,"value":330}," NV_GENERATE_ROOT",{"type":46,"tag":314,"props":332,"children":334},{"style":333},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[335],{"type":51,"value":336},"=",{"type":46,"tag":314,"props":338,"children":339},{"style":333},[340],{"type":51,"value":341},"\"${",{"type":46,"tag":314,"props":343,"children":344},{"style":327},[345],{"type":51,"value":346},"NV_GENERATE_ROOT",{"type":46,"tag":314,"props":348,"children":349},{"style":333},[350],{"type":51,"value":351},":-",{"type":46,"tag":314,"props":353,"children":354},{"style":327},[355],{"type":51,"value":356},"$HOME",{"type":46,"tag":314,"props":358,"children":359},{"style":333},[360],{"type":51,"value":361},"\u002F",{"type":46,"tag":314,"props":363,"children":365},{"style":364},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[366],{"type":51,"value":141},{"type":46,"tag":314,"props":368,"children":369},{"style":327},[370],{"type":51,"value":371},"cache",{"type":46,"tag":314,"props":373,"children":374},{"style":333},[375],{"type":51,"value":361},{"type":46,"tag":314,"props":377,"children":378},{"style":327},[379],{"type":51,"value":380},"nvidia-skills",{"type":46,"tag":314,"props":382,"children":383},{"style":333},[384],{"type":51,"value":361},{"type":46,"tag":314,"props":386,"children":387},{"style":327},[388],{"type":51,"value":389},"upstreams",{"type":46,"tag":314,"props":391,"children":392},{"style":333},[393],{"type":51,"value":361},{"type":46,"tag":314,"props":395,"children":396},{"style":327},[397],{"type":51,"value":398},"NV-Generate-CTMR-61c4ec7",{"type":46,"tag":314,"props":400,"children":401},{"style":333},[402],{"type":51,"value":403},"}\"",{"type":46,"tag":314,"props":405,"children":406},{"style":333},[407],{"type":51,"value":408}," &&",{"type":46,"tag":314,"props":410,"children":411},{"style":327},[412],{"type":51,"value":413}," \\\n",{"type":46,"tag":314,"props":415,"children":417},{"class":316,"line":416},2,[418,424,429],{"type":46,"tag":314,"props":419,"children":421},{"style":420},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[422],{"type":51,"value":423},"python",{"type":46,"tag":314,"props":425,"children":426},{"style":364},[427],{"type":51,"value":428}," skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py",{"type":46,"tag":314,"props":430,"children":431},{"style":327},[432],{"type":51,"value":413},{"type":46,"tag":314,"props":434,"children":436},{"class":316,"line":435},3,[437,442],{"type":46,"tag":314,"props":438,"children":439},{"style":364},[440],{"type":51,"value":441},"  INPUT_BUNDLE\u002Fpreflight_datalist.json",{"type":46,"tag":314,"props":443,"children":444},{"style":327},[445],{"type":51,"value":413},{"type":46,"tag":314,"props":447,"children":449},{"class":316,"line":448},4,[450,455,460],{"type":46,"tag":314,"props":451,"children":452},{"style":364},[453],{"type":51,"value":454},"  --data-base-dir",{"type":46,"tag":314,"props":456,"children":457},{"style":364},[458],{"type":51,"value":459}," INPUT_BUNDLE\u002Fpreflight_dataset",{"type":46,"tag":314,"props":461,"children":462},{"style":327},[463],{"type":51,"value":413},{"type":46,"tag":314,"props":465,"children":467},{"class":316,"line":466},5,[468,473,478],{"type":46,"tag":314,"props":469,"children":470},{"style":364},[471],{"type":51,"value":472},"  --output-dir",{"type":46,"tag":314,"props":474,"children":475},{"style":364},[476],{"type":51,"value":477}," OUT_DIR",{"type":46,"tag":314,"props":479,"children":480},{"style":327},[481],{"type":51,"value":413},{"type":46,"tag":314,"props":483,"children":485},{"class":316,"line":484},6,[486,491,496],{"type":46,"tag":314,"props":487,"children":488},{"style":364},[489],{"type":51,"value":490},"  --modality",{"type":46,"tag":314,"props":492,"children":493},{"style":364},[494],{"type":51,"value":495}," mri",{"type":46,"tag":314,"props":497,"children":498},{"style":327},[499],{"type":51,"value":413},{"type":46,"tag":314,"props":501,"children":503},{"class":316,"line":502},7,[504],{"type":46,"tag":314,"props":505,"children":506},{"style":364},[507],{"type":51,"value":508},"  --preflight\n",{"type":46,"tag":282,"props":510,"children":511},{},[512,514,521],{"type":51,"value":513},"For real GPU finetuning and other variations, see ",{"type":46,"tag":515,"props":516,"children":518},"a",{"href":517},"#2-usage-one-line-training",[519],{"type":51,"value":520},"Usage",{"type":51,"value":522}," below.",{"type":46,"tag":54,"props":524,"children":526},{"id":525},"available-scripts",[527],{"type":51,"value":528},"Available Scripts",{"type":46,"tag":530,"props":531,"children":532},"table",{},[533,556],{"type":46,"tag":534,"props":535,"children":536},"thead",{},[537],{"type":46,"tag":538,"props":539,"children":540},"tr",{},[541,547,551],{"type":46,"tag":542,"props":543,"children":544},"th",{},[545],{"type":51,"value":546},"Script",{"type":46,"tag":542,"props":548,"children":549},{},[550],{"type":51,"value":59},{"type":46,"tag":542,"props":552,"children":553},{},[554],{"type":51,"value":555},"Arguments",{"type":46,"tag":557,"props":558,"children":559},"tbody",{},[560],{"type":46,"tag":538,"props":561,"children":562},{},[563,572,583],{"type":46,"tag":564,"props":565,"children":566},"td",{},[567],{"type":46,"tag":81,"props":568,"children":570},{"className":569},[],[571],{"type":51,"value":202},{"type":46,"tag":564,"props":573,"children":574},{},[575,577,582],{"type":51,"value":576},"Primary entrypoint declared by ",{"type":46,"tag":81,"props":578,"children":580},{"className":579},[],[581],{"type":51,"value":189},{"type":51,"value":141},{"type":46,"tag":564,"props":584,"children":585},{},[586],{"type":46,"tag":81,"props":587,"children":589},{"className":588},[],[590],{"type":51,"value":591},"DATALIST.json --data-base-dir DATA_DIR --output-dir OUT_DIR [--epochs N] [--modality mri] [--patch-size 64,64,64] [--preflight]",{"type":46,"tag":54,"props":593,"children":595},{"id":594},"prerequisites",[596],{"type":51,"value":597},"Prerequisites",{"type":46,"tag":61,"props":599,"children":600},{},[601,636,655,666,693,742],{"type":46,"tag":65,"props":602,"children":603},{},[604,606,611,613,619,620,626,628,634],{"type":51,"value":605},"An explicit ",{"type":46,"tag":81,"props":607,"children":609},{"className":608},[],[610],{"type":51,"value":346},{"type":51,"value":612}," may point to the caller's local checkout and\nmust contain ",{"type":46,"tag":81,"props":614,"children":616},{"className":615},[],[617],{"type":51,"value":618},"configs\u002Fconfig_maisi_vae_train.json",{"type":51,"value":125},{"type":46,"tag":81,"props":621,"children":623},{"className":622},[],[624],{"type":51,"value":625},"scripts\u002Ftransforms.py",{"type":51,"value":627},",\nand ",{"type":46,"tag":81,"props":629,"children":631},{"className":630},[],[632],{"type":51,"value":633},"scripts\u002Futils.py",{"type":51,"value":635},". The result records its current commit.",{"type":46,"tag":65,"props":637,"children":638},{},[639,641,646,648,654],{"type":51,"value":640},"If ",{"type":46,"tag":81,"props":642,"children":644},{"className":643},[],[645],{"type":51,"value":346},{"type":51,"value":647}," is unset, the wrapper searches ",{"type":46,"tag":81,"props":649,"children":651},{"className":650},[],[652],{"type":51,"value":653},".workbench_data\u002Fupstreams\u002FNV-Generate-CTMR",{"type":51,"value":141},{"type":46,"tag":65,"props":656,"children":657},{},[658,664],{"type":46,"tag":81,"props":659,"children":661},{"className":660},[],[662],{"type":51,"value":663},"CUDA_VISIBLE_DEVICES",{"type":51,"value":665}," is optional and can be used to select the GPU for real training.",{"type":46,"tag":65,"props":667,"children":668},{},[669,671,677,678,684,686,692],{"type":51,"value":670},"Runtime requirements: NVIDIA CUDA GPU for real training, Python packages from the upstream ",{"type":46,"tag":81,"props":672,"children":674},{"className":673},[],[675],{"type":51,"value":676},"requirements.txt",{"type":51,"value":125},{"type":46,"tag":81,"props":679,"children":681},{"className":680},[],[682],{"type":51,"value":683},"lpips",{"type":51,"value":685},", and downloaded VAE weights unless using ",{"type":46,"tag":81,"props":687,"children":689},{"className":688},[],[690],{"type":51,"value":691},"--train-from-scratch",{"type":51,"value":141},{"type":46,"tag":65,"props":694,"children":695},{},[696,698,704,706,712,713,719,721,727,728,734,735,741],{"type":51,"value":697},"Side effects: writes staged configs, checkpoints, TensorBoard logs, and run summaries under the caller-provided ",{"type":46,"tag":81,"props":699,"children":701},{"className":700},[],[702],{"type":51,"value":703},"--output-dir",{"type":51,"value":705},"; may write model caches under the upstream checkout, ",{"type":46,"tag":81,"props":707,"children":709},{"className":708},[],[710],{"type":51,"value":711},"~\u002F.cache\u002Fhuggingface\u002F",{"type":51,"value":133},{"type":46,"tag":81,"props":714,"children":716},{"className":715},[],[717],{"type":51,"value":718},"~\u002F.cache\u002Ftorch\u002F",{"type":51,"value":720},"; may contact ",{"type":46,"tag":81,"props":722,"children":724},{"className":723},[],[725],{"type":51,"value":726},"https:\u002F\u002Fhuggingface.co",{"type":51,"value":125},{"type":46,"tag":81,"props":729,"children":731},{"className":730},[],[732],{"type":51,"value":733},"https:\u002F\u002Fgithub.com",{"type":51,"value":133},{"type":46,"tag":81,"props":736,"children":738},{"className":737},[],[739],{"type":51,"value":740},"https:\u002F\u002Fdownload.pytorch.org",{"type":51,"value":141},{"type":46,"tag":65,"props":743,"children":744},{},[745,747,753,754,760,762,768,770,776,778,783,785,791,792,798,800,806,807,813],{"type":51,"value":746},"The datalist is a MONAI-style JSON object with non-empty ",{"type":46,"tag":81,"props":748,"children":750},{"className":749},[],[751],{"type":51,"value":752},"training[]",{"type":51,"value":109},{"type":46,"tag":81,"props":755,"children":757},{"className":756},[],[758],{"type":51,"value":759},"validation[]",{"type":51,"value":761}," or ",{"type":46,"tag":81,"props":763,"children":765},{"className":764},[],[766],{"type":51,"value":767},"testing[]",{"type":51,"value":769},". Each entry has an ",{"type":46,"tag":81,"props":771,"children":773},{"className":772},[],[774],{"type":51,"value":775},"image",{"type":51,"value":777}," path relative to ",{"type":46,"tag":81,"props":779,"children":781},{"className":780},[],[782],{"type":51,"value":272},{"type":51,"value":784}," and optional ",{"type":46,"tag":81,"props":786,"children":788},{"className":787},[],[789],{"type":51,"value":790},"class",{"type":51,"value":761},{"type":46,"tag":81,"props":793,"children":795},{"className":794},[],[796],{"type":51,"value":797},"modality",{"type":51,"value":799}," of ",{"type":46,"tag":81,"props":801,"children":803},{"className":802},[],[804],{"type":51,"value":805},"ct",{"type":51,"value":761},{"type":46,"tag":81,"props":808,"children":810},{"className":809},[],[811],{"type":51,"value":812},"mri",{"type":51,"value":141},{"type":46,"tag":282,"props":815,"children":816},{},[817],{"type":51,"value":818},"When no local checkout is supplied, create the recommended pinned default\ncheckout once:",{"type":46,"tag":303,"props":820,"children":822},{"className":305,"code":821,"language":307,"meta":308,"style":308},"if [ -z \"${NV_GENERATE_ROOT:-}\" ]; then\n  export NV_GENERATE_COMMIT=61c4ec709b84cad468852243c48e250bec732074\n  export NV_GENERATE_ROOT=\"$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7\"\n  if [ ! -d \"$NV_GENERATE_ROOT\u002F.git\" ]; then\n    git clone https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Generate-CTMR.git \"$NV_GENERATE_ROOT\"\n    git -C \"$NV_GENERATE_ROOT\" checkout --detach \"$NV_GENERATE_COMMIT\"\n  fi\nfi\n",[823],{"type":46,"tag":81,"props":824,"children":825},{"__ignoreMap":308},[826,869,891,925,974,1004,1051,1059],{"type":46,"tag":314,"props":827,"children":828},{"class":316,"line":317},[829,835,840,845,850,854,859,864],{"type":46,"tag":314,"props":830,"children":832},{"style":831},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[833],{"type":51,"value":834},"if",{"type":46,"tag":314,"props":836,"children":837},{"style":333},[838],{"type":51,"value":839}," [",{"type":46,"tag":314,"props":841,"children":842},{"style":333},[843],{"type":51,"value":844}," -z",{"type":46,"tag":314,"props":846,"children":847},{"style":333},[848],{"type":51,"value":849}," \"${",{"type":46,"tag":314,"props":851,"children":852},{"style":327},[853],{"type":51,"value":346},{"type":46,"tag":314,"props":855,"children":856},{"style":333},[857],{"type":51,"value":858},":-}\"",{"type":46,"tag":314,"props":860,"children":861},{"style":333},[862],{"type":51,"value":863}," ];",{"type":46,"tag":314,"props":865,"children":866},{"style":831},[867],{"type":51,"value":868}," then\n",{"type":46,"tag":314,"props":870,"children":871},{"class":316,"line":416},[872,877,882,886],{"type":46,"tag":314,"props":873,"children":874},{"style":321},[875],{"type":51,"value":876},"  export",{"type":46,"tag":314,"props":878,"children":879},{"style":327},[880],{"type":51,"value":881}," NV_GENERATE_COMMIT",{"type":46,"tag":314,"props":883,"children":884},{"style":333},[885],{"type":51,"value":336},{"type":46,"tag":314,"props":887,"children":888},{"style":327},[889],{"type":51,"value":890},"61c4ec709b84cad468852243c48e250bec732074\n",{"type":46,"tag":314,"props":892,"children":893},{"class":316,"line":435},[894,898,902,906,911,915,920],{"type":46,"tag":314,"props":895,"children":896},{"style":321},[897],{"type":51,"value":876},{"type":46,"tag":314,"props":899,"children":900},{"style":327},[901],{"type":51,"value":330},{"type":46,"tag":314,"props":903,"children":904},{"style":333},[905],{"type":51,"value":336},{"type":46,"tag":314,"props":907,"children":908},{"style":333},[909],{"type":51,"value":910},"\"",{"type":46,"tag":314,"props":912,"children":913},{"style":327},[914],{"type":51,"value":356},{"type":46,"tag":314,"props":916,"children":917},{"style":364},[918],{"type":51,"value":919},"\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7",{"type":46,"tag":314,"props":921,"children":922},{"style":333},[923],{"type":51,"value":924},"\"\n",{"type":46,"tag":314,"props":926,"children":927},{"class":316,"line":448},[928,933,937,942,947,952,957,962,966,970],{"type":46,"tag":314,"props":929,"children":930},{"style":831},[931],{"type":51,"value":932},"  if",{"type":46,"tag":314,"props":934,"children":935},{"style":333},[936],{"type":51,"value":839},{"type":46,"tag":314,"props":938,"children":939},{"style":333},[940],{"type":51,"value":941}," !",{"type":46,"tag":314,"props":943,"children":944},{"style":333},[945],{"type":51,"value":946}," -d",{"type":46,"tag":314,"props":948,"children":949},{"style":333},[950],{"type":51,"value":951}," \"",{"type":46,"tag":314,"props":953,"children":954},{"style":327},[955],{"type":51,"value":956},"$NV_GENERATE_ROOT",{"type":46,"tag":314,"props":958,"children":959},{"style":364},[960],{"type":51,"value":961},"\u002F.git",{"type":46,"tag":314,"props":963,"children":964},{"style":333},[965],{"type":51,"value":910},{"type":46,"tag":314,"props":967,"children":968},{"style":333},[969],{"type":51,"value":863},{"type":46,"tag":314,"props":971,"children":972},{"style":831},[973],{"type":51,"value":868},{"type":46,"tag":314,"props":975,"children":976},{"class":316,"line":466},[977,982,987,992,996,1000],{"type":46,"tag":314,"props":978,"children":979},{"style":420},[980],{"type":51,"value":981},"    git",{"type":46,"tag":314,"props":983,"children":984},{"style":364},[985],{"type":51,"value":986}," clone",{"type":46,"tag":314,"props":988,"children":989},{"style":364},[990],{"type":51,"value":991}," https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Generate-CTMR.git",{"type":46,"tag":314,"props":993,"children":994},{"style":333},[995],{"type":51,"value":951},{"type":46,"tag":314,"props":997,"children":998},{"style":327},[999],{"type":51,"value":956},{"type":46,"tag":314,"props":1001,"children":1002},{"style":333},[1003],{"type":51,"value":924},{"type":46,"tag":314,"props":1005,"children":1006},{"class":316,"line":484},[1007,1011,1016,1020,1024,1028,1033,1038,1042,1047],{"type":46,"tag":314,"props":1008,"children":1009},{"style":420},[1010],{"type":51,"value":981},{"type":46,"tag":314,"props":1012,"children":1013},{"style":364},[1014],{"type":51,"value":1015}," -C",{"type":46,"tag":314,"props":1017,"children":1018},{"style":333},[1019],{"type":51,"value":951},{"type":46,"tag":314,"props":1021,"children":1022},{"style":327},[1023],{"type":51,"value":956},{"type":46,"tag":314,"props":1025,"children":1026},{"style":333},[1027],{"type":51,"value":910},{"type":46,"tag":314,"props":1029,"children":1030},{"style":364},[1031],{"type":51,"value":1032}," checkout",{"type":46,"tag":314,"props":1034,"children":1035},{"style":364},[1036],{"type":51,"value":1037}," --detach",{"type":46,"tag":314,"props":1039,"children":1040},{"style":333},[1041],{"type":51,"value":951},{"type":46,"tag":314,"props":1043,"children":1044},{"style":327},[1045],{"type":51,"value":1046},"$NV_GENERATE_COMMIT",{"type":46,"tag":314,"props":1048,"children":1049},{"style":333},[1050],{"type":51,"value":924},{"type":46,"tag":314,"props":1052,"children":1053},{"class":316,"line":502},[1054],{"type":46,"tag":314,"props":1055,"children":1056},{"style":831},[1057],{"type":51,"value":1058},"  fi\n",{"type":46,"tag":314,"props":1060,"children":1062},{"class":316,"line":1061},8,[1063],{"type":46,"tag":314,"props":1064,"children":1065},{"style":831},[1066],{"type":51,"value":1067},"fi\n",{"type":46,"tag":54,"props":1069,"children":1071},{"id":1070},"_1-config-and-environment-json-adapt-to-your-data",[1072],{"type":51,"value":1073},"1. Config and environment JSON (adapt to your data)",{"type":46,"tag":282,"props":1075,"children":1076},{},[1077,1079,1085,1087,1093],{"type":51,"value":1078},"The wrapper copies the upstream VAE config\u002Fenv JSON from ",{"type":46,"tag":81,"props":1080,"children":1082},{"className":1081},[],[1083],{"type":51,"value":1084},"$NV_GENERATE_ROOT\u002Fconfigs",{"type":51,"value":1086},", rewrites the fields below, and writes the staged copies under ",{"type":46,"tag":81,"props":1088,"children":1090},{"className":1089},[],[1091],{"type":51,"value":1092},"OUT_DIR\u002Fworkflow\u002Fconfigs\u002F",{"type":51,"value":1094},". You normally only set your datalist and data root; the listed CLI flags override individual fields when you need to.",{"type":46,"tag":282,"props":1096,"children":1097},{},[1098,1100,1105],{"type":51,"value":1099},"Environment JSON (",{"type":46,"tag":81,"props":1101,"children":1103},{"className":1102},[],[1104],{"type":51,"value":160},{"type":51,"value":1106},"):",{"type":46,"tag":530,"props":1108,"children":1109},{},[1110,1131],{"type":46,"tag":534,"props":1111,"children":1112},{},[1113],{"type":46,"tag":538,"props":1114,"children":1115},{},[1116,1121,1126],{"type":46,"tag":542,"props":1117,"children":1118},{},[1119],{"type":51,"value":1120},"Field",{"type":46,"tag":542,"props":1122,"children":1123},{},[1124],{"type":51,"value":1125},"Set from",{"type":46,"tag":542,"props":1127,"children":1128},{},[1129],{"type":51,"value":1130},"Notes",{"type":46,"tag":557,"props":1132,"children":1133},{},[1134,1174,1199,1244],{"type":46,"tag":538,"props":1135,"children":1136},{},[1137,1146,1154],{"type":46,"tag":564,"props":1138,"children":1139},{},[1140],{"type":46,"tag":81,"props":1141,"children":1143},{"className":1142},[],[1144],{"type":51,"value":1145},"model_dir",{"type":46,"tag":564,"props":1147,"children":1148},{},[1149],{"type":46,"tag":81,"props":1150,"children":1152},{"className":1151},[],[1153],{"type":51,"value":703},{"type":46,"tag":564,"props":1155,"children":1156},{},[1157,1159,1165,1166,1172],{"type":51,"value":1158},"Where ",{"type":46,"tag":81,"props":1160,"children":1162},{"className":1161},[],[1163],{"type":51,"value":1164},"autoencoder.pt",{"type":51,"value":361},{"type":46,"tag":81,"props":1167,"children":1169},{"className":1168},[],[1170],{"type":51,"value":1171},"discriminator.pt",{"type":51,"value":1173}," and best checkpoints are saved.",{"type":46,"tag":538,"props":1175,"children":1176},{},[1177,1186,1194],{"type":46,"tag":564,"props":1178,"children":1179},{},[1180],{"type":46,"tag":81,"props":1181,"children":1183},{"className":1182},[],[1184],{"type":51,"value":1185},"tfevent_path",{"type":46,"tag":564,"props":1187,"children":1188},{},[1189],{"type":46,"tag":81,"props":1190,"children":1192},{"className":1191},[],[1193],{"type":51,"value":703},{"type":46,"tag":564,"props":1195,"children":1196},{},[1197],{"type":51,"value":1198},"TensorBoard event directory.",{"type":46,"tag":538,"props":1200,"children":1201},{},[1202,1210,1218],{"type":46,"tag":564,"props":1203,"children":1204},{},[1205],{"type":46,"tag":81,"props":1206,"children":1208},{"className":1207},[],[1209],{"type":51,"value":41},{"type":46,"tag":564,"props":1211,"children":1212},{},[1213],{"type":46,"tag":81,"props":1214,"children":1216},{"className":1215},[],[1217],{"type":51,"value":691},{"type":46,"tag":564,"props":1219,"children":1220},{},[1221,1227,1229,1235,1237,1243],{"type":46,"tag":81,"props":1222,"children":1224},{"className":1223},[],[1225],{"type":51,"value":1226},"true",{"type":51,"value":1228}," (default) loads ",{"type":46,"tag":81,"props":1230,"children":1232},{"className":1231},[],[1233],{"type":51,"value":1234},"trained_autoencoder_path",{"type":51,"value":1236},"; the flag sets it ",{"type":46,"tag":81,"props":1238,"children":1240},{"className":1239},[],[1241],{"type":51,"value":1242},"false",{"type":51,"value":141},{"type":46,"tag":538,"props":1245,"children":1246},{},[1247,1255,1266],{"type":46,"tag":564,"props":1248,"children":1249},{},[1250],{"type":46,"tag":81,"props":1251,"children":1253},{"className":1252},[],[1254],{"type":51,"value":1234},{"type":46,"tag":564,"props":1256,"children":1257},{},[1258,1260],{"type":51,"value":1259},"upstream weights \u002F ",{"type":46,"tag":81,"props":1261,"children":1263},{"className":1262},[],[1264],{"type":51,"value":1265},"--trained-autoencoder-path",{"type":46,"tag":564,"props":1267,"children":1268},{},[1269],{"type":51,"value":1270},"Starting VAE checkpoint when finetuning.",{"type":46,"tag":282,"props":1272,"children":1273},{},[1274,1276,1281],{"type":51,"value":1275},"Training fields (",{"type":46,"tag":81,"props":1277,"children":1279},{"className":1278},[],[1280],{"type":51,"value":152},{"type":51,"value":1106},{"type":46,"tag":530,"props":1283,"children":1284},{},[1285,1314],{"type":46,"tag":534,"props":1286,"children":1287},{},[1288],{"type":46,"tag":538,"props":1289,"children":1290},{},[1291,1295,1300,1305,1310],{"type":46,"tag":542,"props":1292,"children":1293},{},[1294],{"type":51,"value":1120},{"type":46,"tag":542,"props":1296,"children":1297},{},[1298],{"type":51,"value":1299},"Flag",{"type":46,"tag":542,"props":1301,"children":1302},{},[1303],{"type":51,"value":1304},"Type",{"type":46,"tag":542,"props":1306,"children":1307},{},[1308],{"type":51,"value":1309},"Default",{"type":46,"tag":542,"props":1311,"children":1312},{},[1313],{"type":51,"value":1130},{"type":46,"tag":557,"props":1315,"children":1316},{},[1317,1355,1393,1433,1469,1508,1546,1585,1624,1663,1712,1750,1797,1833,1867,1922,1978],{"type":46,"tag":538,"props":1318,"children":1319},{},[1320,1329,1338,1343,1352],{"type":46,"tag":564,"props":1321,"children":1322},{},[1323],{"type":46,"tag":81,"props":1324,"children":1326},{"className":1325},[],[1327],{"type":51,"value":1328},"autoencoder_train.n_epochs",{"type":46,"tag":564,"props":1330,"children":1331},{},[1332],{"type":46,"tag":81,"props":1333,"children":1335},{"className":1334},[],[1336],{"type":51,"value":1337},"--epochs",{"type":46,"tag":564,"props":1339,"children":1340},{},[1341],{"type":51,"value":1342},"int",{"type":46,"tag":564,"props":1344,"children":1345},{},[1346],{"type":46,"tag":81,"props":1347,"children":1349},{"className":1348},[],[1350],{"type":51,"value":1351},"1",{"type":46,"tag":564,"props":1353,"children":1354},{},[],{"type":46,"tag":538,"props":1356,"children":1357},{},[1358,1367,1376,1380,1388],{"type":46,"tag":564,"props":1359,"children":1360},{},[1361],{"type":46,"tag":81,"props":1362,"children":1364},{"className":1363},[],[1365],{"type":51,"value":1366},"autoencoder_train.batch_size",{"type":46,"tag":564,"props":1368,"children":1369},{},[1370],{"type":46,"tag":81,"props":1371,"children":1373},{"className":1372},[],[1374],{"type":51,"value":1375},"--batch-size",{"type":46,"tag":564,"props":1377,"children":1378},{},[1379],{"type":51,"value":1342},{"type":46,"tag":564,"props":1381,"children":1382},{},[1383],{"type":46,"tag":81,"props":1384,"children":1386},{"className":1385},[],[1387],{"type":51,"value":1351},{"type":46,"tag":564,"props":1389,"children":1390},{},[1391],{"type":51,"value":1392},"Per-GPU (single-GPU runner).",{"type":46,"tag":538,"props":1394,"children":1395},{},[1396,1405,1414,1419,1428],{"type":46,"tag":564,"props":1397,"children":1398},{},[1399],{"type":46,"tag":81,"props":1400,"children":1402},{"className":1401},[],[1403],{"type":51,"value":1404},"autoencoder_train.patch_size",{"type":46,"tag":564,"props":1406,"children":1407},{},[1408],{"type":46,"tag":81,"props":1409,"children":1411},{"className":1410},[],[1412],{"type":51,"value":1413},"--patch-size",{"type":46,"tag":564,"props":1415,"children":1416},{},[1417],{"type":51,"value":1418},"int,int,int",{"type":46,"tag":564,"props":1420,"children":1421},{},[1422],{"type":46,"tag":81,"props":1423,"children":1425},{"className":1424},[],[1426],{"type":51,"value":1427},"64,64,64",{"type":46,"tag":564,"props":1429,"children":1430},{},[1431],{"type":51,"value":1432},"Training crop.",{"type":46,"tag":538,"props":1434,"children":1435},{},[1436,1445,1454,1458,1466],{"type":46,"tag":564,"props":1437,"children":1438},{},[1439],{"type":46,"tag":81,"props":1440,"children":1442},{"className":1441},[],[1443],{"type":51,"value":1444},"autoencoder_train.val_batch_size",{"type":46,"tag":564,"props":1446,"children":1447},{},[1448],{"type":46,"tag":81,"props":1449,"children":1451},{"className":1450},[],[1452],{"type":51,"value":1453},"--val-batch-size",{"type":46,"tag":564,"props":1455,"children":1456},{},[1457],{"type":51,"value":1342},{"type":46,"tag":564,"props":1459,"children":1460},{},[1461],{"type":46,"tag":81,"props":1462,"children":1464},{"className":1463},[],[1465],{"type":51,"value":1351},{"type":46,"tag":564,"props":1467,"children":1468},{},[],{"type":46,"tag":538,"props":1470,"children":1471},{},[1472,1481,1490,1494,1503],{"type":46,"tag":564,"props":1473,"children":1474},{},[1475],{"type":46,"tag":81,"props":1476,"children":1478},{"className":1477},[],[1479],{"type":51,"value":1480},"autoencoder_train.val_sliding_window_patch_size",{"type":46,"tag":564,"props":1482,"children":1483},{},[1484],{"type":46,"tag":81,"props":1485,"children":1487},{"className":1486},[],[1488],{"type":51,"value":1489},"--val-sliding-window-patch-size",{"type":46,"tag":564,"props":1491,"children":1492},{},[1493],{"type":51,"value":1418},{"type":46,"tag":564,"props":1495,"children":1496},{},[1497],{"type":46,"tag":81,"props":1498,"children":1500},{"className":1499},[],[1501],{"type":51,"value":1502},"96,96,64",{"type":46,"tag":564,"props":1504,"children":1505},{},[1506],{"type":51,"value":1507},"Sliding-window validation ROI.",{"type":46,"tag":538,"props":1509,"children":1510},{},[1511,1520,1529,1534,1543],{"type":46,"tag":564,"props":1512,"children":1513},{},[1514],{"type":46,"tag":81,"props":1515,"children":1517},{"className":1516},[],[1518],{"type":51,"value":1519},"autoencoder_train.lr",{"type":46,"tag":564,"props":1521,"children":1522},{},[1523],{"type":46,"tag":81,"props":1524,"children":1526},{"className":1525},[],[1527],{"type":51,"value":1528},"--lr",{"type":46,"tag":564,"props":1530,"children":1531},{},[1532],{"type":51,"value":1533},"float",{"type":46,"tag":564,"props":1535,"children":1536},{},[1537],{"type":46,"tag":81,"props":1538,"children":1540},{"className":1539},[],[1541],{"type":51,"value":1542},"1e-4",{"type":46,"tag":564,"props":1544,"children":1545},{},[],{"type":46,"tag":538,"props":1547,"children":1548},{},[1549,1558,1567,1571,1580],{"type":46,"tag":564,"props":1550,"children":1551},{},[1552],{"type":46,"tag":81,"props":1553,"children":1555},{"className":1554},[],[1556],{"type":51,"value":1557},"autoencoder_train.perceptual_weight",{"type":46,"tag":564,"props":1559,"children":1560},{},[1561],{"type":46,"tag":81,"props":1562,"children":1564},{"className":1563},[],[1565],{"type":51,"value":1566},"--perceptual-weight",{"type":46,"tag":564,"props":1568,"children":1569},{},[1570],{"type":51,"value":1533},{"type":46,"tag":564,"props":1572,"children":1573},{},[1574],{"type":46,"tag":81,"props":1575,"children":1577},{"className":1576},[],[1578],{"type":51,"value":1579},"0.3",{"type":46,"tag":564,"props":1581,"children":1582},{},[1583],{"type":51,"value":1584},"LPIPS term.",{"type":46,"tag":538,"props":1586,"children":1587},{},[1588,1597,1606,1610,1619],{"type":46,"tag":564,"props":1589,"children":1590},{},[1591],{"type":46,"tag":81,"props":1592,"children":1594},{"className":1593},[],[1595],{"type":51,"value":1596},"autoencoder_train.kl_weight",{"type":46,"tag":564,"props":1598,"children":1599},{},[1600],{"type":46,"tag":81,"props":1601,"children":1603},{"className":1602},[],[1604],{"type":51,"value":1605},"--kl-weight",{"type":46,"tag":564,"props":1607,"children":1608},{},[1609],{"type":51,"value":1533},{"type":46,"tag":564,"props":1611,"children":1612},{},[1613],{"type":46,"tag":81,"props":1614,"children":1616},{"className":1615},[],[1617],{"type":51,"value":1618},"1e-7",{"type":46,"tag":564,"props":1620,"children":1621},{},[1622],{"type":51,"value":1623},"KL term.",{"type":46,"tag":538,"props":1625,"children":1626},{},[1627,1636,1645,1649,1658],{"type":46,"tag":564,"props":1628,"children":1629},{},[1630],{"type":46,"tag":81,"props":1631,"children":1633},{"className":1632},[],[1634],{"type":51,"value":1635},"autoencoder_train.adv_weight",{"type":46,"tag":564,"props":1637,"children":1638},{},[1639],{"type":46,"tag":81,"props":1640,"children":1642},{"className":1641},[],[1643],{"type":51,"value":1644},"--adv-weight",{"type":46,"tag":564,"props":1646,"children":1647},{},[1648],{"type":51,"value":1533},{"type":46,"tag":564,"props":1650,"children":1651},{},[1652],{"type":46,"tag":81,"props":1653,"children":1655},{"className":1654},[],[1656],{"type":51,"value":1657},"0.1",{"type":46,"tag":564,"props":1659,"children":1660},{},[1661],{"type":51,"value":1662},"Adversarial term.",{"type":46,"tag":538,"props":1664,"children":1665},{},[1666,1675,1684,1701,1709],{"type":46,"tag":564,"props":1667,"children":1668},{},[1669],{"type":46,"tag":81,"props":1670,"children":1672},{"className":1671},[],[1673],{"type":51,"value":1674},"autoencoder_train.recon_loss",{"type":46,"tag":564,"props":1676,"children":1677},{},[1678],{"type":46,"tag":81,"props":1679,"children":1681},{"className":1680},[],[1682],{"type":51,"value":1683},"--recon-loss",{"type":46,"tag":564,"props":1685,"children":1686},{},[1687,1693,1695],{"type":46,"tag":81,"props":1688,"children":1690},{"className":1689},[],[1691],{"type":51,"value":1692},"l1",{"type":51,"value":1694},"|",{"type":46,"tag":81,"props":1696,"children":1698},{"className":1697},[],[1699],{"type":51,"value":1700},"l2",{"type":46,"tag":564,"props":1702,"children":1703},{},[1704],{"type":46,"tag":81,"props":1705,"children":1707},{"className":1706},[],[1708],{"type":51,"value":1692},{"type":46,"tag":564,"props":1710,"children":1711},{},[],{"type":46,"tag":538,"props":1713,"children":1714},{},[1715,1724,1733,1737,1745],{"type":46,"tag":564,"props":1716,"children":1717},{},[1718],{"type":46,"tag":81,"props":1719,"children":1721},{"className":1720},[],[1722],{"type":51,"value":1723},"autoencoder_train.val_interval",{"type":46,"tag":564,"props":1725,"children":1726},{},[1727],{"type":46,"tag":81,"props":1728,"children":1730},{"className":1729},[],[1731],{"type":51,"value":1732},"--val-interval",{"type":46,"tag":564,"props":1734,"children":1735},{},[1736],{"type":51,"value":1342},{"type":46,"tag":564,"props":1738,"children":1739},{},[1740],{"type":46,"tag":81,"props":1741,"children":1743},{"className":1742},[],[1744],{"type":51,"value":1351},{"type":46,"tag":564,"props":1746,"children":1747},{},[1748],{"type":51,"value":1749},"Epochs between validation passes.",{"type":46,"tag":538,"props":1751,"children":1752},{},[1753,1762,1771,1775,1784],{"type":46,"tag":564,"props":1754,"children":1755},{},[1756],{"type":46,"tag":81,"props":1757,"children":1759},{"className":1758},[],[1760],{"type":51,"value":1761},"autoencoder_train.cache",{"type":46,"tag":564,"props":1763,"children":1764},{},[1765],{"type":46,"tag":81,"props":1766,"children":1768},{"className":1767},[],[1769],{"type":51,"value":1770},"--cache-rate",{"type":46,"tag":564,"props":1772,"children":1773},{},[1774],{"type":51,"value":1533},{"type":46,"tag":564,"props":1776,"children":1777},{},[1778],{"type":46,"tag":81,"props":1779,"children":1781},{"className":1780},[],[1782],{"type":51,"value":1783},"0.0",{"type":46,"tag":564,"props":1785,"children":1786},{},[1787,1789,1795],{"type":51,"value":1788},"MONAI ",{"type":46,"tag":81,"props":1790,"children":1792},{"className":1791},[],[1793],{"type":51,"value":1794},"CacheDataset",{"type":51,"value":1796}," fraction.",{"type":46,"tag":538,"props":1798,"children":1799},{},[1800,1809,1818,1823,1828],{"type":46,"tag":564,"props":1801,"children":1802},{},[1803],{"type":46,"tag":81,"props":1804,"children":1806},{"className":1805},[],[1807],{"type":51,"value":1808},"autoencoder_train.amp",{"type":46,"tag":564,"props":1810,"children":1811},{},[1812],{"type":46,"tag":81,"props":1813,"children":1815},{"className":1814},[],[1816],{"type":51,"value":1817},"--no-amp",{"type":46,"tag":564,"props":1819,"children":1820},{},[1821],{"type":51,"value":1822},"flag",{"type":46,"tag":564,"props":1824,"children":1825},{},[1826],{"type":51,"value":1827},"on",{"type":46,"tag":564,"props":1829,"children":1830},{},[1831],{"type":51,"value":1832},"Mixed precision; flag disables it.",{"type":46,"tag":538,"props":1834,"children":1835},{},[1836,1845,1854,1858,1862],{"type":46,"tag":564,"props":1837,"children":1838},{},[1839],{"type":46,"tag":81,"props":1840,"children":1842},{"className":1841},[],[1843],{"type":51,"value":1844},"data_option.random_aug",{"type":46,"tag":564,"props":1846,"children":1847},{},[1848],{"type":46,"tag":81,"props":1849,"children":1851},{"className":1850},[],[1852],{"type":51,"value":1853},"--no-random-aug",{"type":46,"tag":564,"props":1855,"children":1856},{},[1857],{"type":51,"value":1822},{"type":46,"tag":564,"props":1859,"children":1860},{},[1861],{"type":51,"value":1827},{"type":46,"tag":564,"props":1863,"children":1864},{},[1865],{"type":51,"value":1866},"Random augmentation; flag disables it.",{"type":46,"tag":538,"props":1868,"children":1869},{},[1870,1879,1888,1911,1919],{"type":46,"tag":564,"props":1871,"children":1872},{},[1873],{"type":46,"tag":81,"props":1874,"children":1876},{"className":1875},[],[1877],{"type":51,"value":1878},"data_option.spacing_type",{"type":46,"tag":564,"props":1880,"children":1881},{},[1882],{"type":46,"tag":81,"props":1883,"children":1885},{"className":1884},[],[1886],{"type":51,"value":1887},"--spacing-type",{"type":46,"tag":564,"props":1889,"children":1890},{},[1891,1897,1898,1904,1905],{"type":46,"tag":81,"props":1892,"children":1894},{"className":1893},[],[1895],{"type":51,"value":1896},"original",{"type":51,"value":1694},{"type":46,"tag":81,"props":1899,"children":1901},{"className":1900},[],[1902],{"type":51,"value":1903},"fixed",{"type":51,"value":1694},{"type":46,"tag":81,"props":1906,"children":1908},{"className":1907},[],[1909],{"type":51,"value":1910},"rand_zoom",{"type":46,"tag":564,"props":1912,"children":1913},{},[1914],{"type":46,"tag":81,"props":1915,"children":1917},{"className":1916},[],[1918],{"type":51,"value":1896},{"type":46,"tag":564,"props":1920,"children":1921},{},[],{"type":46,"tag":538,"props":1923,"children":1924},{},[1925,1934,1943,1948,1953],{"type":46,"tag":564,"props":1926,"children":1927},{},[1928],{"type":46,"tag":81,"props":1929,"children":1931},{"className":1930},[],[1932],{"type":51,"value":1933},"data_option.spacing",{"type":46,"tag":564,"props":1935,"children":1936},{},[1937],{"type":46,"tag":81,"props":1938,"children":1940},{"className":1939},[],[1941],{"type":51,"value":1942},"--spacing",{"type":46,"tag":564,"props":1944,"children":1945},{},[1946],{"type":51,"value":1947},"float,float,float",{"type":46,"tag":564,"props":1949,"children":1950},{},[1951],{"type":51,"value":1952},"unset",{"type":46,"tag":564,"props":1954,"children":1955},{},[1956,1958,1964,1966,1971,1972,1977],{"type":51,"value":1957},"Required when ",{"type":46,"tag":81,"props":1959,"children":1961},{"className":1960},[],[1962],{"type":51,"value":1963},"spacing_type",{"type":51,"value":1965}," is ",{"type":46,"tag":81,"props":1967,"children":1969},{"className":1968},[],[1970],{"type":51,"value":1903},{"type":51,"value":361},{"type":46,"tag":81,"props":1973,"children":1975},{"className":1974},[],[1976],{"type":51,"value":1910},{"type":51,"value":141},{"type":46,"tag":538,"props":1979,"children":1980},{},[1981,1990,1999,2003,2012],{"type":46,"tag":564,"props":1982,"children":1983},{},[1984],{"type":46,"tag":81,"props":1985,"children":1987},{"className":1986},[],[1988],{"type":51,"value":1989},"data_option.select_channel",{"type":46,"tag":564,"props":1991,"children":1992},{},[1993],{"type":46,"tag":81,"props":1994,"children":1996},{"className":1995},[],[1997],{"type":51,"value":1998},"--select-channel",{"type":46,"tag":564,"props":2000,"children":2001},{},[2002],{"type":51,"value":1342},{"type":46,"tag":564,"props":2004,"children":2005},{},[2006],{"type":46,"tag":81,"props":2007,"children":2009},{"className":2008},[],[2010],{"type":51,"value":2011},"0",{"type":46,"tag":564,"props":2013,"children":2014},{},[2015],{"type":51,"value":2016},"Channel for multi-channel inputs.",{"type":46,"tag":282,"props":2018,"children":2019},{},[2020,2026,2028,2033,2034,2039,2041,2046,2048,2053],{"type":46,"tag":81,"props":2021,"children":2023},{"className":2022},[],[2024],{"type":51,"value":2025},"--modality",{"type":51,"value":2027}," (",{"type":46,"tag":81,"props":2029,"children":2031},{"className":2030},[],[2032],{"type":51,"value":805},{"type":51,"value":761},{"type":46,"tag":81,"props":2035,"children":2037},{"className":2036},[],[2038],{"type":51,"value":812},{"type":51,"value":2040},", default ",{"type":46,"tag":81,"props":2042,"children":2044},{"className":2043},[],[2045],{"type":51,"value":812},{"type":51,"value":2047},") fills the per-entry ",{"type":46,"tag":81,"props":2049,"children":2051},{"className":2050},[],[2052],{"type":51,"value":790},{"type":51,"value":2054}," for datalist items missing one. Validation\u002Ftesting entries are required because the training loop runs a validation pass.",{"type":46,"tag":282,"props":2056,"children":2057},{},[2058,2060,2065],{"type":51,"value":2059},"For an end-to-end reference including example data download, see the upstream tutorial ",{"type":46,"tag":81,"props":2061,"children":2063},{"className":2062},[],[2064],{"type":51,"value":86},{"type":51,"value":141},{"type":46,"tag":54,"props":2067,"children":2069},{"id":2068},"_2-usage-one-line-training",[2070],{"type":51,"value":2071},"2. Usage (one-line training)",{"type":46,"tag":282,"props":2073,"children":2074},{},[2075],{"type":51,"value":2076},"Preflight only:",{"type":46,"tag":303,"props":2078,"children":2080},{"className":305,"code":2079,"language":307,"meta":308,"style":308},"export NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_DATALIST.json \\\n  --data-base-dir PATH_TO_DATA_ROOT \\\n  --output-dir runs\u002Fnv_generate_vae_finetune_preflight \\\n  --preflight\n",[2081],{"type":46,"tag":81,"props":2082,"children":2083},{"__ignoreMap":308},[2084,2163,2178,2190,2206,2222],{"type":46,"tag":314,"props":2085,"children":2086},{"class":316,"line":317},[2087,2091,2095,2099,2103,2107,2111,2115,2119,2123,2127,2131,2135,2139,2143,2147,2151,2155,2159],{"type":46,"tag":314,"props":2088,"children":2089},{"style":321},[2090],{"type":51,"value":324},{"type":46,"tag":314,"props":2092,"children":2093},{"style":327},[2094],{"type":51,"value":330},{"type":46,"tag":314,"props":2096,"children":2097},{"style":333},[2098],{"type":51,"value":336},{"type":46,"tag":314,"props":2100,"children":2101},{"style":333},[2102],{"type":51,"value":341},{"type":46,"tag":314,"props":2104,"children":2105},{"style":327},[2106],{"type":51,"value":346},{"type":46,"tag":314,"props":2108,"children":2109},{"style":333},[2110],{"type":51,"value":351},{"type":46,"tag":314,"props":2112,"children":2113},{"style":327},[2114],{"type":51,"value":356},{"type":46,"tag":314,"props":2116,"children":2117},{"style":333},[2118],{"type":51,"value":361},{"type":46,"tag":314,"props":2120,"children":2121},{"style":364},[2122],{"type":51,"value":141},{"type":46,"tag":314,"props":2124,"children":2125},{"style":327},[2126],{"type":51,"value":371},{"type":46,"tag":314,"props":2128,"children":2129},{"style":333},[2130],{"type":51,"value":361},{"type":46,"tag":314,"props":2132,"children":2133},{"style":327},[2134],{"type":51,"value":380},{"type":46,"tag":314,"props":2136,"children":2137},{"style":333},[2138],{"type":51,"value":361},{"type":46,"tag":314,"props":2140,"children":2141},{"style":327},[2142],{"type":51,"value":389},{"type":46,"tag":314,"props":2144,"children":2145},{"style":333},[2146],{"type":51,"value":361},{"type":46,"tag":314,"props":2148,"children":2149},{"style":327},[2150],{"type":51,"value":398},{"type":46,"tag":314,"props":2152,"children":2153},{"style":333},[2154],{"type":51,"value":403},{"type":46,"tag":314,"props":2156,"children":2157},{"style":333},[2158],{"type":51,"value":408},{"type":46,"tag":314,"props":2160,"children":2161},{"style":327},[2162],{"type":51,"value":413},{"type":46,"tag":314,"props":2164,"children":2165},{"class":316,"line":416},[2166,2170,2174],{"type":46,"tag":314,"props":2167,"children":2168},{"style":420},[2169],{"type":51,"value":423},{"type":46,"tag":314,"props":2171,"children":2172},{"style":364},[2173],{"type":51,"value":428},{"type":46,"tag":314,"props":2175,"children":2176},{"style":327},[2177],{"type":51,"value":413},{"type":46,"tag":314,"props":2179,"children":2180},{"class":316,"line":435},[2181,2186],{"type":46,"tag":314,"props":2182,"children":2183},{"style":364},[2184],{"type":51,"value":2185},"  PATH_TO_DATALIST.json",{"type":46,"tag":314,"props":2187,"children":2188},{"style":327},[2189],{"type":51,"value":413},{"type":46,"tag":314,"props":2191,"children":2192},{"class":316,"line":448},[2193,2197,2202],{"type":46,"tag":314,"props":2194,"children":2195},{"style":364},[2196],{"type":51,"value":454},{"type":46,"tag":314,"props":2198,"children":2199},{"style":364},[2200],{"type":51,"value":2201}," PATH_TO_DATA_ROOT",{"type":46,"tag":314,"props":2203,"children":2204},{"style":327},[2205],{"type":51,"value":413},{"type":46,"tag":314,"props":2207,"children":2208},{"class":316,"line":466},[2209,2213,2218],{"type":46,"tag":314,"props":2210,"children":2211},{"style":364},[2212],{"type":51,"value":472},{"type":46,"tag":314,"props":2214,"children":2215},{"style":364},[2216],{"type":51,"value":2217}," runs\u002Fnv_generate_vae_finetune_preflight",{"type":46,"tag":314,"props":2219,"children":2220},{"style":327},[2221],{"type":51,"value":413},{"type":46,"tag":314,"props":2223,"children":2224},{"class":316,"line":484},[2225],{"type":46,"tag":314,"props":2226,"children":2227},{"style":364},[2228],{"type":51,"value":508},{"type":46,"tag":282,"props":2230,"children":2231},{},[2232],{"type":51,"value":2233},"Preflight bundle input:",{"type":46,"tag":303,"props":2235,"children":2237},{"className":305,"code":2236,"language":307,"meta":308,"style":308},"export NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_INPUT_BUNDLE\u002Fpreflight_datalist.json \\\n  --data-base-dir PATH_TO_INPUT_BUNDLE\u002Fpreflight_dataset \\\n  --output-dir runs\u002Fnv_generate_vae_finetune_preflight \\\n  --preflight\n",[2238],{"type":46,"tag":81,"props":2239,"children":2240},{"__ignoreMap":308},[2241,2320,2335,2347,2363,2378],{"type":46,"tag":314,"props":2242,"children":2243},{"class":316,"line":317},[2244,2248,2252,2256,2260,2264,2268,2272,2276,2280,2284,2288,2292,2296,2300,2304,2308,2312,2316],{"type":46,"tag":314,"props":2245,"children":2246},{"style":321},[2247],{"type":51,"value":324},{"type":46,"tag":314,"props":2249,"children":2250},{"style":327},[2251],{"type":51,"value":330},{"type":46,"tag":314,"props":2253,"children":2254},{"style":333},[2255],{"type":51,"value":336},{"type":46,"tag":314,"props":2257,"children":2258},{"style":333},[2259],{"type":51,"value":341},{"type":46,"tag":314,"props":2261,"children":2262},{"style":327},[2263],{"type":51,"value":346},{"type":46,"tag":314,"props":2265,"children":2266},{"style":333},[2267],{"type":51,"value":351},{"type":46,"tag":314,"props":2269,"children":2270},{"style":327},[2271],{"type":51,"value":356},{"type":46,"tag":314,"props":2273,"children":2274},{"style":333},[2275],{"type":51,"value":361},{"type":46,"tag":314,"props":2277,"children":2278},{"style":364},[2279],{"type":51,"value":141},{"type":46,"tag":314,"props":2281,"children":2282},{"style":327},[2283],{"type":51,"value":371},{"type":46,"tag":314,"props":2285,"children":2286},{"style":333},[2287],{"type":51,"value":361},{"type":46,"tag":314,"props":2289,"children":2290},{"style":327},[2291],{"type":51,"value":380},{"type":46,"tag":314,"props":2293,"children":2294},{"style":333},[2295],{"type":51,"value":361},{"type":46,"tag":314,"props":2297,"children":2298},{"style":327},[2299],{"type":51,"value":389},{"type":46,"tag":314,"props":2301,"children":2302},{"style":333},[2303],{"type":51,"value":361},{"type":46,"tag":314,"props":2305,"children":2306},{"style":327},[2307],{"type":51,"value":398},{"type":46,"tag":314,"props":2309,"children":2310},{"style":333},[2311],{"type":51,"value":403},{"type":46,"tag":314,"props":2313,"children":2314},{"style":333},[2315],{"type":51,"value":408},{"type":46,"tag":314,"props":2317,"children":2318},{"style":327},[2319],{"type":51,"value":413},{"type":46,"tag":314,"props":2321,"children":2322},{"class":316,"line":416},[2323,2327,2331],{"type":46,"tag":314,"props":2324,"children":2325},{"style":420},[2326],{"type":51,"value":423},{"type":46,"tag":314,"props":2328,"children":2329},{"style":364},[2330],{"type":51,"value":428},{"type":46,"tag":314,"props":2332,"children":2333},{"style":327},[2334],{"type":51,"value":413},{"type":46,"tag":314,"props":2336,"children":2337},{"class":316,"line":435},[2338,2343],{"type":46,"tag":314,"props":2339,"children":2340},{"style":364},[2341],{"type":51,"value":2342},"  PATH_TO_INPUT_BUNDLE\u002Fpreflight_datalist.json",{"type":46,"tag":314,"props":2344,"children":2345},{"style":327},[2346],{"type":51,"value":413},{"type":46,"tag":314,"props":2348,"children":2349},{"class":316,"line":448},[2350,2354,2359],{"type":46,"tag":314,"props":2351,"children":2352},{"style":364},[2353],{"type":51,"value":454},{"type":46,"tag":314,"props":2355,"children":2356},{"style":364},[2357],{"type":51,"value":2358}," PATH_TO_INPUT_BUNDLE\u002Fpreflight_dataset",{"type":46,"tag":314,"props":2360,"children":2361},{"style":327},[2362],{"type":51,"value":413},{"type":46,"tag":314,"props":2364,"children":2365},{"class":316,"line":466},[2366,2370,2374],{"type":46,"tag":314,"props":2367,"children":2368},{"style":364},[2369],{"type":51,"value":472},{"type":46,"tag":314,"props":2371,"children":2372},{"style":364},[2373],{"type":51,"value":2217},{"type":46,"tag":314,"props":2375,"children":2376},{"style":327},[2377],{"type":51,"value":413},{"type":46,"tag":314,"props":2379,"children":2380},{"class":316,"line":484},[2381],{"type":46,"tag":314,"props":2382,"children":2383},{"style":364},[2384],{"type":51,"value":508},{"type":46,"tag":282,"props":2386,"children":2387},{},[2388],{"type":51,"value":2389},"GPU finetuning:",{"type":46,"tag":303,"props":2391,"children":2393},{"className":305,"code":2392,"language":307,"meta":308,"style":308},"export NV_GENERATE_ROOT=\"${NV_GENERATE_ROOT:-$HOME\u002F.cache\u002Fnvidia-skills\u002Fupstreams\u002FNV-Generate-CTMR-61c4ec7}\" && \\\npython -m pip install -r \"$NV_GENERATE_ROOT\u002Frequirements.txt\" && \\\npython -m pip install lpips tensorboard && \\\npython skills\u002Fnv-generate-vae-finetune\u002Fscripts\u002Frun_vae_finetune.py \\\n  PATH_TO_DATALIST.json \\\n  --data-base-dir PATH_TO_DATA_ROOT \\\n  --output-dir runs\u002Fnv_generate_vae_finetune \\\n  --epochs 1 \\\n  --modality mri \\\n  --patch-size 64,64,64 \\\n  --download-model-data\n",[2394],{"type":46,"tag":81,"props":2395,"children":2396},{"__ignoreMap":308},[2397,2476,2528,2565,2580,2591,2606,2622,2640,2656,2674],{"type":46,"tag":314,"props":2398,"children":2399},{"class":316,"line":317},[2400,2404,2408,2412,2416,2420,2424,2428,2432,2436,2440,2444,2448,2452,2456,2460,2464,2468,2472],{"type":46,"tag":314,"props":2401,"children":2402},{"style":321},[2403],{"type":51,"value":324},{"type":46,"tag":314,"props":2405,"children":2406},{"style":327},[2407],{"type":51,"value":330},{"type":46,"tag":314,"props":2409,"children":2410},{"style":333},[2411],{"type":51,"value":336},{"type":46,"tag":314,"props":2413,"children":2414},{"style":333},[2415],{"type":51,"value":341},{"type":46,"tag":314,"props":2417,"children":2418},{"style":327},[2419],{"type":51,"value":346},{"type":46,"tag":314,"props":2421,"children":2422},{"style":333},[2423],{"type":51,"value":351},{"type":46,"tag":314,"props":2425,"children":2426},{"style":327},[2427],{"type":51,"value":356},{"type":46,"tag":314,"props":2429,"children":2430},{"style":333},[2431],{"type":51,"value":361},{"type":46,"tag":314,"props":2433,"children":2434},{"style":364},[2435],{"type":51,"value":141},{"type":46,"tag":314,"props":2437,"children":2438},{"style":327},[2439],{"type":51,"value":371},{"type":46,"tag":314,"props":2441,"children":2442},{"style":333},[2443],{"type":51,"value":361},{"type":46,"tag":314,"props":2445,"children":2446},{"style":327},[2447],{"type":51,"value":380},{"type":46,"tag":314,"props":2449,"children":2450},{"style":333},[2451],{"type":51,"value":361},{"type":46,"tag":314,"props":2453,"children":2454},{"style":327},[2455],{"type":51,"value":389},{"type":46,"tag":314,"props":2457,"children":2458},{"style":333},[2459],{"type":51,"value":361},{"type":46,"tag":314,"props":2461,"children":2462},{"style":327},[2463],{"type":51,"value":398},{"type":46,"tag":314,"props":2465,"children":2466},{"style":333},[2467],{"type":51,"value":403},{"type":46,"tag":314,"props":2469,"children":2470},{"style":333},[2471],{"type":51,"value":408},{"type":46,"tag":314,"props":2473,"children":2474},{"style":327},[2475],{"type":51,"value":413},{"type":46,"tag":314,"props":2477,"children":2478},{"class":316,"line":416},[2479,2483,2488,2493,2498,2503,2507,2511,2516,2520,2524],{"type":46,"tag":314,"props":2480,"children":2481},{"style":420},[2482],{"type":51,"value":423},{"type":46,"tag":314,"props":2484,"children":2485},{"style":364},[2486],{"type":51,"value":2487}," -m",{"type":46,"tag":314,"props":2489,"children":2490},{"style":364},[2491],{"type":51,"value":2492}," pip",{"type":46,"tag":314,"props":2494,"children":2495},{"style":364},[2496],{"type":51,"value":2497}," install",{"type":46,"tag":314,"props":2499,"children":2500},{"style":364},[2501],{"type":51,"value":2502}," -r",{"type":46,"tag":314,"props":2504,"children":2505},{"style":333},[2506],{"type":51,"value":951},{"type":46,"tag":314,"props":2508,"children":2509},{"style":327},[2510],{"type":51,"value":956},{"type":46,"tag":314,"props":2512,"children":2513},{"style":364},[2514],{"type":51,"value":2515},"\u002Frequirements.txt",{"type":46,"tag":314,"props":2517,"children":2518},{"style":333},[2519],{"type":51,"value":910},{"type":46,"tag":314,"props":2521,"children":2522},{"style":333},[2523],{"type":51,"value":408},{"type":46,"tag":314,"props":2525,"children":2526},{"style":327},[2527],{"type":51,"value":413},{"type":46,"tag":314,"props":2529,"children":2530},{"class":316,"line":435},[2531,2535,2539,2543,2547,2552,2557,2561],{"type":46,"tag":314,"props":2532,"children":2533},{"style":420},[2534],{"type":51,"value":423},{"type":46,"tag":314,"props":2536,"children":2537},{"style":364},[2538],{"type":51,"value":2487},{"type":46,"tag":314,"props":2540,"children":2541},{"style":364},[2542],{"type":51,"value":2492},{"type":46,"tag":314,"props":2544,"children":2545},{"style":364},[2546],{"type":51,"value":2497},{"type":46,"tag":314,"props":2548,"children":2549},{"style":364},[2550],{"type":51,"value":2551}," lpips",{"type":46,"tag":314,"props":2553,"children":2554},{"style":364},[2555],{"type":51,"value":2556}," tensorboard",{"type":46,"tag":314,"props":2558,"children":2559},{"style":333},[2560],{"type":51,"value":408},{"type":46,"tag":314,"props":2562,"children":2563},{"style":327},[2564],{"type":51,"value":413},{"type":46,"tag":314,"props":2566,"children":2567},{"class":316,"line":448},[2568,2572,2576],{"type":46,"tag":314,"props":2569,"children":2570},{"style":420},[2571],{"type":51,"value":423},{"type":46,"tag":314,"props":2573,"children":2574},{"style":364},[2575],{"type":51,"value":428},{"type":46,"tag":314,"props":2577,"children":2578},{"style":327},[2579],{"type":51,"value":413},{"type":46,"tag":314,"props":2581,"children":2582},{"class":316,"line":466},[2583,2587],{"type":46,"tag":314,"props":2584,"children":2585},{"style":364},[2586],{"type":51,"value":2185},{"type":46,"tag":314,"props":2588,"children":2589},{"style":327},[2590],{"type":51,"value":413},{"type":46,"tag":314,"props":2592,"children":2593},{"class":316,"line":484},[2594,2598,2602],{"type":46,"tag":314,"props":2595,"children":2596},{"style":364},[2597],{"type":51,"value":454},{"type":46,"tag":314,"props":2599,"children":2600},{"style":364},[2601],{"type":51,"value":2201},{"type":46,"tag":314,"props":2603,"children":2604},{"style":327},[2605],{"type":51,"value":413},{"type":46,"tag":314,"props":2607,"children":2608},{"class":316,"line":502},[2609,2613,2618],{"type":46,"tag":314,"props":2610,"children":2611},{"style":364},[2612],{"type":51,"value":472},{"type":46,"tag":314,"props":2614,"children":2615},{"style":364},[2616],{"type":51,"value":2617}," runs\u002Fnv_generate_vae_finetune",{"type":46,"tag":314,"props":2619,"children":2620},{"style":327},[2621],{"type":51,"value":413},{"type":46,"tag":314,"props":2623,"children":2624},{"class":316,"line":1061},[2625,2630,2636],{"type":46,"tag":314,"props":2626,"children":2627},{"style":364},[2628],{"type":51,"value":2629},"  --epochs",{"type":46,"tag":314,"props":2631,"children":2633},{"style":2632},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[2634],{"type":51,"value":2635}," 1",{"type":46,"tag":314,"props":2637,"children":2638},{"style":327},[2639],{"type":51,"value":413},{"type":46,"tag":314,"props":2641,"children":2643},{"class":316,"line":2642},9,[2644,2648,2652],{"type":46,"tag":314,"props":2645,"children":2646},{"style":364},[2647],{"type":51,"value":490},{"type":46,"tag":314,"props":2649,"children":2650},{"style":364},[2651],{"type":51,"value":495},{"type":46,"tag":314,"props":2653,"children":2654},{"style":327},[2655],{"type":51,"value":413},{"type":46,"tag":314,"props":2657,"children":2659},{"class":316,"line":2658},10,[2660,2665,2670],{"type":46,"tag":314,"props":2661,"children":2662},{"style":364},[2663],{"type":51,"value":2664},"  --patch-size",{"type":46,"tag":314,"props":2666,"children":2667},{"style":364},[2668],{"type":51,"value":2669}," 64,64,64",{"type":46,"tag":314,"props":2671,"children":2672},{"style":327},[2673],{"type":51,"value":413},{"type":46,"tag":314,"props":2675,"children":2677},{"class":316,"line":2676},11,[2678],{"type":46,"tag":314,"props":2679,"children":2680},{"style":364},[2681],{"type":51,"value":2682},"  --download-model-data\n",{"type":46,"tag":282,"props":2684,"children":2685},{},[2686,2688,2694,2695,2701],{"type":51,"value":2687},"Replace ",{"type":46,"tag":81,"props":2689,"children":2691},{"className":2690},[],[2692],{"type":51,"value":2693},"PATH_TO_DATALIST.json",{"type":51,"value":109},{"type":46,"tag":81,"props":2696,"children":2698},{"className":2697},[],[2699],{"type":51,"value":2700},"PATH_TO_DATA_ROOT",{"type":51,"value":2702}," with the user's actual paths. Do not use the fixture datalist for real training; it is a preflight-only placeholder.",{"type":46,"tag":54,"props":2704,"children":2706},{"id":2705},"_3-monitor-training-tensorboard",[2707],{"type":51,"value":2708},"3. Monitor training (TensorBoard)",{"type":46,"tag":282,"props":2710,"children":2711},{},[2712,2714,2720,2721,2727,2728,2734,2736,2742,2744,2750],{"type":51,"value":2713},"The runner writes TensorBoard scalars (per-iteration and per-epoch ",{"type":46,"tag":81,"props":2715,"children":2717},{"className":2716},[],[2718],{"type":51,"value":2719},"recons_loss",{"type":51,"value":125},{"type":46,"tag":81,"props":2722,"children":2724},{"className":2723},[],[2725],{"type":51,"value":2726},"kl_loss",{"type":51,"value":125},{"type":46,"tag":81,"props":2729,"children":2731},{"className":2730},[],[2732],{"type":51,"value":2733},"p_loss",{"type":51,"value":2735},", adversarial\u002Freal\u002Ffake losses, and a validation ",{"type":46,"tag":81,"props":2737,"children":2739},{"className":2738},[],[2740],{"type":51,"value":2741},"scale_factor",{"type":51,"value":2743},") under ",{"type":46,"tag":81,"props":2745,"children":2747},{"className":2746},[],[2748],{"type":51,"value":2749},"OUT_DIR\u002Fartifacts\u002Ftfevent\u002Fautoencoder",{"type":51,"value":2751},". Launch TensorBoard against the output directory:",{"type":46,"tag":303,"props":2753,"children":2755},{"className":305,"code":2754,"language":307,"meta":308,"style":308},"python -m pip install tensorboard && \\\ntensorboard --logdir runs\u002Fnv_generate_vae_finetune\u002Fartifacts\u002Ftfevent\n",[2756],{"type":46,"tag":81,"props":2757,"children":2758},{"__ignoreMap":308},[2759,2790],{"type":46,"tag":314,"props":2760,"children":2761},{"class":316,"line":317},[2762,2766,2770,2774,2778,2782,2786],{"type":46,"tag":314,"props":2763,"children":2764},{"style":420},[2765],{"type":51,"value":423},{"type":46,"tag":314,"props":2767,"children":2768},{"style":364},[2769],{"type":51,"value":2487},{"type":46,"tag":314,"props":2771,"children":2772},{"style":364},[2773],{"type":51,"value":2492},{"type":46,"tag":314,"props":2775,"children":2776},{"style":364},[2777],{"type":51,"value":2497},{"type":46,"tag":314,"props":2779,"children":2780},{"style":364},[2781],{"type":51,"value":2556},{"type":46,"tag":314,"props":2783,"children":2784},{"style":333},[2785],{"type":51,"value":408},{"type":46,"tag":314,"props":2787,"children":2788},{"style":327},[2789],{"type":51,"value":413},{"type":46,"tag":314,"props":2791,"children":2792},{"class":316,"line":416},[2793,2798,2803],{"type":46,"tag":314,"props":2794,"children":2795},{"style":420},[2796],{"type":51,"value":2797},"tensorboard",{"type":46,"tag":314,"props":2799,"children":2800},{"style":364},[2801],{"type":51,"value":2802}," --logdir",{"type":46,"tag":314,"props":2804,"children":2805},{"style":364},[2806],{"type":51,"value":2807}," runs\u002Fnv_generate_vae_finetune\u002Fartifacts\u002Ftfevent\n",{"type":46,"tag":282,"props":2809,"children":2810},{},[2811,2813,2819,2821,2827,2829,2835,2836,2842],{"type":51,"value":2812},"The same per-epoch loss history is also captured in ",{"type":46,"tag":81,"props":2814,"children":2816},{"className":2815},[],[2817],{"type":51,"value":2818},"OUT_DIR\u002Fartifacts\u002Fworkflow_summary.json",{"type":51,"value":2820}," and echoed in the JSON the wrapper prints to stdout (",{"type":46,"tag":81,"props":2822,"children":2824},{"className":2823},[],[2825],{"type":51,"value":2826},"loss_history",{"type":51,"value":2828},", best-checkpoint paths, ",{"type":46,"tag":81,"props":2830,"children":2832},{"className":2831},[],[2833],{"type":51,"value":2834},"exit_code",{"type":51,"value":125},{"type":46,"tag":81,"props":2837,"children":2839},{"className":2838},[],[2840],{"type":51,"value":2841},"stderr_tail",{"type":51,"value":2843},").",{"type":46,"tag":54,"props":2845,"children":2847},{"id":2846},"_4-hyperparameter-tuning-and-common-pitfalls",[2848],{"type":51,"value":2849},"4. Hyperparameter tuning and common pitfalls",{"type":46,"tag":61,"props":2851,"children":2852},{},[2853,2886,2910,2940,2986,3014],{"type":46,"tag":65,"props":2854,"children":2855},{},[2856,2862,2864,2869,2871,2876,2878,2884],{"type":46,"tag":2857,"props":2858,"children":2859},"strong",{},[2860],{"type":51,"value":2861},"Reconstructions blurry",{"type":51,"value":2863}," — raise ",{"type":46,"tag":81,"props":2865,"children":2867},{"className":2866},[],[2868],{"type":51,"value":1566},{"type":51,"value":2870}," (default ",{"type":46,"tag":81,"props":2872,"children":2874},{"className":2873},[],[2875],{"type":51,"value":1579},{"type":51,"value":2877},"); try ",{"type":46,"tag":81,"props":2879,"children":2881},{"className":2880},[],[2882],{"type":51,"value":2883},"--recon-loss l2",{"type":51,"value":2885}," if edges look washed out.",{"type":46,"tag":65,"props":2887,"children":2888},{},[2889,2894,2896,2901,2903,2908],{"type":46,"tag":2857,"props":2890,"children":2891},{},[2892],{"type":51,"value":2893},"Posterior collapse \u002F over-regularized latents",{"type":51,"value":2895}," — ",{"type":46,"tag":81,"props":2897,"children":2899},{"className":2898},[],[2900],{"type":51,"value":1605},{"type":51,"value":2902}," is intentionally tiny (",{"type":46,"tag":81,"props":2904,"children":2906},{"className":2905},[],[2907],{"type":51,"value":1618},{"type":51,"value":2909},"); increasing it too much degrades reconstruction.",{"type":46,"tag":65,"props":2911,"children":2912},{},[2913,2918,2920,2925,2926,2931,2933,2938],{"type":46,"tag":2857,"props":2914,"children":2915},{},[2916],{"type":51,"value":2917},"Adversarial training unstable",{"type":51,"value":2919}," — lower ",{"type":46,"tag":81,"props":2921,"children":2923},{"className":2922},[],[2924],{"type":51,"value":1644},{"type":51,"value":2870},{"type":46,"tag":81,"props":2927,"children":2929},{"className":2928},[],[2930],{"type":51,"value":1657},{"type":51,"value":2932},") or ",{"type":46,"tag":81,"props":2934,"children":2936},{"className":2935},[],[2937],{"type":51,"value":1528},{"type":51,"value":2939},"; a warmup schedule already ramps the LR over the first 20 epochs.",{"type":46,"tag":65,"props":2941,"children":2942},{},[2943,2948,2950,2955,2957,2963,2965,2970,2972,2978,2980,2985],{"type":46,"tag":2857,"props":2944,"children":2945},{},[2946],{"type":51,"value":2947},"Out-of-memory",{"type":51,"value":2949}," — reduce ",{"type":46,"tag":81,"props":2951,"children":2953},{"className":2952},[],[2954],{"type":51,"value":1413},{"type":51,"value":2956}," (e.g. ",{"type":46,"tag":81,"props":2958,"children":2960},{"className":2959},[],[2961],{"type":51,"value":2962},"48,48,48",{"type":51,"value":2964},") and ",{"type":46,"tag":81,"props":2966,"children":2968},{"className":2967},[],[2969],{"type":51,"value":1489},{"type":51,"value":2971},", keep ",{"type":46,"tag":81,"props":2973,"children":2975},{"className":2974},[],[2976],{"type":51,"value":2977},"--batch-size 1",{"type":51,"value":2979},", and lower ",{"type":46,"tag":81,"props":2981,"children":2983},{"className":2982},[],[2984],{"type":51,"value":1770},{"type":51,"value":141},{"type":46,"tag":65,"props":2987,"children":2988},{},[2989,2998,3000,3005,3007,3012],{"type":46,"tag":2857,"props":2990,"children":2991},{},[2992],{"type":46,"tag":81,"props":2993,"children":2995},{"className":2994},[],[2996],{"type":51,"value":2997},"datalist must include non-empty validation[] or testing[]",{"type":51,"value":2999}," — the validation loop is mandatory; add ",{"type":46,"tag":81,"props":3001,"children":3003},{"className":3002},[],[3004],{"type":51,"value":759},{"type":51,"value":3006}," (or ",{"type":46,"tag":81,"props":3008,"children":3010},{"className":3009},[],[3011],{"type":51,"value":767},{"type":51,"value":3013},") entries.",{"type":46,"tag":65,"props":3015,"children":3016},{},[3017,3022,3024,3029],{"type":46,"tag":2857,"props":3018,"children":3019},{},[3020],{"type":51,"value":3021},"Single-GPU only",{"type":51,"value":3023}," — the runner asserts exactly one CUDA GPU; set ",{"type":46,"tag":81,"props":3025,"children":3027},{"className":3026},[],[3028],{"type":51,"value":663},{"type":51,"value":3030}," to pick which one.",{"type":46,"tag":54,"props":3032,"children":3034},{"id":3033},"_5-evaluate-the-finetuned-vae",[3035],{"type":51,"value":3036},"5. Evaluate the finetuned VAE",{"type":46,"tag":282,"props":3038,"children":3039},{},[3040,3042,3048,3050,3056,3058,3064],{"type":51,"value":3041},"Validation reconstruction loss (lowest-",{"type":46,"tag":81,"props":3043,"children":3045},{"className":3044},[],[3046],{"type":51,"value":3047},"val_weighted_loss",{"type":51,"value":3049}," epoch) is tracked automatically and the best autoencoder is saved as ",{"type":46,"tag":81,"props":3051,"children":3053},{"className":3052},[],[3054],{"type":51,"value":3055},"autoencoder_epochN.pt",{"type":51,"value":3057}," under ",{"type":46,"tag":81,"props":3059,"children":3061},{"className":3060},[],[3062],{"type":51,"value":3063},"OUT_DIR\u002Fartifacts\u002Fmodels",{"type":51,"value":3065},". To evaluate downstream:",{"type":46,"tag":61,"props":3067,"children":3068},{},[3069,3087],{"type":46,"tag":65,"props":3070,"children":3071},{},[3072,3074,3079,3080,3085],{"type":51,"value":3073},"Compare validation ",{"type":46,"tag":81,"props":3075,"children":3077},{"className":3076},[],[3078],{"type":51,"value":2719},{"type":51,"value":361},{"type":46,"tag":81,"props":3081,"children":3083},{"className":3082},[],[3084],{"type":51,"value":2733},{"type":51,"value":3086}," curves across runs in TensorBoard, and",{"type":46,"tag":65,"props":3088,"children":3089},{},[3090,3092,3102,3104,3109],{"type":51,"value":3091},"Plug the finetuned autoencoder into a diffusion finetune\u002Fgeneration run (e.g. ",{"type":46,"tag":515,"props":3093,"children":3095},{"href":3094},"..\u002Fnv-generate-mr-brain-finetune\u002FSKILL.md",[3096],{"type":46,"tag":81,"props":3097,"children":3099},{"className":3098},[],[3100],{"type":51,"value":3101},"nv-generate-mr-brain-finetune",{"type":51,"value":3103}," via ",{"type":46,"tag":81,"props":3105,"children":3107},{"className":3106},[],[3108],{"type":51,"value":1265},{"type":51,"value":3110},") to confirm latents still decode to usable volumes.",{"type":46,"tag":282,"props":3112,"children":3113},{},[3114],{"type":51,"value":3115},"This skill gates file accounting and reconstruction bookkeeping only — image quality and downstream utility must be judged by a domain expert.",{"type":46,"tag":54,"props":3117,"children":3119},{"id":3118},"limitations",[3120],{"type":51,"value":3121},"Limitations",{"type":46,"tag":61,"props":3123,"children":3124},{},[3125,3138,3143,3148],{"type":46,"tag":65,"props":3126,"children":3127},{},[3128,3130,3136],{"type":51,"value":3129},"Requires a current upstream ",{"type":46,"tag":81,"props":3131,"children":3133},{"className":3132},[],[3134],{"type":51,"value":3135},"NV-Generate-CTMR",{"type":51,"value":3137}," checkout with VAE configs and helper APIs. The skill owns the runner glue and does not depend on the notebook.",{"type":46,"tag":65,"props":3139,"children":3140},{},[3141],{"type":51,"value":3142},"Full training can be expensive and is not deterministic across hardware, CUDA, and package versions.",{"type":46,"tag":65,"props":3144,"children":3145},{},[3146],{"type":51,"value":3147},"The wrapper gates file accounting and command provenance, not anatomical realism, reconstruction quality, or downstream model utility.",{"type":46,"tag":65,"props":3149,"children":3150},{},[3151],{"type":51,"value":3152},"Not for clinical deployment, clinical interpretation, autonomous diagnosis, regulatory submission, or production training-data approval.",{"type":46,"tag":54,"props":3154,"children":3156},{"id":3155},"troubleshooting",[3157],{"type":51,"value":3158},"Troubleshooting",{"type":46,"tag":530,"props":3160,"children":3161},{},[3162,3183],{"type":46,"tag":534,"props":3163,"children":3164},{},[3165],{"type":46,"tag":538,"props":3166,"children":3167},{},[3168,3173,3178],{"type":46,"tag":542,"props":3169,"children":3170},{},[3171],{"type":51,"value":3172},"Error",{"type":46,"tag":542,"props":3174,"children":3175},{},[3176],{"type":51,"value":3177},"Cause",{"type":46,"tag":542,"props":3179,"children":3180},{},[3181],{"type":51,"value":3182},"Fix",{"type":46,"tag":557,"props":3184,"children":3185},{},[3186,3227,3261],{"type":46,"tag":538,"props":3187,"children":3188},{},[3189,3198,3208],{"type":46,"tag":564,"props":3190,"children":3191},{},[3192],{"type":46,"tag":81,"props":3193,"children":3195},{"className":3194},[],[3196],{"type":51,"value":3197},"VAE configs\u002Fhelpers were not found",{"type":46,"tag":564,"props":3199,"children":3200},{},[3201,3206],{"type":46,"tag":81,"props":3202,"children":3204},{"className":3203},[],[3205],{"type":51,"value":346},{"type":51,"value":3207}," does not point at a current NV-Generate-CTMR checkout.",{"type":46,"tag":564,"props":3209,"children":3210},{},[3211,3213,3219,3221,3226],{"type":51,"value":3212},"Clone or update ",{"type":46,"tag":81,"props":3214,"children":3216},{"className":3215},[],[3217],{"type":51,"value":3218},"https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Generate-CTMR",{"type":51,"value":3220}," and set ",{"type":46,"tag":81,"props":3222,"children":3224},{"className":3223},[],[3225],{"type":51,"value":346},{"type":51,"value":141},{"type":46,"tag":538,"props":3228,"children":3229},{},[3230,3238,3243],{"type":46,"tag":564,"props":3231,"children":3232},{},[3233],{"type":46,"tag":81,"props":3234,"children":3236},{"className":3235},[],[3237],{"type":51,"value":2997},{"type":46,"tag":564,"props":3239,"children":3240},{},[3241],{"type":51,"value":3242},"VAE training requires validation data for the configured validation loop.",{"type":46,"tag":564,"props":3244,"children":3245},{},[3246,3248,3253,3254,3259],{"type":51,"value":3247},"Add ",{"type":46,"tag":81,"props":3249,"children":3251},{"className":3250},[],[3252],{"type":51,"value":759},{"type":51,"value":761},{"type":46,"tag":81,"props":3255,"children":3257},{"className":3256},[],[3258],{"type":51,"value":767},{"type":51,"value":3260}," entries with relative image paths.",{"type":46,"tag":538,"props":3262,"children":3263},{},[3264,3269,3274],{"type":46,"tag":564,"props":3265,"children":3266},{},[3267],{"type":51,"value":3268},"CUDA, MONAI, or LPIPS import failure",{"type":46,"tag":564,"props":3270,"children":3271},{},[3272],{"type":51,"value":3273},"Runtime environment lacks upstream dependencies.",{"type":46,"tag":564,"props":3275,"children":3276},{},[3277,3279,3285,3287,3293],{"type":51,"value":3278},"Install ",{"type":46,"tag":81,"props":3280,"children":3282},{"className":3281},[],[3283],{"type":51,"value":3284},"\"$NV_GENERATE_ROOT\u002Frequirements.txt\"",{"type":51,"value":3286}," plus ",{"type":46,"tag":81,"props":3288,"children":3290},{"className":3289},[],[3291],{"type":51,"value":3292},"lpips tensorboard",{"type":51,"value":3294}," in the selected environment.",{"type":46,"tag":3296,"props":3297,"children":3298},"style",{},[3299],{"type":51,"value":3300},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":3302,"total":3406},[3303,3320,3334,3348,3360,3377,3392],{"slug":3304,"name":3304,"fn":3305,"description":3306,"org":3307,"tags":3308,"stars":20,"repoUrl":21,"updatedAt":3319},"accelerated-computing-cudf","accelerate data processing with cuDF","Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV\u002FParquet I\u002FO, nullable semantics, and multi-GPU DataFrame workloads.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3309,3312,3315,3316],{"name":3310,"slug":3311,"type":15},"Data Analysis","data-analysis",{"name":3313,"slug":3314,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":3317,"slug":3318,"type":15},"Performance","performance","2026-07-14T05:28:43.176466",{"slug":3321,"name":3321,"fn":3322,"description":3323,"org":3324,"tags":3325,"stars":20,"repoUrl":21,"updatedAt":3333},"aiq-deploy","deploy and manage NVIDIA AI-Q infrastructure","Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3326,3329,3332],{"name":3327,"slug":3328,"type":15},"Deployment","deployment",{"name":3330,"slug":3331,"type":15},"Infrastructure","infrastructure",{"name":9,"slug":8,"type":15},"2026-07-14T05:29:06.667109",{"slug":3335,"name":3335,"fn":3336,"description":3337,"org":3338,"tags":3339,"stars":20,"repoUrl":21,"updatedAt":3347},"aiq-research","conduct deep research with AI-Q","Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3340,3343,3344],{"name":3341,"slug":3342,"type":15},"Agents","agents",{"name":9,"slug":8,"type":15},{"name":3345,"slug":3346,"type":15},"Research","research","2026-07-14T05:28:06.816956",{"slug":3349,"name":3349,"fn":3350,"description":3351,"org":3352,"tags":3353,"stars":20,"repoUrl":21,"updatedAt":3359},"amc-run-sample-calibration","run AMC sample dataset calibration","Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3354,3355,3356],{"name":3310,"slug":3311,"type":15},{"name":9,"slug":8,"type":15},{"name":3357,"slug":3358,"type":15},"Testing","testing","2026-07-17T05:29:03.913266",{"slug":3361,"name":3361,"fn":3362,"description":3363,"org":3364,"tags":3365,"stars":20,"repoUrl":21,"updatedAt":3376},"amc-run-video-calibration","calibrate video datasets with AutoMagicCalib","Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP\u002Flive streams, use amc-run-rtsp-calibration instead.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3366,3369,3372,3373],{"name":3367,"slug":3368,"type":15},"Automation","automation",{"name":3370,"slug":3371,"type":15},"Imaging","imaging",{"name":9,"slug":8,"type":15},{"name":3374,"slug":3375,"type":15},"Video","video","2026-07-17T05:28:53.905004",{"slug":3378,"name":3378,"fn":3379,"description":3380,"org":3381,"tags":3382,"stars":20,"repoUrl":21,"updatedAt":3391},"amc-setup-calibration-stack","deploy AutoMagicCalib microservice with Docker","Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3383,3384,3387,3388],{"name":3327,"slug":3328,"type":15},{"name":3385,"slug":3386,"type":15},"Docker","docker",{"name":9,"slug":8,"type":15},{"name":3389,"slug":3390,"type":15},"Operations","operations","2026-07-17T05:28:56.913999",{"slug":3393,"name":3393,"fn":3394,"description":3395,"org":3396,"tags":3397,"stars":20,"repoUrl":21,"updatedAt":3405},"cudaq-guide","develop quantum applications with CUDA-Q","CUDA-Q onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3398,3399,3402],{"name":9,"slug":8,"type":15},{"name":3400,"slug":3401,"type":15},"Quantum Computing","quantum-computing",{"name":3403,"slug":3404,"type":15},"Simulation","simulation","2026-07-14T05:26:58.898253",305,{"items":3408,"total":3556},[3409,3427,3442,3453,3465,3479,3492,3504,3515,3524,3538,3547],{"slug":3410,"name":3410,"fn":3411,"description":3412,"org":3413,"tags":3414,"stars":3424,"repoUrl":3425,"updatedAt":3426},"nemoclaw-user-guide","retrieve NemoClaw documentation and configuration","Guides human users' AI agents to the NemoClaw docs MCP server and canonical Fern documentation in Markdown form. Use when users ask how to install, configure, operate, troubleshoot, secure, or learn NemoClaw with an AI coding assistant. Trigger keywords - nemoclaw docs, use nemoclaw with ai agent, nemoclaw mcp docs, nemoclaw install help, nemoclaw quickstart, nemoclaw markdown docs, llms.txt, agent skills.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3415,3418,3421],{"name":3416,"slug":3417,"type":15},"Documentation","documentation",{"name":3419,"slug":3420,"type":15},"MCP","mcp",{"name":3422,"slug":3423,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":3428,"name":3428,"fn":3429,"description":3430,"org":3431,"tags":3432,"stars":3439,"repoUrl":3440,"updatedAt":3441},"mcore-build-and-dependency","manage Megatron-LM development environments","Container-based dev environment setup and dependency management for Megatron-LM. Covers acquiring and launching the CI container, uv package management, and updating uv.lock.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3433,3436,3437],{"name":3434,"slug":3435,"type":15},"Containers","containers",{"name":3327,"slug":3328,"type":15},{"name":3438,"slug":423,"type":15},"Python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":3443,"name":3443,"fn":3444,"description":3445,"org":3446,"tags":3447,"stars":3439,"repoUrl":3440,"updatedAt":3452},"mcore-bump-base-image","update NVIDIA PyTorch base images","Bump the NVIDIA PyTorch base image (`nvcr.io\u002Fnvidia\u002Fpytorch:YY.MM-py3`) used by Megatron-LM CI. Covers the two pin sites (GitHub CI in `docker\u002F.ngc_version.dev` and GitLab CI in `.gitlab\u002Fstages\u002F01.build.yml`), the post-bump CI loop (re-run functional tests, refresh golden values, mark broken tests), and the gotchas that bit PRs",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3448,3451],{"name":3449,"slug":3450,"type":15},"CI\u002FCD","ci-cd",{"name":3327,"slug":3328,"type":15},"2026-07-14T05:25:59.97109",{"slug":3454,"name":3454,"fn":3455,"description":3456,"org":3457,"tags":3458,"stars":3439,"repoUrl":3440,"updatedAt":3464},"mcore-cicd","manage CI\u002FCD pipelines for Megatron-LM","CI\u002FCD reference for Megatron-LM. Covers CI pipeline structure, PR scope labels, triggering internal GitLab CI (which force-pushes the current branch to a pull-request\u002FBRANCH ref — always dry-run and verify the destination first; never run against shared or protected branches), and CI failure investigation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3459,3460,3461],{"name":3449,"slug":3450,"type":15},{"name":3327,"slug":3328,"type":15},{"name":3462,"slug":3463,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":3466,"name":3466,"fn":3467,"description":3468,"org":3469,"tags":3470,"stars":3439,"repoUrl":3440,"updatedAt":3478},"mcore-create-issue","investigate CI failures and create issues","Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3471,3474,3475],{"name":3472,"slug":3473,"type":15},"Debugging","debugging",{"name":3462,"slug":3463,"type":15},{"name":3476,"slug":3477,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":3480,"name":3480,"fn":3481,"description":3482,"org":3483,"tags":3484,"stars":3439,"repoUrl":3440,"updatedAt":3491},"mcore-linting-and-formatting","lint and format Megatron-LM code","Linting and formatting for Megatron-LM. Covers running autoformat.sh, tools (ruff, black, isort, pylint, mypy), and code style rules.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3485,3488],{"name":3486,"slug":3487,"type":15},"Best Practices","best-practices",{"name":3489,"slug":3490,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":3493,"name":3493,"fn":3494,"description":3495,"org":3496,"tags":3497,"stars":3439,"repoUrl":3440,"updatedAt":3503},"mcore-migrate-gpt-to-hybrid","migrate Megatron-LM models to HybridModel","Migration guide for moving Megatron Core GPTModel checkpoints, model providers, training commands, and layer mappings to HybridModel.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3498,3499,3502],{"name":13,"slug":14,"type":15},{"name":3500,"slug":3501,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":3505,"name":3505,"fn":3506,"description":3507,"org":3508,"tags":3509,"stars":3439,"repoUrl":3440,"updatedAt":3514},"mcore-onboard-gb200-1node-tests","onboard functional tests for GB200","Onboard 1-node GitHub MR functional tests for GB200 from existing mr-scoped 2-node tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3510,3513],{"name":3511,"slug":3512,"type":15},"QA","qa",{"name":3357,"slug":3358,"type":15},"2026-07-14T05:25:53.673039",{"slug":3516,"name":3516,"fn":3517,"description":3518,"org":3519,"tags":3520,"stars":3439,"repoUrl":3440,"updatedAt":3523},"mcore-run-on-slurm","launch distributed training jobs on SLURM","How to launch distributed Megatron-LM training jobs on a SLURM cluster. Covers a minimal sbatch skeleton, environment-variable setup for torch.distributed.run, CUDA_DEVICE_MAX_CONNECTIONS rules across hardware and parallelism modes, container conventions, monitoring, and per-rank failure diagnosis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3521,3522],{"name":3327,"slug":3328,"type":15},{"name":3330,"slug":3331,"type":15},"2026-07-14T05:25:49.362534",{"slug":3525,"name":3525,"fn":3526,"description":3527,"org":3528,"tags":3529,"stars":3439,"repoUrl":3440,"updatedAt":3537},"mcore-split-pr","split pull requests to reduce review load","Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3530,3533,3534],{"name":3531,"slug":3532,"type":15},"Code Review","code-review",{"name":3462,"slug":3463,"type":15},{"name":3535,"slug":3536,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":3539,"name":3539,"fn":3540,"description":3541,"org":3542,"tags":3543,"stars":3439,"repoUrl":3440,"updatedAt":3546},"mcore-testing","run and manage Megatron-LM tests","Test system for Megatron-LM. Covers test layout, recipe YAML structure, adding and running unit and functional tests, golden values, marker filters, and CI parity.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3544,3545],{"name":3511,"slug":3512,"type":15},{"name":3357,"slug":3358,"type":15},"2026-07-14T05:25:54.928983",{"slug":3548,"name":3548,"fn":3549,"description":3550,"org":3551,"tags":3552,"stars":3439,"repoUrl":3440,"updatedAt":3555},"nightly-sync","manage nightly main-to-dev sync workflows","Domain knowledge for the nightly main-to-dev sync workflow. Covers merge strategy, CI architecture, failure investigation, and known issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[3553,3554],{"name":3367,"slug":3368,"type":15},{"name":3449,"slug":3450,"type":15},"2026-07-30T05:29:03.275638",496]