Skip to content

pxl-pipeline init

The init command bootstraps a new pipeline project (either processing or training) with the standard folder structure, dependencies, and metadata required to run pipelines in Picsellia.

Usage

pxl-pipeline init PIPELINE_NAME \
  --type [processing|training] \
  --template TEMPLATE_NAME \
  [OPTIONS]

Arguments

Argument Description Required
PIPELINE_NAME Name of the pipeline project (and its folder).

Options

Option Description Default
--type Pipeline type: processing or training. ✅ Required
--template Template name. ✅ Required
--output-dir Target directory where the pipeline will be created. . (current)
--use-pyproject Generate a pyproject.toml for dependency management (via uv). True

Templates

Processing

  • dataset_version_creation: create a new dataset version from existing images/annotations.

  • pre_annotation: automatically annotate datasets using an existing model.

  • data_auto_tagging: add tags to data stored in a datalake.

Training

  • yolov8: Train YOLOv8 models on datasets hosted in Picsellia.

Behavior

Processing pipelines

  • Generate the full pipeline scaffold:

    • config.toml
    • steps.py
    • utils/parameters.py
    • .venv/ (with dependencies installed via uv)

Training pipelines

  • Prompt for organization and environment if not set via env vars:
export PICSELLIA_ORGANIZATION=my-org
export PICSELLIA_ENV=STAGING
  • Prompt for model version:

    • Reuse an existing private/public model version

    • Or create a new one (define model name, version, framework, inference type)

  • Save model metadata into config.toml:

[model_version]
name = "v1"
origin_name = "MyModel"
framework = "ONNX"
inference_type = "OBJECT_DETECTION"

Examples

Create a dataset processing pipeline

pxl-pipeline init my_dataset_pipeline \
  --type processing \
  --template dataset_version_creation

Create a YOLOv8 training pipeline

pxl-pipeline init my_yolo_pipeline \
  --type training \
  --template yolov8

👉 During setup, the CLI will prompt:

  • Organization name (if not set in env vars)
  • Picsellia environment (prod/staging/local)
  • Model version reuse/creation

Project Structure

my_pipeline/
├── config.toml
├── pyproject.toml
├── uv.lock
├── Dockerfile

├── pipeline.py
├── steps.py
├── utils/
│   └── parameters.py

├── runs/
│   └── run1/
│       └── run_config.toml

└── .venv/