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.
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 showingImage 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
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.