Skip to main content

ML expert Platform Data Manager SDK

ML expert Platform Data Manager SDK는 Naver Cloud Platform의 ML expert Platform Data Manager와 호환되는 데이터셋 관리 라이브러리입니다. 이 SDK는 Hugging Face Datasets API와 완벽하게 호환되어 기존 Hugging Face 워크플로우를 그대로 사용할 수 있습니다.

🚀 주요 특징

  • 🤗 Hugging Face Datasets 호환: 기존 Hugging Face Datasets API와 동일한 인터페이스 제공
  • ☁️ ML expert Platform Data Manager 연동: Naver Cloud Platform의 ML expert Platform Data Manager와 완벽 연동
  • 📊 다양한 데이터 형식 지원: CSV, JSON, Parquet, 이미지, 오디오, 텍스트 등 모든 형식 지원
  • ⚡ 효율적인 스트리밍: 대용량 데이터셋도 메모리 효율적으로 처리
  • 🔄 간편한 데이터 전처리: map, filter, select 등 강력한 데이터 변환 기능
  • 🔐 보안: 안전한 API 키 기반 인증 시스템

📦 설치

pip을 사용한 설치

pip install ncloud-mlx[data-manager]

⚙️ 환경 설정

ML expert Platform Data Manager SDK를 사용하기 전에 다음 환경변수를 설정해야 합니다:

# ML expert Platform Data Manager 엔드포인트 설정
export MLX_ENDPOINT_URL="your-mlx-endpoint-url"

# API 키 설정
export MLX_APIKEY="your-api-key-here"

🏃‍♂️ 빠른 시작

기본 사용법

from mlx.sdk.data import load_dataset, login
from datasets import concatenate_datasets

# ML expert Platform Data Manager에 로그인
login("your-api-key")

# 로컬 데이터셋 로드
local_dataset = load_dataset("./path/to/your/data")

# ML expert Platform Data Manager에서 데이터셋 로드
remote_dataset = load_dataset("mlx-data-manager/dataset-name")

# 데이터셋 결합
combined_dataset = concatenate_datasets([
    local_dataset["train"], 
    remote_dataset["train"]
])

# ML expert Platform Data Manager에 업로드
combined_dataset.push_to_hub("mlx-data-manager/new-dataset")

스트리밍 모드

대용량 데이터셋을 효율적으로 처리하려면 스트리밍 모드를 사용하세요:

from mlx.sdk.data import load_dataset

# 스트리밍 모드로 데이터셋 로드
dataset = load_dataset("mlx-data-manager/large-dataset", streaming=True)

# 데이터를 즉시 반복 처리
for example in dataset["train"]:
    print(example)
    break  # 첫 번째 예제만 출력

데이터 전처리

from mlx.sdk.data import load_dataset
from transformers import AutoTokenizer

# 데이터셋 로드
dataset = load_dataset("mlx-data-manager/text-dataset")

# 텍스트 길이 추가
dataset_with_length = dataset.map(
    lambda x: {"length": len(x["text"])}
)

# 토크나이제이션
tokenizer = AutoTokenizer.from_pretrained('bert-base-cased')
tokenized_dataset = dataset.map(
    lambda x: tokenizer(x['text']), 
    batched=True
)

📖 지원하는 데이터 형식

ML expert Platform Data Manager SDK는 다양한 데이터 형식을 지원합니다:

  • 텍스트: CSV, JSON, TXT, Parquet
  • 이미지: JPEG, PNG, WebP, TIFF
  • 오디오: WAV, MP3, FLAC
  • 비디오: MP4, AVI, MOV
  • 기타: Arrow, Feather, Excel

🔧 고급 기능

데이터셋 설정 및 분할

from datasets import get_dataset_config_names, get_dataset_split_names

# 사용 가능한 설정 확인
configs = get_dataset_config_names("mlx-data-manager/dataset-name")
print(f"Available configs: {configs}")

# 사용 가능한 분할 확인
splits = get_dataset_split_names("mlx-data-manager/dataset-name")
print(f"Available splits: {splits}")

태그 및 버전 관리

from huggingface_hub import create_tag, list_repo_refs

# 태그 생성
create_tag(
    repo_id="mlx-data-manager/dataset-name",
    repo_type="dataset",
    tag="v1.0",
    tag_message="First stable release"
)

# 태그 목록 확인
refs = list_repo_refs(repo_id="mlx-data-manager/dataset-name", repo_type="dataset")
print([tag.name for tag in refs.tags])

대용량 파일 업로드

from huggingface_hub import create_repo, upload_large_folder

# 저장소 생성
create_repo(
    repo_id="mlx-data-manager/large-dataset",
    repo_type="dataset"
)

# 대용량 폴더 업로드
upload_large_folder(
    repo_id="mlx-data-manager/large-dataset",
    repo_type="dataset",
    folder_path="./path/to/large/dataset"
)

🔍 데이터셋 검색

from huggingface_hub import list_datasets

# 데이터셋 검색
datasets = list_datasets(search="keyword")
for dataset in datasets:
    print(f"Dataset: {dataset.id}")

📊 지원하는 ML 프레임워크

ML expert Platform Data Manager SDK는 다음 ML 프레임워크와 완벽하게 호환됩니다:

  • PyTorch (2.0+)
  • TensorFlow (2.6+)
  • JAX (3.14+)
  • NumPy
  • Pandas
  • Polars
# PyTorch DataLoader와 함께 사용
from torch.utils.data import DataLoader

dataset = load_dataset("mlx-data-manager/dataset-name")
dataloader = DataLoader(dataset["train"], batch_size=32)

# Pandas DataFrame으로 변환
df = dataset["train"].to_pandas()

🛠️ 문제 해결

일반적인 문제들

  1. 환경변수 설정 오류

    # 환경변수가 제대로 설정되었는지 확인
    echo $MLX_ENDPOINT_URL
    echo $MLX_APIKEY
    
  2. 캐시 정리

    $ rm -rf ~/.cache
    
  3. 네트워크 연결 문제

    • 방화벽 설정 확인
    • ML expert Platform Data Manager 엔드포인트 접근 가능 여부 확인

📄 라이선스

이 프로젝트는 Apache License 2.0 하에 라이선스가 부여됩니다.

🔗 관련 프로젝트


ML expert Platform Data Manager SDK로 더 효율적인 데이터셋 관리를 시작하세요! 🚀

Metadata

Release files for ncloud-mlx-data-manager 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ncloud-mlx-data-manager 1.2.0
File Size Uploaded
ncloud_mlx_data_manager-1.2.0.tar.gz 11.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ncloud-mlx-data-manager 1.2.0
File Interpreter ABI Platform
ncloud_mlx_data_manager-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 21.5 kB

Release files / ncloud_mlx_data_manager-1.2.0.tar.gz

Download URL ncloud_mlx_data_manager-1.2.0.tar.gz
Size 11.3 kB
Tags Source
SHA-256 checksum
How to use checksums
11b6e395bef6559439df47307103d7d1c0e90d451be1577c1284381d9c95d30e
BLAKE2b-256 checksum
How to use checksums
ffcef06ed1c8244543e7c8f807ff2e55a9baf70bb9ad699aeef25feede66a902
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"20.04","id":"focal","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ncloud_mlx_data_manager-1.2.0-py3-none-any.whl

Download URL ncloud_mlx_data_manager-1.2.0-py3-none-any.whl
Size 10.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
019676cfb8f140b123e0c4aad5b6b25ddb1ad9a5586b26e591a1a1258bc24263
BLAKE2b-256 checksum
How to use checksums
ab9f49c7812a714043634f401b6b58842dd15457b40a74f97308635f396920f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"20.04","id":"focal","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page