Skip to content

Asset

Assets are granular components that are used to compose Use Cases. These are building blocks like Models, Datasets, Docker Repos, etc. that are linked to a Use Case. Once linked to a Use Case, an Assets can be used by it.Assets can be shared and reused between Use Cases.

By breaking down use cases into component assets, you and other users (if the use case is published) can track the versions of assets, easily reproduce use cases, or swap out component assets for easier customisation of use cases.

Example: Use Case with Assets

As an example, you might have a Use Case for predicting house prices. This use case can be composed of a Dataset asset which contains the data (features and labels) of a housing price dataset; a Pipeline that describes the data processing and model training steps; and a Docker Repo asset that contains the trained model and inference instructions.

Use Case: House Price PredictionAsset: DatasetAsset: PipelineAsset: Docker RepoTrain DataProcess DataTrain ModelInference Container

The assets required for a use case may vary. You don't have to use all the asset types every time. Assets offer a flexible way for users to compose use cases of different complexity levels. Different assets expose and abstract different concepts and interfaces so that users can choose what they need in terms of flexibility and customisation.

The different asset types on Highwind are described below.

Types

Dataset

A Highwind Dataset Asset refers to a a collection of related data used to train or test machine learning models. Users have the capability to upload their datasets onto the Highwind platform and buy existing Datasets Use Cases available on the Highwind Marketplace.

For instance, a Dataset Asset could comprise the essential data, including features and labels, crucial for model development. See House Price Prediction example depicted at the top of this page.

Docker Repo

A Docker Repo asset is a Docker container that captures, for example, a trained model that is ready for inference. This asset type must be written in a way that is compatible with Kserve.

Supported Docker Image Architecture

Highwind currently only supports docker images that are built using the x86_64 / amd64 architecture.

Get the Image URI and view push commands
What is Image URI

A Docker Image URI (Uniform Resource Identifier) is a unique identifier that specifies the location and version of a Docker image in a registry. Highwind uses Docker Image URI to version control and differentiate docker images.

  • Select view on the asset created

  • Scroll to the bottom of the screen where you'll find a table showing Image tag in the first column and the second column showing Image URI. See snippet below

  • Above this table, you will see a button called Show push commands. Click this button if you need the Asset push commands. See snippet below

Asset

Tips

The Docker Repo asset offers maximum customisation and portability so that you can capture complex models in a way that can be easily served with Kserve.

Model

Coming soon

Not available yet

Pipeline

A Pipeline asset on Highwind is an arbitrary set of compute steps that define a directed acyclic graph (DAG), running on separate containers for each step.

Tips

A Pipeline can be used to orchestrate data processing and model training, for example. This asset type also offers maximum customisation since it can capture arbitrary compute steps.

A Highwind Pipeline is the same as a Kubeflow Pipelines Pipeline (We will refer to them as Pipeline going forward). To describe a Pipeline, we define a function with a @dsl.pipeline decorator. A Pipeline consists of one or many Components. Components are the building blocks (execution environment) that do the "work" and actually run any bespoke function defined by you.

Highwind Pipelineinput1Component1output1Component2output2