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 SDKs.
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: Time and date of creation
Create a model
To create new model metadata:
- Click [Create].
- When the model metadata creation interface appears, enter a model name.
- Enter 3–64 characters using lowercase letters, numbers, 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, numbers, 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: Tag information for managing model versions
- Labels: Model label information in key:Value format
- Description: Description entered when creating model metadata
Versions and Files
You can view metadata for the selected model.
- Version: Model version information
- Size: Model size
- Download: Number of model downloads
- Tags/Labels: Tag and label information set for the model
- Updated at: Last modified date
Settings
You can edit the description for the selected model.
- Tags: Tag information for managing model versions
- Labels: Model label information in 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.
CLI Installation
You can install the CLI by running the following command:
pip install "ncloud-mlx[model-registry]" # double quotes are required
CLI configuration
An API key with Model permissions is required to use the CLI. Use Project API keys for models in a project and Workspace API keys for models in a workspace. The reader permission is required to view and download models, and the writer permission is required to create models and versions and to upload and delete files. For instructions on how to issue an API key, see API key management.
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
An API key with Model permissions is required to use the SDK. For the types and permissions of the required API keys, see CLI configuration and API key management.
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,
)