Skip to main content

No project description provided

Project description

🧪 Picsellia Pipelines CLI

A command-line tool to create, test, deploy, and manage training and processing pipelines for Picsellia.

Built with Typer for intuitive CLI usage.


Installation

Install the CLI directly from GitHub (no need to clone the repo):

Using Poetry:

poetry add picsellia-pipelines-cli

Using uv (faster, works with requirements.txt or pyproject.toml):

uv pip install picsellia-pipelines-cli

You can now use:

pxl-pipeline --help

Available Commands

🔹 All CLI commands are structured like this:

pxl-pipeline [init|test|deploy|smoke-test|sync] <pipeline_name>

The pipeline type is resolved automatically from its config file (config.toml), except during init.

🔧 Initialize a Pipeline

pxl-pipeline init <pipeline_name> --type [training|processing] --template <template>

Examples:

pxl-pipeline init yolov8 --type training --template ultralytics
pxl-pipeline init resize-images --type processing --template dataset_version_creation

This generates:

  • a config.toml with pipeline metadata

  • a Dockerfile, .dockerignore, and dependency file (pyproject.toml or requirements.txt)

  • scripts for both picsellia_pipeline.py and local_pipeline.py

  • pre-filled steps.py and utility files

You can customize templates in your own extensions later.

After Initialization

Once the pipeline is initialized:

  • A local virtual environment is automatically created inside the pipeline directory (<pipeline_name>/.venv)
  • You can directly activate it and run any pipeline-related commands:
cd <pipeline_name>
source .venv/bin/activate  # or .venv\Scripts\activate.bat on Windows

You can still use the CLI from inside the venv:

pxl-pipeline test <pipeline_name>

🧪 Test Locally

pxl-pipeline test <pipeline_name>

Runs the pipeline in a local virtualenv (.venv/) and prompts for required parameters (e.g., dataset version ID, experiment ID, etc.).

🔥 Smoke Test in Docker

pxl-pipeline smoke-test <pipeline_name>

Builds the Docker image for the pipeline and runs it locally to validate that everything (code + dependencies + env) works inside the container.

🚀 Deploy to Picsellia

pxl-pipeline deploy <pipeline_name>

Builds and pushes the Docker image to your configured registry and registers the pipeline in Picsellia (either as a training pipeline or a dataset processing job).

🔁 Sync Parameters (Processing Only)

pxl-pipeline sync <pipeline_name>

For processing pipelines, this updates the default parameters stored in Picsellia based on your Parameters class and config.toml.

Training sync is not yet implemented.

📁 Project Structure Example

resize-images/
├── config.toml
├── Dockerfile
├── picsellia_pipeline.py
├── local_pipeline.py
├── steps.py
├── utils/
│   ├── parameters.py
│   └── processing.py
└── pyproject.toml

💡 Tips

  • You can override the output directory on init with --output-dir
  • Virtual environments are created in <pipeline_name>/.venv by default
  • You can always edit config.toml to change pipeline metadata or execution scripts

Made with ❤️ by the Picsellia team.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

picsellia_pipelines_cli-0.1.1.tar.gz (25.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

picsellia_pipelines_cli-0.1.1-py3-none-any.whl (39.3 kB view details)

Uploaded Python 3

File details

Details for the file picsellia_pipelines_cli-0.1.1.tar.gz.

File metadata

  • Download URL: picsellia_pipelines_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 25.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.2 Darwin/23.6.0

File hashes

Hashes for picsellia_pipelines_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5dd99cbadecd3ce00557ffb6f844b16ebce5e9c657dc51e0f5eb68efd18a1c74
MD5 aab08107c3297050822749f5033205c8
BLAKE2b-256 f1c0a840b1ed0af018b1f64654929c0549c7cc476bb9e4d7594e2da729869f08

See more details on using hashes here.

File details

Details for the file picsellia_pipelines_cli-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for picsellia_pipelines_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe0dff825578ff6575a5a7c327c443a6989b04768691f5be34687b451c50cbe6
MD5 22fe9adbc35107bb8b251001f3b0dcd3
BLAKE2b-256 593576477f1dd3ad4d77e617559115e279fa0ff2af6ac17cb80032bd528cad9e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page