1. Overview

Let's explore Picsellia! This section will provide you with some definitions to help you understand the rest of the guide.

1. Why would I need to migrate ?

The main purpose of integrating your models with Picsellia is to have all ModelVersion accessible and detailed in a single shared location.

Furthermore, adapting the associated training script to Picsellia ensures that all ModelVersion are trained with the latest Data and parameters pulled from your shared Picsellia Organization, instead of a local folder on your colleagues' machines.

Your training will also be abstracted into a Docker container to ensure that your execution environment is stable and operable through remote GPU jobs on either our infrastructure or yours. This Docker image will be attached to the ModelVersion to guarantee consistency and traceability across time and projects.

2. What is a Model and a ModelVersion ?

A Picsellia Model serves as a placeholder for multiple ModelVersion. The primary purpose of the Picsellia model versioning system is to track the evolution of a model over time and maintain a history of each version's details. For example, a single Model may have multiple associated ModelVersion.

A `Model` containing three `ModelVersion`

A Model containing three ModelVersion

To fully understand how to structure and operate your models in the best ways using Picsellia, it is crucial to have a clear understanding of what a Picsellia ModelVersion is composed of.

To accomplish this, you can rely on the ModelVersion overview available on Picsellia, which look like this:

A `ModelVersion` overview

A ModelVersion overview

A ModelVersion can contain the following information:

  • Contextual information (About) - mandatory to ensure traceability during the life cycle of the ModelVersion. They can be viewed as ModelVersion metadata.
  • Model Configuration - Labelmap (composed ofLabel) and/or base parameters (Parameters) are crucial for defining the parameters that users can modify during the retraining process. They also determine the set of Label that this ModelVersion can detect within the Picsellia system.
  • Files - This is where the model files (weight files, checkpoint files, configuration files, etc.) are stored. Due to the variety of frameworks and conventions, Picsellia accepts any type of file. Therefore, it is your responsibility to ensure that if you upload your model files directly, they comply with conventions for retraining or deployment. Technical requirements for this will be explained later in this guide.
  • Docker image (Docker) - Each ModelVersion can include a Docker image along with its associated tags and flags. This Docker image is primarily used for training and is propagated to the Experiment created from thisModelVersion.
  • Training Experiment/Datasets (Source Experiment) - For traceability purposes, if the current ModelVersion has been trained using the Picsellia Experiment Tracking tool, you can retrieve the original Experiment and DatasetVersion used to train the ModelVersion at any time.

πŸ‘‰

Is all of this mandatory?

Almost all items are optional, and whether an item is required depends on the intended use of the ModelVersion.