计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
setup-and-config【效率与协作】Install, configure, run, diagnose, and safely extend the rPPG-Toolbox command-line pipeline.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when a Researcher needs to prepare an rPPG-Toolbox checkout, choose a YAML experiment, invoke main.py, explain a missing cache or checkpoint, or add a dispatch route. It is an operating guide, not a replacement for the dataset-loader, model, unsupervised-method, or evaluation implementations.
config, dataset, neural_methods, and unsupervised_methods; if invoked elsewhere, provide an explicit PYTHONPATH and make every relative config/data/checkpoint path intentional.setup.sh as evidence, not as a harmless probe: its conda route removes and recreates an environment, and its uv route removes .venv. Confirm before running either route.configs/infer_configs/ for inference or configs/train_configs/ for training. Replace all raw-data, cache, file-list, and checkpoint placeholders before a real run.python scripts/validate_config.py path/to/config.yaml from this sub-skill directory.
Add --check-paths to report missing user paths; the helper never downloads, creates, or deletes files.DO_PREPROCESS, USE_LAST_EPOCH, INFERENCE.MODEL_PATH, DEVICE, and LOG.PATH. See the CLI reference, configuration reference, and troubleshooting.setup.py or pyproject.toml at the repository root.train_and_test trains and then tests; only_test loads INFERENCE.MODEL_PATH and tests; unsupervised_method builds one unsupervised loader and runs every method in UNSUPERVISED.METHOD.DO_PREPROCESS: true; after a successful preprocess, set it to false and retain the derived cache and CSV file list. A false flag with no cache fails in BaseLoader; a missing list may be generated retroactively when the cache exists.python main.py --config_file path/to/config.yaml. The config path is the only CLI option consumed by config.update_config; use YAML for operational settings.train_and_testSet TRAIN.DATA.DATASET and TRAIN.DATA.DATA_PATH for the training loader, and TEST.DATA.DATASET and TEST.DATA.DATA_PATH for testing. Set TRAIN.MODEL_FILE_NAME, model settings, and training parameters. The main dispatcher constructs a validation-loader class even when TEST.USE_LAST_EPOCH: true; keep VALID.DATA.DATASET set to a supported dataset name in a normal training config. With USE_LAST_EPOCH: true, the validation DataLoader is None and testing uses the last epoch; with false, supply a real validation dataset/path and its cache.
only_testSet TEST.DATA.DATASET, TEST.DATA.DATA_PATH, and a readable INFERENCE.MODEL_PATH; use an inference config as the starting point. The selected trainer checks the model path and raises an inference-model-path error if it is absent. A false TEST.USE_LAST_EPOCH also causes the config updater to require validation settings, even though main.py does not build a validation loader for only_test.
unsupervised_methodSet UNSUPERVISED.DATA.DATASET, UNSUPERVISED.DATA.DATA_PATH, preprocessing settings, and a non-empty UNSUPERVISED.METHOD list. The current dispatch tokens are POS, CHROM, ICA, GREEN, LGI, PBV, and OMIT. Pseudo PPG labels are rejected for this mode. There is no supervised checkpoint requirement.
YACS starts from the schema in config.py, recursively merges BASE files relative to the config file, derives experiment paths, and freezes the result. Keep new keys declared in the schema before using them in YAML. Use DATA_PATH for raw input, CACHED_PATH for preprocessed data, and FILE_LIST_PATH for a directory or an explicit .csv; do not confuse a raw path with a cache path. DO_PREPROCESS is per data split. DEVICE defaults to cuda:0; LOG.PATH defaults to runs/exp. The full path formula, key table, mode matrix, and checkpoint cautions are in configuration.md.
INFERENCE.MODEL_PATH for only_test; MODEL.MODEL_DIR is a training output directory, not a substitute.LOG.PATH relative to the current working directory and remember ignored paths are still real files.When handing off a run, record the config path, mode, device, active dataset/path for each split, DO_PREPROCESS, printed derived cache/file-list paths, checkpoint path (if any), and the first error. This makes a retry reproducible without embedding private filesystem paths in the skill.
setup.sh until the user confirms that environment removal/recreation is acceptable.DO_PREPROCESS: false merely to skip a failure; first prove the matching cache exists.MODEL.MODEL_DIR as an inference checkpoint or assume a release checkpoint matches a new preprocessing identity.LOG.PATH and the printed derived output directory.TRAIN, VALID, TEST, and/or UNSUPERVISED dispatch site in main.py. Keep loader algorithms in the data-preparation skill.train, valid, test, and save behavior; add the exact MODEL.NAME branch to both train_and_test and test; add a config. Keep architecture details in supervised-models.unsupervised_method_inference, add a YAML token, and explicitly reject empty or misspelled tokens. Keep formulas in unsupervised-methods.After an extension, smoke-test dispatch with a minimal valid configuration or a mocked loader boundary before using real data. Do not silently fall back to another dataset/model/method: the source dispatcher raises ValueError for unsupported names.
This sub-skill intentionally does not explain loader algorithms, model architecture tables, unsupervised formulas, or plotting implementation; route those questions to data-preparation, supervised-models, unsupervised-methods, and evaluation-and-visualization. Its facts were distilled from the setup/configuration/extension sections of README.md, requirements.txt, setup.sh, the full config.py, representative train/infer YAMLs, main.py, neural_methods/trainer/BaseTrainer.py, dataset/data_loader/BaseLoader.py, and the root .gitignore. Source line ranges and known quirks are recorded in the bundled references; no source checkout path is required at runtime.