Available in VPC
This guide introduces the Model Registry interface. In Model Registry, you can view metadata for both intermediate models generated during training and final models.
You can also access Model Registry features through the ML expert Platform CLI and SDK.
Model Registry
The Model Registry interface includes the following:

| Component | Description |
|---|---|
| ① Menu name | Current menu name. |
| ② Basic features | Create and delete model metadata. |
| ③ Model list | View the list of saved models and their information. |
View Model Registry list
The list of your models includes the following information:
- Name: Volume name set at creation.
- Tags: Tags used for managing model versions.
- Created At: Initial creation date and time.
Create a model
To create new model metadata:
- Click [Create].
- In the model metadata creation interface, enter a model name.
- Enter 3-64 characters using lowercase letters (a-z), numbers (0-9), and hyphens (-).
- It must start with an English letter and end with an English letter or a number.
- Duplicate names are not allowed.
- Enter a summary.
- Enter up to 100 characters using letters (a-z, A-Z), numbers (0-9), and hyphens (-).
- Enter a description.
- Enter tag information.
- Up to 10 tags are allowed.
- Enter label information.
- Up to 100 labels are allowed.
- Click [Create].
Delete a model
To delete model meta data:
- Select the model to delete, then click [Delete].
- When the Delete Model popup appears, enter the name of the model to delete, then click [Delete].
- Confirm that the selected model has been removed from the model list.
View model details
You can view details for the selected model. The information is organized into tabs.
Description
The selected model includes the following information:
- Tags: Tags used for managing model versions.
- Labels: Model labels in a key:value format.
- Description: Description entered when creating model metadata.
Versions and Files
You can view metadata for the selected model.
- Version: Model version.
- Size: Model size.
- Download: Number of model downloads.
- Tags/Lables: Tags and labels assigned to the model.
- Updated at: Date when the model was last modified.
Settings
You can edit the description for the selected model.
- Tags: Tags used for managing model versions.
- Labels: Model labels in a key:value format.
- Description: Description entered when creating model metadata.
Use Model Registry CLI
Model Registry CLI provides tools for managing models from the command line.
Install the CLI
You can install the CLI by running the following command:
pip install "ncloud-mlx[model-registry]" # double quotes are required
CLI settings
An API key is required to use the CLI. For information on how to create an API key, see Dashboard.
Method 1: Set environment variables
You can set environment variables as follows:
export MLX_ENDPOINT_URL="https://your-mlx-endpoint"
export MLX_APIKEY="your-api-key"
export MLX_PROJECT="your-project-name"
Method 2: Use mlx configure (recommended)
Run the following command and enter the settings:
$ mlx configure
Endpoint: https://... # mlx endpoint to use Example: https://clustername.mlxp.ncloud.com
Workspace name: xxxx # Workspace to use
Project name: xxxx # Project to use
API Key: xxxx # API key issued
Basic CLI usage
Create a model
mlx model-registry create model {model_name}
Create a version
mlx model-registry create version {model_name} {version}
Upload a model
mlx model-registry upload {model_name} {version} ./local_path
Download a model
mlx model-registry download {model_name} {version} ./output_path
Other commands
# View model information
mlx model-registry get {model_name}
# View version information
mlx model-registry get {model_name} {version}
# Update a model
mlx model-registry update model {model_name}
# Update a version
mlx model-registry update version {model_name} {version}
# Delete a model
mlx model-registry delete {model_name}
# Delete a file
mlx model-registry delete {model_name} {version} {file_path}
# Help
mlx model-registry --help
Use the --help option to view complete options and usage for each command.
Example: mlx model-registry upload --help, mlx model-registry download --help
Use Model Registry SDK
Model Registry SDK provides a Python-based SDK.
To upload and download model parameters using the SDK:
Install the SDK
You can install the SDK by running the following command:
# This is part of the same package as the CLI and can be used after CLI installation.
pip install "ncloud-mlx[model-registry]" # double quotes are required
Prerequisites
To use the SDK, create an API Key.
Method 1: Enter manually
Use the generated API Key by entering it manually as follows:
import os
from mlx.sdk.model_registry import ModelRegistryAPI
mlxp_endpoint = "{ Model Registry URL }"
mlxp_apikey = "{ API Key }"
mlxp_project = "{ Project name }"
client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)
Method 2: Set environment variables
You can set environment variables as follows:
export MLX_ENDPOINT_URL="https://your-mlx-endpoint"
export MLX_APIKEY="your-api-key"
export MLX_PROJECT="your-project-name"
After setting the environment variables, you can use them in the SDK as follows:
from mlx.sdk.model_registry import ModelRegistryAPI
import os
mlxp_endpoint = os.getenv("MLX_ENDPOINT_URL")
mlxp_apikey = os.getenv("MLX_APIKEY")
mlxp_project = os.getenv("MLX_PROJECT")
client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)
Method 3: Use mlx configure (recommended)
Run the following command and enter the settings:
$ mlx configure
Endpoint: https://... # mlx endpoint to use Example: https://clustername.mlxp.ncloud.com
Workspace name: xxxx # Workspace to use
Project name: xxxx # Project to use
API Key: xxxx # API key issued
After completing the configuration, you can use the settings in the SDK as follows:
from mlx.sdk.core import config
from mlx.sdk.model_registry import ModelRegistryAPI
# Automatically load settings from the config file
# If environment variables are set, they automatically override the values in the config file.
mlxp_endpoint = config.ConfigFile().endpoint_url
mlxp_apikey = config.ConfigFile().apikey
mlxp_project = config.ConfigFile().project
client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)
Create a model registry
To upload or download model parameters using the SDK, you must create a model registry in advance.
Create a model
To create a model using the SDK:
from mlx.sdk.model_registry import ModelRegistryAPI
from mlx.api.model_registry import ModelRequest
# Initialize the client using one of the methods configured earlier
client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)
# Create a model request
model_request = ModelRequest(name="my_model")
model = client.model_api.create(mlxp_project, model_request)
print(f"Model created: {model.name}")
Create a model version
To add a version to the model you’ve created:
from mlx.api.model_registry import VersionRequest
# Create a version request
version_request = VersionRequest(version="v1.0")
version = client.model_version_api.create(mlxp_project, "my_model", version_request)
print(f"Model version created: {version_request.version}")
Upload model parameters
To upload model parameters:
# Define callbacks to monitor the progress and completion of model parameter uploads
def progress_callback(progress_size: int, total_size: int):
print(f"Upload progress: {progress_size}/{total_size} bytes")
def completion_callback(file_path: str, size: int):
print(f"Upload complete: {file_path} ({size} bytes)")
# Upload files
client.file_api.upload_sync(
project_name=mlxp_project,
model_name="my_model",
version_name="v1.0",
local_path="/path/to/local/files",
remote_path="/",
# Optional parameters:
excludes=[], # List of files to exclude
overwrite=True, # Whether to overwrite existing files
parallel=1, # Number of parallel workers
progress_callback_func=progress_callback,
file_complete_callback_func=completion_callback,
)
Download model parameters
To download model parameters:
# Define callbacks to monitor the progress and completion of model parameter downloads
def progress_callback(progress_size: int, total_size: int):
print(f"Download progress: {progress_size}/{total_size} bytes")
def completion_callback(file_path: str, size: int):
print(f"Download complete: {file_path} ({size} bytes)")
# Download files
client.file_api.download_sync(
project_name=mlxp_project,
model_name="my_model",
version_name="v1.0",
remote_path="/",
local_path="/path/to/download",
# Optional parameters:
overwrite=True, # Whether to overwrite existing files
parallel=1, # Number of parallel workers
progress_callback_func=progress_callback,
file_complete_callback_func=completion_callback,
)