detection-training
Use to train and evaluate Faster R-CNN detectors from LanceDB materialized views (BDD100K failure-mode slices) — direct versus deployed-service execution, the…
Skill by nebius
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/nebius-detection-training
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/detection-training
What's inside
- Skill name
detection-training- Description
- Use to train and evaluate Faster R-CNN detectors from LanceDB materialized views (BDD100K failure-mode slices) — direct versus deployed-service execution, the mandatory label map for string categories, and checkpoint discovery at eval time.
- License
- Apache-2.0
- Instructions
- 174 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Detection training (LanceDB view → Faster R-CNN)
This tool trains an object detector on a **slice** of a dataset rather than the
whole thing. The input is a LanceDB materialized view, which is what makes the
failure-mode workflow possible: curate a view of nighttime frames, or distant
objects, or riders, then train and evaluate only on that slice.
Upstream is `skills/tools/lancedb/SKILL.md` — create the view with
`npa workbench lancedb create-mv` / `refresh-mv` before anything here. The end-to-end
pipeline is `workflows/testing/bdd100k-pipeline.yaml`, with a
walkthrough in `docs/workbench/cookbooks/bdd100k-pipeline.md`.
## Two execution modes
Direct (the default) runs the work from your CLI invocation. Service mode calls a
deployed Kubernetes endpoint:
```bash
npa workbench detection-training train --view <mv-name> --output-uri s3://<bucket>/runs/<id>/
npa workbench detection-training train --view <mv-name> --service --endpoint <url>
```
Deploy the service only when you want a persistent endpoint several runs share:
```bash
npa workbench detection-training deploy \
--project <alias> --cluster-name <name> \
--input-path s3://<bucket>/lancedb/<db>/ \
--output-path s3://<bucket>/detection/ \
--gpu-type h100 --namespace default \
--dry-run # prints the manifest without applying
npa workbench detection-training deploy --project <alias> --destroy
```
`--gpu-type` accepts `h100`, `b200`, `l40s`, and `rtxpro6000`; verify actual cluster labels and reservation placement before deploying. Auth defaults to `token` (the token comes from
the variable named by `--token-env`, default `DETECTION_TRAINING_TOKEN`);
`--insecure-no-auth` exists but should not be used. Official NPA GHCR images
pull anonymously, so `--image-pull-secret` defaults to empty. For an optional
operator-controlled private registry, pass the name of an existing standard
Kubernetes pull secret explicitly. Always `--dry-run` first and read the
manifest.
## Train
```bash
npa workbench detection-training train \
--view <materialized-view> \
--output-uri s3://<bucket>/detection/runs/<id>/ \
--label-map '{"person":0,"rider":1,"car":2}' \
--epochs 10 --batch-size 8 --learning-rate 0.005 \
--wait --poll-seconds 30 --timeout-seconds 21600 \
--output json
```
`--view` is the only required flag. `--data-path` (alias `--lance-uri` /
`--input-path`) overrides which LanceDB the view is read from. `--override
KEY=VALUE` sets request fields the flags do not expose. Weights and Biases
logging is opt-in and defaults to `offline` mode.
`--wait` polls `/status` until the run completes **and fails if it does not** —
without it, the command returns as soon as the run is accepted, which is easy to
misread as success. Default output format for `train` and `eval` is `json`.
## The label map is not optional for BDD100K
**`--label-map` is required whenever the dataset stores string categories, which
BDD100K does.** Without it, category names reach `int()` and the run dies on:
```
invalid literal for int() with base 10: 'train'
```
`train` is a real BDD100K category — the vehicle. Reading that traceback as a
bug in the training code, rather than a missing label map, costs more time than
it should. Accepted formats are JSON (`{"person":0,...}`) or comma-separated
pairs (`person=0,rider=1`). Class count is inferred from the map by default.
Source maps containing zero shift all IDs by one inside the detector because
Faster R-CNN reserves zero for background. Checkpoints retain both maps; string
and numeric annotations from materialized views keep the same category identity.
Explicit `--num-classes` includes background and must cover every mapped ID.
## Evaluate
```bash
npa workbench detection-training eval \
--checkpoint-uri s3://<bucket>/detection/runs/<id>/ \
--eval-view <validation-mv> \
--output-uri s3://<bucket>/detection/eval/<id>/ \
--label-map '{"person":0,"rider":1,"car":2}' \
--discover-checkpoint \
--write-canonical-metrics
```
`--eval-view` and `--output-uri` are required. `--discover-checkpoint` changes
what `--checkpoint-uri` means: it becomes the training **output prefix** to
search, and the checkpoint is selected from the last completed `/runs` entry
using its verified final checkpoint artifact. Legacy records without artifact
metadata retain the epoch-pattern fallback. Use it instead of hand-assembling a
checkpoint filename from an epoch count you assumed.
`--write-canonical-metrics` publishes the response under the output prefix so
downstream stages and `npa workbench insights` can pick it up. Evaluation reads
the checkpoint map automatically. An explicit map must match its category
identity; mismatches fail before model execution. Legacy checkpoints preserve
the original IDs. Missing metric dependencies fail instead of returning fake
zero scores; an undefined COCO metric remains `-1`.
## In workflows
toolRefs are per-slice pairs rather than one generic tool:
`workbench.detection_training.train_nighttime` / `.eval_nighttime`,
`.train_distant` / `.eval_distant`, `.train_rider` / `.eval_rider`. They appear
together in `bdd100k-pipeline.yaml`, which builds the views, trains each slice,
and evaluates each against its validation view.
## Gotchas
- **Train and eval must agree on category identity.** New checkpoints record it
and evaluation rejects a conflicting explicit map.From nebius/nebius-physical-ai, Apache-2.0.
More from nebius/nebius-physical-ai
- 0.666score
curobo
nebius
Use when running, validating or reviewing NVIDIA cuRobo V2 Franka pose planning and complete MotionBenchMaker/MPiNets benchmarks on CUDA, with factual…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-first-guidance
nebius
Use when recommending how to run a workbench workload, writing user-facing docs, or answering "what should I run first?" — lead with the Nebius GPU path and…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
cosmos
nebius
Use when working on Cosmos world model serving, inference, serverless training smoke validation, backend selection, or rendering limitations.
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
embodiedgen
nebius
Use when running or reviewing the operator-private EmbodiedGen V2 image-to-rigid-object workflow with upstream TRELLIS generation, URDF export, collision…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-selection
nebius
Use when choosing or reviewing GPU targets for NPA workbench tools, training, rendering, inference, or workflow YAML resources.
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
toolref-argv-contract
nebius
Use when adding or changing an npa.workflow toolRef argv template, or when changing a CLI option that a toolRef already passes — the contract that stops a…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
debug-failed-run
nebius
Use when a workflow run failed, hung, or produced no artifacts — an ordered triage from run id to root cause across status, stage logs, S3 evidence, pod-level…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
agent-development
nebius
Use when building, enhancing, or testing the NPA chat agent backend — grounded-first routing, cost-aware Token Factory model selection, the embedded-backend…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-allocation-fallback
nebius
Track typed GPU placement failures in the NPA agent and offer a consent-gated on-demand-to-preemptible fallback after repeated failures or deterministic…
SkillAFreshness: A★ 60Claude Code +9 - 0.665score
submit-workflow
nebius
Use when submitting, validating, or debugging NPA SkyPilot workflow YAMLs and workflow runner paths.
SkillAFreshness: A★ 60Claude Code +9 - 0.663score
cosmos-data-factory-setup
nebius
Prepare the shared NPA runtime, storage, credentials, and private compatibility images for Cosmos Data Factory IAA or EVG workflows on Nebius and SkyPilot.
SkillAFreshness: A★ 60Claude Code +9 - 0.663score
physical-ai-image-attribute-augmentation
nebius
Author, run, or inspect the NPA Cosmos Data Factory IAA workflow for person-image clothing, color, and footwear augmentation with attribute verification and…
SkillAFreshness: A★ 60Claude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 60
- Forks
- 19
- Open issues
- 10
- Last commit (this folder)
- Sep 6, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/nebius/nebius-physical-ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from nebius
- 0.666score
gpu-allocation-fallback
nebius
Track typed GPU placement failures in the NPA agent and offer a consent-gated on-demand-to-preemptible fallback after repeated failures or deterministic…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
toolref-argv-contract
nebius
Use when adding or changing an npa.workflow toolRef argv template, or when changing a CLI option that a toolRef already passes — the contract that stops a…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
agent-development
nebius
Use when building, enhancing, or testing the NPA chat agent backend — grounded-first routing, cost-aware Token Factory model selection, the embedded-backend…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
debug-failed-run
nebius
Use when a workflow run failed, hung, or produced no artifacts — an ordered triage from run id to root cause across status, stage logs, S3 evidence, pod-level…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
gpu-first-guidance
nebius
Use when recommending how to run a workbench workload, writing user-facing docs, or answering "what should I run first?" — lead with the Nebius GPU path and…
SkillAFreshness: A★ 60Claude Code +9 - 0.666score
cosmos
nebius
Use when working on Cosmos world model serving, inference, serverless training smoke validation, backend selection, or rendering limitations.
SkillAFreshness: A★ 60Claude Code +9
Cite this page
detection-training skill. Agent Mart. https://agentmart.dev/skills/nebius-detection-training (last updated 2026-10-24)