View a markdown version of this page

SageMaker HyperPod에서 Nova 2.0의 강화 미세 조정(RFT) - Amazon Nova

SageMaker HyperPod에서 Nova 2.0의 강화 미세 조정(RFT)

이 섹션에서는 SageMaker HyperPod에서 Nova 2.0 Lite에 대한 RFT를 수행하기 위한 샘플 레시피, 미세 조정 작업 시작 방법, 하이퍼파라미터 지침 및 학습 모니터링을 다룹니다. 데이터 형식, 지원되는 기능, 제약 조건 및 RFT 훈련 데이터 준비 모범 사례에 대한 자세한 내용은 RFT on Amazon Nova 2용 데이터 준비하기 섹션을 참조하세요.

RFT가 사용 사례에 적합한지 확인하려면 강화 미세 조정(RFT) 섹션을 참조하세요.

# Note: # This recipe can run on p5.48xlarge, p5e.48xlarge, and p5en.48xlarge instance types. run: name: "my-rft-run" # Unique run name (appears in logs and artifacts). model_type: amazon.nova-2-lite-v1:0:256k model_name_or_path: nova-lite-2/prod data_s3_path: s3://<bucket>/<data-file> # Training dataset in JSONL format. replicas: 4 # Number of total training instances. generation_replicas: 2 # Number of total instances dedicated to response generation. reward_lambda_arn: arn:aws:lambda:<region>:<account-id>:function:<function-name> ## MLFlow configs mlflow_tracking_uri: "" # Required for MLFlow mlflow_experiment_name: "my-rft-experiment" # Optional for MLFlow. Note: leave this field non-empty mlflow_run_name: "my-rft-run" # Optional for MLFlow. Note: leave this field non-empty ## SMHP RFT training configs training_config: max_length: 8192 # Context window (tokens) for inputs and prompt. global_batch_size: 32 # Total samples per optimizer step across all replicas (16/32/64/128/256). reasoning_effort: high # Reasoning mode: high, low, or null for non-reasoning. data: shuffle: true # Shuffle training data each epoch. rollout: # Controls how responses are generated for advantage calculation. rollout_strategy: type: off_policy_async # Asynchronous rollout for higher throughput. age_tolerance: 2 # Maximum policy age before regeneration. advantage_strategy: number_generation: 4 # Samples per prompt to estimate advantages (higher = lower variance but higher cost). generator: max_new_tokens: 6000 # Cap on tokens generated per sample. set_random_seed: true # Seed generation for reproducibility across runs. temperature: 1 # Softmax temperature for sampling. top_k: 1 # Sample only from top-K logits. rewards: preset_reward_function: null # Preset reward functions: exact_match or null for custom. api_endpoint: lambda_arn: arn:aws:lambda:<region>:<account-id>:function:<function-name> lambda_concurrency_limit: 12 # Max concurrent Lambda invocations (throughput vs. throttling). lambda_batch_size: 128 # Number of samples per Lambda invocation. trainer: max_steps: 2 # Steps to train for. One step = global_batch_size samples. save_steps: 5 # Save a checkpoint every N steps. test_steps: 1 # Run validation every N reference model updates. refit_freq: 4 # Frequency of reference model updates. clip_ratio_high: 0.2 # PPO clip ratio for policy updates. loss_scale: 1.0 # Scaling factor for the policy loss. # RL parameters ent_coeff: 0.0 # Entropy bonus added to the policy loss (higher = more exploration). kl_loss_coef: 0.0 # Weight on the KL penalty between the current and reference policy. optim_config: # Optimizer settings. lr: 1e-6 # Learning rate. weight_decay: 0.0 # L2 regularization strength (0.0 to 1.0). adam_beta1: 0.9 adam_beta2: 0.95 peft: # Parameter-efficient fine-tuning (LoRA). peft_scheme: "lora" # Enable LoRA for PEFT. lora_tuning: alpha: 64 # LoRA scaling factor. lora_plus_lr_ratio: 64.0 # LoRA+ learning rate scaling factor (0.0 to 100.0).

SageMaker HyperPod에서 미세 조정 작업 시작하기

데이터 준비

데이터 형식, 지원되는 기능, 제약 조건 및 RFT 훈련 데이터 준비 모범 사례에 대한 자세한 내용은 RFT on Amazon Nova 2용 데이터 준비하기 섹션을 참조하세요.

데이터 업로드

S3 버킷에 훈련 데이터세트를 업로드합니다. 레시피의 run 블록에서 해당 위치를 지정합니다.

## Run config run: ... data_s3_path: "s3://<bucket-name>/<training-directory>/<training-file>.jsonl"
참고

<bucket-name>, <training-directory>, <training-file>을 실제 S3 경로로 바꿉니다.

구성 정의

run 블록의 model_typemodel_name_or_path 필드를 사용하여 기본 모델을 정의합니다.

## Run config run: ... model_type: amazon.nova-2-lite-v1:0:256k model_name_or_path: nova-lite-2/prod ...

하이퍼파라미터 지침

훈련 접근 방식을 기반으로 다음과 같은 권장 하이퍼파라미터를 사용합니다.

일반:

  • 에포크: 1

  • 학습률(lr): 1e-7

  • 세대 수: 8

  • 최대 새 토큰 수: 8192

  • 배치 크기: 256

저순위 적응(LoRA)

  • LoRA 순위: 32

참고

데이터세트 크기 및 검증 성능에 따라 이러한 값을 조정합니다. 훈련 지표를 모니터링하여 과적합을 방지합니다.