Nova 사용자 지정 SDK - Amazon SageMaker AI

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Nova 사용자 지정 SDK

Nova Customization SDK는 Amazon Nova 모델을 사용자 지정하기 위한 포괄적인 Python SDK입니다. SDK는 SageMaker AI 및 Amazon Bedrock을 포함한 다양한 플랫폼에서 Amazon Nova 모델의 훈련, 평가, 모니터링, 배포 및 추론을 위한 통합 인터페이스를 제공합니다. 모델을 도메인별 작업에 맞게 조정하든 사용 사례에 맞게 성능을 최적화하든 관계없이이 SDK는 하나의 통합 인터페이스에서 필요한 모든 것을 제공합니다.

이점

  • 데이터 준비부터 배포 및 모니터링에 이르기까지 전체 모델 사용자 지정 수명 주기를 위한 단일 SDK입니다.

  • LoRA 및 전체 순위 접근 방식을 모두 사용하여 지도형 미세 조정(SFT) 및 강화 미세 조정(RFT)을 포함한 여러 훈련 방법을 지원합니다.

  • 자동 리소스 관리를 통해 SageMaker AI 훈련 작업 및 SageMaker HyperPod를 기본적으로 지원합니다.

  • 훈련 기법에 적합한 레시피 또는 컨테이너 URI를 더 이상 찾을 필요가 없습니다.

  • 자체 훈련 레시피를 가져오거나 파라미터 재정의와 함께 SDK의 지능형 기본값을 사용합니다.

  • SDK는 지원되는 모델 및 인스턴스 조합에 대해 구성을 검증하여 훈련이 시작되기 전에 오류를 방지합니다.

  • 통합 Amazon CloudWatch 모니터링을 사용하면 훈련 진행 상황을 실시간으로 추적할 수 있습니다.

요구 사항

SDK에는 Python 3.12 이상이 필요합니다.

설치

이 SDK를 설치하려면 아래 명령을 따르세요.

pip install amzn-nova-customization-sdk

지원되는 모델 및 기법

SDK는 Amazon Nova 패밀리 내에서 다음 모델과 기술을 지원합니다.

방법 지원되는 모델
감독 미세 조정 LoRA 모든 Nova 모델
감독 미세 조정 전체 순위 모든 Nova 모델
강화 미세 조정 LoRA Nova Lite 2.0
강화 미세 조정 전체 순위 Nova Lite 2.0

시작하기

1. 데이터 준비

로컬 파일 또는 S3에서 데이터 세트를 로드하고 SDK가 선택한 훈련 방법에 맞는 올바른 형식으로 변환을 처리하도록 합니다. 또는 형식이 지정된 데이터를 제공하고 즉시 시작합니다.

from amzn_nova_customization_sdk.dataset.dataset_loader import JSONLDatasetLoader from amzn_nova_customization_sdk.model.model_enums import Model, TrainingMethod loader = JSONLDatasetLoader(question="input", answer="output") loader.load("s3://your-bucket/training-data.jsonl") loader.transform(method=TrainingMethod.SFT_LORA, model=Model.NOVA_LITE)

2. 인프라 구성

컴퓨팅 리소스를 선택합니다. SDK는 구성을 검증하고 최적의 설정을 보장합니다.

from amzn_nova_customization_sdk.manager.runtime_manager import SMTJRuntimeManager, SMHPRuntimeManager # SageMaker Training Jobs runtime = SMTJRuntimeManager( instance_type="ml.p5.48xlarge", instance_count=4 ) # SageMaker HyperPod runtime = SMHPRuntimeManager( instance_type="ml.p5.48xlarge", instance_count=4, cluster_name="my-hyperpod-cluster", namespace="kubeflow" )

3. 훈련

몇 줄의 코드만으로 훈련을 시작합니다.

from amzn_nova_customization_sdk.model import NovaModelCustomizer from amzn_nova_customization_sdk.model.model_enums import Model, TrainingMethod customizer = NovaModelCustomizer( model=Model.NOVA_LITE_2, method=TrainingMethod.SFT_LORA, infra=runtime, data_s3_path="s3://your-bucket/prepared-data.jsonl" ) result = customizer.train(job_name="my-training-job")

4. 모니터링

SDK에서 직접 훈련 진행 상황을 추적합니다.

from amzn_nova_customization_sdk.monitor.log_monitor import CloudWatchLogMonitor # Monitor training logs customizer.get_logs() # Or monitor directly via CloudWatchLogMonitor monitor = CloudWatchLogMonitor.from_job_result(result) monitor.show_logs(limit=10) # Check job status result.get_job_status() # InProgress, Completed, Failed

5. 평가

다양한 기본 제공 벤치마크를 사용하여 모델 성능을 평가하거나 자체 평가를 설계합니다.

from amzn_nova_customization_sdk.recipe_config.eval_config import EvaluationTask # Evaluate on benchmark tasks eval_result = customizer.evaluate( job_name="model-eval", eval_task=EvaluationTask.MMLU, model_path=result.model_artifacts.checkpoint_s3_path )

6. 배포

Amazon Bedrock에 대한 기본 지원을 통해 사용자 지정 모델을 프로덕션에 배포합니다.

from amzn_nova_customization_sdk.model.model_enums import DeployPlatform # Bedrock provisioned throughput deployment = customizer.deploy( model_artifact_path=result.model_artifacts.checkpoint_s3_path, deploy_platform=DeployPlatform.BEDROCK_PT, pt_units=10 ) # Bedrock On-Demand deployment = customizer.deploy( model_artifact_path=result.model_artifacts.checkpoint_s3_path, deploy_platform=DeployPlatform.BEDROCK_OD, pt_units=10 )

주요 기능

플라이 레시피 생성

SDK를 사용하면 특정 기술을 위해 적절한 레시피 또는 컨테이너 URI를 검색할 필요가 없습니다.

지능형 데이터 처리

SDK는 데이터를 훈련을 위한 올바른 형식으로 자동 변환합니다. JSON, JSONL 또는 CSV 파일로 작업하는 경우 데이터 로더가 변환을 원활하게 처리합니다. Data Loader는 텍스트와 멀티모달 데이터(이미지 및 비디오)를 지원합니다.

엔터프라이즈 인프라 지원

SDK는 SageMaker 훈련 작업과 SageMaker HyperPod 모두에서 작동하여 다음을 자동으로 관리합니다.

  • 인스턴스 유형 검증

  • 레시피 검증

  • 작업 오케스트레이션 및 모니터링

포괄적인 평가

다음을 포함한 표준 벤치마크를 기준으로 사용자 지정 모델을 평가합니다.

  • MMLU(Massive Multitask Language Understanding)

  • BBH(고급 추론 작업)

  • GPQA(졸업 수준 Google 증명 Q&A)

벤치마크 기본값을 사용하거나 필요에 맞게 수정합니다.

  • BYOM(자체 지표 가져오기)

  • BYOD(자체 데이터 세트 가져오기)

프로덕션 배포

다음 옵션을 사용하여 Amazon Bedrock에 모델을 배포합니다.

  • 프로비저닝된 처리량 - 일관된 성능을 위한 전용 용량

  • 온디맨드 - Pay-per-use

배치 추론

대규모 추론 작업을 효율적으로 실행합니다.

  • 수천 개의 요청을 병렬로 처리

  • 자동 결과 집계

  • 비용 효율적인 배치 처리

자세히 알아보기

Nova Customization SDK를 사용하여 Nova 모델 사용자 지정을 시작할 준비가 되셨나요? 자세한 가이드, API 참조 및 추가 예제는 GitHub 리포지토리를 참조하세요. https://github.com/aws-samples/sample-nova-customization-sdk/