Configuration¶
CUVIS.AI uses Hydra composition and checked-in YAML files under configs/ as the current source of
truth for pipeline, data, training, trainrun, and plugin configuration.
Directory Layout¶
configs/
├── data/
├── pipeline/
│ ├── anomaly/
│ └── sam3/
├── plugins/
├── training/
└── trainrun/
Configuration Types¶
| Config type | Location | Purpose |
|---|---|---|
| Pipeline | configs/pipeline/ |
Node graph structure and connections |
| Data | configs/data/ |
Dataset paths, splits, and loader settings |
| Training | configs/training/ |
Trainer, optimizer, scheduler, callbacks |
| Trainrun | configs/trainrun/ |
Composed experiment definition |
| Plugins | configs/plugins/ |
Plugin manifests and registry |
Current Pipeline Shape¶
Use the current schema keys only:
metadata:
name: RX_Statistical
description: RX anomaly detector
author: cuvis.ai
nodes:
- name: data_node
class_name: cuvis_ai.node.data.LentilsAnomalyDataNode
hparams:
normal_class_ids: [0, 1]
- name: normalizer
class_name: cuvis_ai.node.normalization.MinMaxNormalizer
hparams:
eps: 1.0e-06
use_running_stats: true
connections:
- source: data_node.outputs.cube
target: normalizer.inputs.data
Current rules:
- Use
class_name, notclass. - Use
hparams, notparams. - Use
sourceandtarget, notfromandto.
Trainrun Composition¶
Trainruns compose pipeline, data, and training groups:
# @package _global_
defaults:
- /pipeline/anomaly/rx@pipeline: rx_statistical
- /data@data: lentils
- /training@training: default
- _self_
name: rx_lentils_demo
output_dir: ./outputs/${name}
metric_nodes:
- metrics
Typical command-line overrides:
Shipped Pipeline Families¶
| Family | Directory | Notes |
|---|---|---|
| RX | configs/pipeline/anomaly/rx/ |
Baseline anomaly workflows |
| Deep SVDD | configs/pipeline/anomaly/deep_svdd/ |
Deep one-class workflows |
| AdaCLIP | configs/pipeline/anomaly/adaclip/ |
CLIP-based anomaly workflows |
| SAM3 | configs/pipeline/sam3/ |
Text, bbox, mask, and segment-everything tracking |
Plugin Manifests¶
Current checked-in manifests:
configs/plugins/registry.yamlconfigs/plugins/adaclip.yamlconfigs/plugins/bytetrack.yamlconfigs/plugins/deepeiou.yamlconfigs/plugins/detr.yamlconfigs/plugins/sam3.yamlconfigs/plugins/trackeval.yamlconfigs/plugins/ultralytics.yaml
Use the narrow manifest for a workflow when possible; use registry.yaml only when you
intentionally want the full registry.