技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
training【数据与研究】Training, fine-tuning, evaluation, distillation, custom COCO dataset setup, and distributed launch workflows for DAMO-YOLO.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the task involves DAMO-YOLO training, fine-tuning, evaluation, distillation, dataset setup, config editing, checkpoints, or distributed CUDA launch commands.
Do not use this sub-skill for image/video/camera demos, ONNX/TensorRT export, partial quantization, or deployment-only backend diagnostics; route those to the inference or deployment sub-skill.
damo package, CUDA-enabled PyTorch, NCCL support, a user-owned config file, and any dataset/checkpoint files needed by that config.Config.merge() only replaces existing top-level attributes.--workdir with bundled scripts when the config reads relative TinyNAS structure files or relative dataset paths.These scripts adapt the repository train/eval behavior into generated-skill-owned launchers. They import the installed damo package and do not call repo-local tools/train.py or tools/eval.py.
scripts/launch_train.sh: validates config/dataset/CUDA/NCCL state, then launches bundled train_entrypoint.py through torch.distributed.run; supports single/multi-GPU runs and optional teacher args for distillation.scripts/launch_eval.sh: validates config/dataset/checkpoint/CUDA/NCCL state, then launches bundled eval_entrypoint.py through torch.distributed.run; supports --fuse and source-compatible parser flags.scripts/validate_coco_config.py: checks that a config, path catalog entries, annotation JSON, class names, and head class count agree before a long run.coco because the base config routes by substring and raises Only support coco format dataset now! otherwise.cfg.dataset.class_names is required. Annotation category names must match these names exactly; category ids may be non-contiguous, but they are remapped by category name into contiguous class indices.cfg.dataset.train_ann; validation may list multiple dataset names.cfg.model.head['num_classes'] must equal len(cfg.dataset.class_names) and match the checkpoint head whenever strict loading is used.cfg.train.finetune_path starts a new run from pretrained detector weights. cfg.train.resume_path restores model, optimizer, and epoch. If both are set, finetune wins in Trainer.__init__, so never set both for an intended resume.--gpus equal to the number of visible GPUs and make cfg.train.batch_size or cfg.test.batch_size divisible by that count.