Skip to content
Back to skills

Training

ASecurity

"Configure and safely operate PointLLM's two-stage training

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
businesspythonbashnodebackendperformance

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill training --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Training?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Training
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-training-12cfba1f/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-training-12cfba1f)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: training
description: "Configure and safely operate PointLLM's two-stage training
  workflow, flags, checkpoints, and resource-sensitive validation without
  launching distributed training."
disable-model-invocation: true
metadata:
  disco-role: operating
license: CC BY-NC-SA 4.0
---

# PointLLM training

Use this sub-skill when a Researcher needs to configure, inspect, resume, or
troubleshoot PointLLM v1 training. It covers the repository's two stages and
its custom dataclass flags. It does **not** download data or weights, change an
environment, or launch `torchrun`.

## Route first

1. Establish local paths for an initial Hugging Face model directory, the
   point-cloud directory, its annotation JSON, and a writable output directory.
2. Choose exactly one stage:
   - **Stage 1** aligns the language model with PointBERT features. The shipped
     profile fixes the LLM and point backbone and tunes the point projector
     (new point-token input embeddings can also become trainable). It loads a
     separate point-backbone checkpoint.
   - **Stage 2** starts from the complete Stage-1 output, enables LLM tuning,
     uses the complex-instruction conversations, and keeps the point backbone
     in no-gradient/eval execution with the shipped `fix_pointnet=True`.
3. Run the bundled validator before editing a command or starting a job:

   ```bash
   python scripts/validate_training_config.py \
     --stage 1 --config training.json
   ```

   Add `--allow-missing` only for a path-planning dry run. The validator never
   invokes `torchrun`, imports the training entry point, or loads a checkpoint.
4. Read [workflows.md](references/workflows.md) for inert command templates and
   checkpoint/resume behavior. Read [configuration.md](references/configuration.md)
   before changing a flag. Use [troubleshooting.md](references/troubleshooting.md)
   when a check fails.

## Required stage invariants

- Stage 1: `stage_2=False`, `model_name_or_path` is the initial LLM/PointLLM
  directory, and `point_backbone_ckpt` points to the compatible PointBERT file.
- Stage 2: `stage_2=True`, `model_name_or_path` is the Stage-1 final output;
  do not point it at the initial directory unless intentionally restarting.
- Both stages require an annotation JSON and point-cloud directory. With
  `use_color=True`, each selected file is expected to be `(N, 6)` with XYZ in
  the first three columns and RGB in the final three columns.
- Keep `pointnum=8192` unless the model's PointBERT configuration and every
  `{object_id}_{pointnum}.npy` file have been changed together.
- Do not infer successful training from a created output directory. Confirm
  logs, loss progress, saved model state, and (when applicable) `point_proj.bin`.

## Resource and safety gates

- The reference profile uses one node and eight processes. This is a launch
  template, not an assertion that the current machine can run it.
- `bf16=True` requires a compatible accelerator and matching PyTorch/CUDA
  runtime. The inspection baseline supplied for this skill is Python 3.10,
  torch 2.0.1+cu117, Transformers 4.28.0.dev0 at commit `cae78c46`,
  tokenizers 0.12.1, and an A100 40GB (compute capability 8.0). Re-check the
  actual runtime rather than copying this baseline into a new environment.
- `train_mem.py` applies the repository's FlashAttention monkey patch before
  importing the model. A compatible compiled `flash-attn` is therefore a hard
  precondition for that entry point; `train.py` avoids that explicit patch but
  is not a performance or memory-equivalent fallback.
- Stage 2's `full_shard auto_wrap` and `LlamaDecoderLayer` settings use the
  source's experimental partially-frozen/FSDP path. Treat FSDP warnings,
  missing `use_orig_params` support, or backend/version mismatch as stop
  conditions; do not silently remove FSDP or unfreeze the point backbone.
- Stop before launch if the validator reports a stage contradiction, missing
  required input, incompatible point-backbone configuration, or unavailable
  required compiled backend. Stop after launch if the first batch cannot load,
  point-token counts disagree, or no trainable parameters receive loss.

## Outputs and handoff

The training code auto-resumes when `output_dir` already contains any
`checkpoint-*` directory. The templates set `save_strategy="no"`, so ordinary
runs do not create periodic checkpoints. `PointLLMTrainer` writes adapter state
under `point_proj/` for checkpoint saves and writes a final `point_proj.bin` when
adapter tuning is enabled; the final save also uses the Hugging Face model
serialization path. Preserve the output directory and trainer state together
when handing Stage 1 to Stage 2.

This sub-skill links only to its bundled references and validator. It records
source-derived behavior; it does not claim that a training run succeeded.

Files in this skill

  • SKILL.md4.7 KB
  • references/configuration.md7.4 KB
  • references/troubleshooting.md9 KB
  • references/workflows.md8.1 KB
  • scripts/validate_training_config.py16.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.