executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
training-and-scaleoutTeach SpikingJelly model-zoo image classification, train_classify Trainer workflows, Spikformer and SEW-ResNet training, and bounded distributed vision topology guidance.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when the task is to build, train, adapt, or sanity-check SpikingJelly image-classification workflows from the model zoo, including legacy train_classify.Trainer recipes and the newer distributed vision configuration API.
spikingjelly.activation_based.model, especially spiking_resnet, sew_resnet, spikformer, and adjacent VGG-style baselines.spikingjelly.activation_based.model.train_classify.Trainer: subclassing, CLI arguments, optimizer/scheduler hooks, time-axis preprocessing, and model-output readout.spikingjelly.activation_based.model.train_imagenet_example.SResNetTrainer-style ImageNet recipes.spikformer_ti, spikformer_s, spikformer_cifar10, input/output shapes, and training-readout conventions.sew_resnet18/34/50/..., residual connection choices, multi-step execution, and classification readout.spikingjelly.activation_based.distributed.vision: TrainingConfig, SEWResNet34Config, SpikformerConfig, SpikformerCIFAR10Config, train_classification, DDP/FSDP2, channel TP, PP, and synthetic configuration smokes.ChannelShardConv1d/2d and ChannelShardBatchNorm1d/2d.step_mode, surrogate-gradient, neuron/layer semantics, monitors, or reset basics. Route to core-snn unless the question is specifically a training-loop placement issue.train_classify.Trainer and override the model/time-axis hooks.distributed.vision.TrainingConfig.functional.reset_net(model) after each independent batch/window.[N, C, H, W].[T, N, C, H, W] internally.distributed.vision.TrainingConfig.input_layout="NTCHW" means the DataLoader yields [N, T, C, H, W], which the trainer converts to time-first.[T, N, C]; use y.mean(0) or the task-defined firing-rate reduction before cross_entropy.[N, C] outputs are already reduced.train_classify.Trainer and distributed.vision separate:
Trainer is the extensible torchvision-reference-style trainer.distributed.vision owns DDP/FSDP2/channel-TP/PP topology contracts.Trainer override contract without downloads.references/training-recipes.md: model-zoo, Trainer, Spikformer, and SEW-ResNet recipes.references/distributed-and-llm.md: distributed vision configs, topology constraints, tensor-parallel building blocks, custom builders, and reference-only LLM notes.references/troubleshooting.md: training and scale-out failure modes.scripts/vision_training_config_smoke.py: safe no-download synthetic smoke for Trainer, distributed.vision.TrainingConfig, built-in vision builders, and PP shape checks. It does not launch distributed training.Consulted source files:
spikingjelly/activation_based/model/__init__.pyspikingjelly/activation_based/model/train_classify.pyspikingjelly/activation_based/model/train_imagenet_example.pyspikingjelly/activation_based/model/spiking_resnet.pyspikingjelly/activation_based/model/sew_resnet.pyspikingjelly/activation_based/model/spikformer.pyspikingjelly/activation_based/distributed/__init__.pyspikingjelly/activation_based/distributed/vision/config.pyspikingjelly/activation_based/distributed/vision/training.pyspikingjelly/activation_based/distributed/vision/sew_resnet.pyspikingjelly/activation_based/distributed/vision/spikformer.pyspikingjelly/activation_based/distributed/tensor_parallel/channel.pyspikingjelly/activation_based/distributed/llm/{config,planning,training}.py as reference-only LLM evidencebenchmark/vision_distributed.py as the source evidence for the repository's synthetic distributed vision entrypointConsulted docs:
docs/source/tutorials/en/train_large_scale_snn.rstdocs/source/tutorials/en/spikformer.rstdocs/source/tutorials/en/distributed_training.rstdocs/source/APIs/spikingjelly.activation_based.model.rstdocs/source/APIs/spikingjelly.activation_based.distributed.rstdocs/source/changelog.rstConsulted tests:
test/activation_based/test_spikformer_model.pytest/activation_based/test_distributed_vision.pytest/activation_based/test_distributed_tensor_parallel.pytest/activation_based/test_distributed_config.pytest/activation_based/test_distributed_planning.pytest/activation_based/test_distributed_training.pybenchmark/test/test_snn_single_gpu_benchmark.pyVerified live-signature evidence:
skills/tests/spikingjelly/reports/environment/repo_env_report.json confirms the prepared inspection environment imports spikingjelly.activation_based.distributed, has spikingjelly 2.0.0.dev1, Python 3.11, CUDA/CuPy/Triton readiness for the selected repo scope, and does not prepare the optional Megatron Core stack.Trainer, Spikformer factories, SEW-ResNet factories, distributed.vision config objects, train_classification, and tensor-parallel modules.distributed.vision.train_classification requires CUDA/NCCL at runtime; the bundled smoke is intentionally CPU-safe and checks configuration/model-builder contracts without launching training.spikingjelly[megatron] and verifies it.