"Inspect and operate OpenPrompt training, evaluation, generation,
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill training-and-generation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Training And Generation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-training-and-generation)More formats (shields.io, HTML) on the badges page.
---
name: training-and-generation
description: "Inspect and operate OpenPrompt training, evaluation, generation,
runner selection, device placement, checkpointing, few-shot, zero-shot,
LM-BFF, and ProtoVerb workflows."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# Training and Generation
Use this sub-skill when the task asks how to run, inspect, resume, test, or debug OpenPrompt training/generation jobs after the dataset, template, verbalizer, and package environment choices are known.
Start here:
- Use [references/api-reference.md](references/api-reference.md) for runner APIs, device placement, config keys, checkpoint/logging semantics, and generation contracts.
- Use [references/workflows.md](references/workflows.md) for safe dry-runs, classification, generation, LM-BFF, ProtoVerb, few-shot, zero-shot, resume, and test recipes.
- Use [references/troubleshooting.md](references/troubleshooting.md) when CUDA, model cache, dataset, checkpoint, generation length, teacher-forcing, few-shot sampling, LM-BFF, or ProtoVerb behavior fails.
- Use [scripts/inspect_training_config.py](scripts/inspect_training_config.py) to summarize a YAML config without loading models, loading datasets, or starting training.
Operating rules:
1. Dry-run first. Inspect `experiments/*.yaml` with `scripts/inspect_training_config.py` before running `experiments/cli.py` or a tutorial script.
2. Runner selection follows `experiments/cli.py`: classification with `classification.auto_t` or `classification.auto_v` uses `LMBFFClassificationRunner`; classification with `verbalizer: proto_verbalizer` uses `ProtoVerbClassificationRunner`; other classification uses `ClassificationRunner`; `task: generation` uses `GenerationRunner`.
3. Treat `environment.num_gpus > 0` as a real CUDA request. OpenPrompt calls `model.cuda()` or wraps `DataParallel`; it does not automatically fall back to CPU when CUDA is unavailable.
4. `BaseRunner` writes TensorBoard and checkpoints under `config.logging.path` unless `train.clean: True`. The code writes `checkpoints/last.ckpt` and copies to `best.ckpt` on improved validation; the declared `checkpoint.save_latest` and `checkpoint.save_best` flags are not enforced by `BaseRunner`.
5. Generation training requires batches with `tgt_text` and correct `teacher_forcing`/`predict_eos_token` behavior. For evaluation/generation, pass generation kwargs deliberately; `generation.max_length` includes prompt/input tokens in the native generation API.
6. Few-shot and zero-shot behavior is owned by `experiments/cli.py`: few-shot loops over `sampling_from_train.seed`; zero-shot calls `runner.test()` without fitting.
7. Route dataset layout/config merging details to `../data-and-config-workflows/`, prompt grammar/verbalizer design to `../template-verbalizer-design/`, and top-level import/loading quickstarts to `../pipeline-basics/`.
8. Large-model CUDA, UltraChat/`accelerate`, and PaddlePaddle tutorial variants are optional workflows. The minimum verified scope is CPU package/config/API inspection, not GPU training throughput or benchmark reproduction.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!