Documentation Index

Fetch the complete documentation index at: https://guide.ncloud-docs.com/llms.txt

Use this file to discover all available pages before exploring further.

Model Registry

Prev Next

VPC 환경에서 이용 가능합니다.

Model Registry 화면 구성에 대해 설명합니다. Model Registry에서는 사용자가 학습 과정에서 생성한 중간 결과물로서의 모델과 최종 모델에 대한 메타 정보를 조회할 수 있습니다.

참고

Model Registry에서 제공하는 기능은 ML expert Platform에서 제공하는 CLI, SDK를 통해서도 동일하게 이용 가능합니다.

Model Registry

Model Registry 화면의 기본적인 설명은 다음과 같습니다.

mlxp_console_modelregistry01_ko

영역 설명
① 메뉴 이름 현재 확인 중인 메뉴 이름
② 기본 기능 모델 메타 정보 생성, 모델 메타 정보 삭제
③ 모델 목록 저장된 모델 목록 및 정보 확인

Model Registry 목록 조회

사용자가 저장한 모델 목록의 정보는 다음과 같습니다.

  • Name: 최초 생성시 설정한 Volume 이름
  • Tags: 버전을 관리할 수 있는 태그 정보
  • Created At: 최초 생성 일시

모델 생성

모델의 신규 메타 정보를 생성하는 방법은 다음과 같습니다.

  1. [Create] 를 클릭해 주십시오.
  2. 모델 신규 메타 정보 생성 화면이 나타나면 모델 이름을 입력해 주십시오.
    • 영소문자(a-z), 숫자(0-9), 하이픈(-)을 사용하여 3~64자 사이로 입력
    • 첫 글자는 영문, 마지막 글자는 영문이나 숫자
    • 중복 사용 불가능
  3. Summary를 입력해 주십시오.
    • 영문자(a-z, A-z), 숫자(0-9), 하이픈(-)을 사용하여 100자까지 입력 가능
  4. Description을 입력해 주십시오.
  5. Tag 정보를 입력해 주십시오.
    • 최대 10개까지 입력 가능
  6. Label 정보를 입력해 주십시오.
    • 최대 100개까지 입력 가능
  7. [Create] 를 클릭해 주십시오.

모델 삭제

모델의 메타 정보를 삭제할 수 있습니다.

  1. 삭제할 모델을 선택한 다음 [Delete] 버튼을 클릭해 주십시오.
  2. 모델 삭제 팝업 창이 나타나면 삭제할 모델의 이름을 입력한 다음 [삭제] 버튼을 클릭해 주십시오.
  3. 모델 목록에서 선택한 모델이 삭제된 것을 확인해 주십시오.

모델 상세정보 조회

선택한 모델의 상세정보를 조회할 수 있습니다. 각 정보는 탭으로 나눠져 있습니다.

Description

선택한 모델의 상세정보는 다음과 같습니다.

  • Tags: 모델의 버전을 관리할 수 있는 Tag 정보
  • Labels: Key:Value 구조로 된 모델 Labe 정보
  • Description: 모델 메타 정보 생성시 작성한 설명

Versions and Files

선택한 모델의 메타 정보를 조회할 수 있습니다.

  • Version: 모델 버전정보
  • Size: 모델 사이즈
  • Download: 모델 다운로드 횟수
  • Tags/Lables: 모델에 설정한 Tag 및 Lablel 정보
  • Updated at: 최근 수정일

Settings

선택한 모델의 Description 정보를 수정할 수 있습니다.

  • Tags: 모델의 버전을 관리할 수 있는 Tag 정보
  • Labels: Key:Value 구조로 된 모델 Label 정보
  • Description: 모델 메타 정보 생성시 작성한 설명

Model Registry CLI 사용

Model Registry CLI는 커맨드라인에서 모델 관리를 위한 도구를 제공합니다.

CLI 설치

CLI 설치는 다음과 같은 명령어를 통해 설치가 가능합니다.

pip install "ncloud-mlx[model-registry]" # double quotes are required

CLI 설정

CLI 사용을 위해서는 API Key가 필요합니다. API Key를 생성하는 방법은 Dashboard를 참조해 주십시오.

방법 1: 환경변수 설정

다음과 같이 환경변수를 설정할 수 있습니다:

export MLX_ENDPOINT_URL="https://your-mlx-endpoint"
export MLX_APIKEY="your-api-key" 
export MLX_PROJECT="your-project-name"

방법 2: mlx configure 사용 (권장)

다음 명령어를 실행하여 설정을 입력합니다:

$ mlx configure
Endpoint: https://... # 사용하는 mlx endpoint. 예시) https://clustername.mlxp.ncloud.com
Workspace name: xxxx # 사용할 Workspace
Project name: xxxx # 사용할 Project
API Key: xxxx # 발급받은 API key

CLI 기본 사용법

모델 생성

mlx model-registry create model {model_name}

버전 생성

mlx model-registry create version {model_name} {version}

모델 업로드

mlx model-registry upload {model_name} {version} ./local_path

모델 다운로드

mlx model-registry download {model_name} {version} ./output_path

기타 명령어

# 모델 정보 조회
mlx model-registry get {model_name}

# 버전 정보 조회
mlx model-registry get {model_name} {version}

# 모델 업데이트
mlx model-registry update model {model_name}

# 버전 업데이트
mlx model-registry update version {model_name} {version}

# 모델 삭제
mlx model-registry delete {model_name}

# 파일 삭제
mlx model-registry delete {model_name} {version} {file_path}

# 도움말
mlx model-registry --help
참고

각 명령어에 대한 자세한 옵션과 사용법은 --help 옵션을 사용하여 확인할 수 있습니다.
예시: mlx model-registry upload --help, mlx model-registry download --help

Model Registry SDK 사용

Model Registry SDK는 Python 기반의 SDK를 제공하고 있습니다.
SDK를 통해 모델 파라미터를 업로드/다운로드하는 방법은 다음과 같습니다.

SDK 설치

SDK 설치는 다음과 같은 명령어를 통해 설치가 가능합니다.

# cli 와 동일한 패키지 이므로, cli 설치 후 사용 가능합니다.
pip install "ncloud-mlx[model-registry]" # double quotes are required

사용준비

SDK 사용을 위해서는 API Key 생성이 필요합니다.

방법 1: 직접 입력

생성된 API Key를 직접 입력하여 사용할 수 있습니다:

import os
from mlx.sdk.model_registry import ModelRegistryAPI

mlxp_endpoint = "{ Model Registry URL }"
mlxp_apikey = "{ API Key }"
mlxp_project = "{ Project 명 }"

client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)

방법 2: 환경변수 설정

다음과 같이 환경변수를 설정할 수 있습니다:

export MLX_ENDPOINT_URL="https://your-mlx-endpoint"
export MLX_APIKEY="your-api-key" 
export MLX_PROJECT="your-project-name"

환경변수 설정 후 SDK에서 다음과 같이 사용할 수 있습니다:

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)

방법 3: mlx configure 사용 (권장)

다음 명령어를 실행하여 설정을 입력합니다:

$ mlx configure
Endpoint: https://... # 사용하는 mlx endpoint. 예시) https://clustername.mlxp.ncloud.com
Workspace name: xxxx # 사용할 Workspace
Project name: xxxx # 사용할 Project
API Key: xxxx # 발급받은 API key

설정 완료 후 SDK에서 다음과 같이 사용할 수 있습니다:

from mlx.sdk.core import config
from mlx.sdk.model_registry import ModelRegistryAPI

# config 파일에서 자동으로 설정 불러오기
# (환경변수가 설정되어 있으면, 자동으로 환경변수로 설정된 값으로 override 됩니다.)
mlxp_endpoint = config.ConfigFile().endpoint_url
mlxp_apikey = config.ConfigFile().apikey
mlxp_project = config.ConfigFile().project

client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)

모델 레지스트리 생성

SDK 에서 모델 파라미터를 업로드/다운로드를 하기 위해서는 모델 레지스트리가 생성되어 있어야합니다.

모델 생성

SDK를 사용하여 모델을 생성하는 방법은 다음과 같습니다:

from mlx.sdk.model_registry import ModelRegistryAPI
from mlx.api.model_registry import ModelRequest

# 클라이언트 초기화 (앞서 설정한 방법 중 하나 사용)
client = ModelRegistryAPI(mlxp_endpoint, mlxp_apikey)

# 모델 생성 요청
model_request = ModelRequest(name="my_model")
model = client.model_api.create(mlxp_project, model_request)
print(f"모델 생성 완료: {model.name}")

모델 버전 생성

생성된 모델에 버전을 추가하는 방법은 다음과 같습니다:

from mlx.api.model_registry import VersionRequest

# 버전 생성 요청
version_request = VersionRequest(version="v1.0")
version = client.model_version_api.create(mlxp_project, "my_model", version_request)
print(f"모델 버전 생성 완료: {version_request.version}")

모델 파라미터 업로드

모델 파라미터 업로드 하는 방법은 다음과 같습니다.

# 모델 파라미터 업로드 진행 현황 및 완료 Callback 작성
def progress_callback(progress_size: int, total_size: int):
    print(f"업로드 진행률: {progress_size}/{total_size} bytes")

def completion_callback(file_path: str, size: int):
    print(f"업로드 완료: {file_path} ({size} bytes)")

# 파일 업로드 실행
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=[], # 제외하고자할 파일 목록
    overwrite=True, # 파일이 존재할 경우, 덮어쓰기 여부
    parallel=1, # 병렬 처리 워커 수
    progress_callback_func=progress_callback,
    file_complete_callback_func=completion_callback,
)

모델 파라미터 다운로드

모델 파라미터 다운로드 하는 방법은 다음과 같습니다.

# 모델 파라미터 다운로드 진행 현황 및 완료 Callback 작성
def progress_callback(progress_size: int, total_size: int):
    print(f"다운로드 진행률: {progress_size}/{total_size} bytes")

def completion_callback(file_path: str, size: int):
    print(f"다운로드 완료: {file_path} ({size} bytes)")
    
# 파일 다운로드 실행
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, # 파일이 존재할 경우, 덮어쓰기 여부
    parallel=1, # 병렬 처리 워커 수
    progress_callback_func=progress_callback,
    file_complete_callback_func=completion_callback,
)