界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
数据与研究 · SKILL.md

customize-data-model

customize-data-model

【数据与研究】Customize Lightning-Hydra-Template DataModules, LightningModules, network components, optimizers, schedulers, and Hydra target wiring.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: customize-data-model description: "Customize Lightning-Hydra-Template DataModules, LightningModules, network components, optimizers, schedulers, and Hydra target wiring." disable-model-invocation: true metadata: disco-role: operating license: MIT

Customize Data and Model Code

Use this sub-skill when adapting the template away from the MNIST example or repairing target imports after changing package/module names.

Triggers

Read this sub-skill for tasks about:

  • Replacing MNISTDataModule, adding a new LightningDataModule, or changing data splits/loaders.
  • Replacing MNISTLitModule, adding model components, changing optimizers/schedulers, metrics, or torch.compile behavior.
  • Editing configs/data/*.yaml or configs/model/*.yaml _target_ strings.
  • Renaming the default src package and fixing stale imports.
  • Diagnosing batch-size/world-size, metric key, dataloader dtype/shape, or target import errors.

Quick workflow

  1. Before editing, render the composed config and note current data/model targets.
  2. Add or update Python classes in the target checkout's package.
  3. Update config _target_ strings and constructor parameters together.
  4. Run the bundled target checker:
    python <this-skill>/sub-skills/customize-data-model/scripts/check_hydra_targets.py --repo-root . --config configs/data/mnist.yaml --config configs/model/mnist.yaml
    
  5. Compose and instantiate train/eval configs without data download:
    python <this-skill>/scripts/check_lightning_hydra_project.py --repo-root . --config-name train.yaml --instantiate
    
  6. If the task needs real data behavior, adapt pytest fixtures or use cached/tiny data before running training tests.

Read references

  • Data and model API: verified signatures, method contracts, metrics, optimizer/scheduler wiring, and config fields.
  • Customization recipes: replacing data/model modules, renaming packages, and keeping configs/tests aligned.
  • Troubleshooting: stale _target_, batch-size divisibility, metric mismatch, dataloader/data-download issues, and torch.compile problems.

Bundled script

  • scripts/check_hydra_targets.py: scans YAML configs for _target_ dotted paths, imports them from a target checkout, and optionally instantiates composed train/eval configs via the root inspector.

Boundaries

我的收藏