-
Notifications
You must be signed in to change notification settings - Fork 124
Asset naming convention
Louie Larson edited this page Jan 12, 2023
·
21 revisions
These conventions apply to all assets, regardless of type. Names must:
- Start with a letter.
- Use only lowercase letters, numbers, dashes, and periods.
- Be up to 255 characters long.
- Use dashes to separate words.
- Not include prefixes like "azureml" or "microsoft". Registries containing these assets will already provide this information.
- Not include the type of asset as a suffix (examples: "component" or "environment"). The asset type is already clearly represented via CLI, SDK, and UI.
- Not include a version number of the asset. Versions of included packages and frameworks are okay though.
Examples of valid asset names:
Name | Notes |
---|---|
tremendous-transform | Starts with a letter, uses lowercase letters and a dash |
pytorch-1.9-cuda11.6-gpu | Version numbers refer to pytorch and CUDA, not the asset itself |
Examples of invalid asset names:
Name | Issue |
---|---|
microsoft_master_transform | Uses underscores instead of dashes |
awesome-component | Ends with "component" |
fastsupertransform | Should use dashes to separate words, but doesn't |
1-amazing-sort | Doesn't start with a letter |
pattern-detect-2.0 | Asset version should be in its version, not its name |
If you have a lot of related components, consider using a prefix to help group them. For example: forecast-preprocessing, forecast-threat-model, etc.
Your environment will need a meaningful name that will make it easy to find. The current naming convention is:
<framework>-<framework-version>-<os><os-version>-py<python-version>-{cpu|gpu}[-inference]
Field | Description | Examples |
---|---|---|
framework |
Machine learning framework supported by the environment | pytorch, sklearn, tensorflow |
framework-version |
Framework version, major and minor values only | 1.1, 11.1, 2.8 |
os |
Operating system | ubuntu |
os-version |
Operating system version | 20.04 |
python-version |
Python version, major and minor values only, no period | 38 (for Python 3.8) |
cpu|gpu |
Whether the environment includes GPU support, or CPU only | cpu, gpu |
-inference |
Suffix to indicate whether the environment supports AzureML inferencing use | -inference |
Examples:
- pytorch-1.11-ubuntu20.04-py38-cuda11-gpu
- sklearn-1.1-ubuntu20.04-py38-cpu
- tensorflow-2.8-ubuntu20.04-py38-cuda11-gpu
The above naming convention may be simplified soon to something like this:
<framework>-<framework-version>[<gpu-driver><gpu-driver-version>-gpu]
Field | Description | Examples |
---|---|---|
framework |
Machine learning framework supported by the environment | pytorch, sklearn, tensorflow |
framework-version |
Framework version, major and minor values only | 1.1, 11.1, 2.8 |
gpu-driver |
GPU driver | cuda |
gpu-driver-version |
GPU driver version, major and minor values only | 11.6 |
Examples:
- pytorch-1.9 (CPU version)
- pytorch-1.9-cuda11.6-gpu