AWS Security ChangesHomeSearch

AWS nova documentation change

Service: nova · 2025-07-25 · Documentation low

File: nova/latest/userguide/customize-fine-tune-hyperpod-sft.md

Summary

Significant content reduction - removed detailed technical documentation about SFT/PEFT configurations, parameters, recipes, and limitations. Replaced with brief summary and reference to SageMaker documentation.

Security assessment

The changes remove operational details but don't address security vulnerabilities or weaknesses. The removed content included security-relevant notes about data storage in customer-owned buckets, but this appears to be documentation simplification rather than response to a specific security issue.

Diff

diff --git a/nova/latest/userguide/customize-fine-tune-hyperpod-sft.md b/nova/latest/userguide/customize-fine-tune-hyperpod-sft.md
index 3a4b462ab..fd4f6011c 100644
--- a//nova/latest/userguide/customize-fine-tune-hyperpod-sft.md
+++ b//nova/latest/userguide/customize-fine-tune-hyperpod-sft.md
@@ -5,7 +5 @@
-Full-rank SFTParameter-efficient fine-tuning (PEFT)
-
-# Supervised fine-tuning (SFT)
-
-The following sections outline the process of supervised fine-tuning (SFT), both full-rank SFT and parameter-efficient SFT.
-
-## Full-rank SFT
+# Supervised fine-tuning (Full FT, PEFT)
@@ -15,363 +9 @@ Supervised fine-tuning (SFT) is the process of providing a collection of prompt-
-You should use SFT when you have domain-specific data that requires providing specific prompt-response pairs for optimal results.
-
-Note that your training and validation input datasets must reside in customer-owned buckets, not in escrow, or service-managed S3 buckets.
-
-###### Data requirements
-
-For full-rank SFT and low-rank adapter (LoRA) SFT, the data should follow the [Amazon Bedrock Converse operation format](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html). For examples and constraints of this format, see [Preparing data for fine-tuning Understanding models](https://docs.aws.amazon.com/nova/latest/userguide/fine-tune-prepare-data-understanding.html).
-
-To validate your dataset format before submission, we recommend using [the validation script from the Amazon Bedrock samples repository](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/bedrock-finetuning/understanding/dataset_validation/nova_ft_dataset_validator.py). This validation tool helps ensure that your JSONL files adhere to the required format specifications and identify any potential issues before you submit your fine-tuning job.
-
-The Amazon Nova parameters that are available for tuning with SFT are as follows:
-
-  * **Run configuration**
-
-    * `name`: A descriptive name for your training job. This helps identify your job in the AWS Management Console.
-
-    * `model_type`: The Amazon Nova model variant to use. The available options are `amazon.nova-micro-v1:0:128k`, `amazon.nova-lite-v1:0:300k`, or `amazon.nova-pro-v1:0:300k`.
-
-    * `model_name_or_path`: The path to the base model to use for your training. Select the model to use from `nova-micro/prod`, `nova-lite/prod`, `nova-pro/prod`, or the S3 path for the post-training checkpoint (`s3://<escrow bucket>/<job id>/outputs/checkpoints`).
-
-    * `replicas`: The number of compute instances to use for distributed training. Available values vary based on the model chosen. Amazon Nova Micro supports 2, 4, or 8 replicas. Amazon Nova Lite supports 4, 8, 16, or 32 replicas. Amazon Nova Pro supports 6, 12, or 24 replicas.
-
-    * `data_s3_path`: The S3 location of the training dataset, which is a JSONL file. This file must reside in the same AWS account and Region as the cluster. All of the S3 locations within the provided S3 path must be in the same account and Region.
-
-    * `validation_data_s3_path`: (Optional) The S3 location of the validation dataset, which is a JSONL file. This file must reside in the same account and Region as the cluster. All of the S3 locations within the provided S3 path must be in the same account and Region.
-
-    * `output_s3_path`: The S3 location where the manifest and tensorboard logs are stored. All of the S3 locations within the provided S3 path must be in the same account and region.
-
-  * **Training configuration**
-
-    * `max_length`: The maximum sequence length in tokens. This determines the context window size for training. The maximum supported value are 65,536 tokens for SFT.
-
-Longer sequences will improve training efficiencies at the cost of increased memory requirements. We recommend that you match the `max_length` parameter to your data distribution. 
-
-  * **Trainer settings**
-
-    * `max_epochs`: The number of complete passes through your training dataset. The maximum value is 5.
-
-In general, larger datasets require fewer epochs to converge, while smaller datasets require more epochs to converge. We recommend that you adjust the number of epochs based on the size of your data.
-
-  * **Model settings**
-
-    * `hidden_dropout`: The probability of dropping hidden state outputs. Increase this value by approximately 0.0-0.2 to reduce over-fitting on smaller datasets. Valid values are between 0-1, inclusive.
-
-    * `attention_dropout`: The probability of dropping attention weights. This parameter can help with generalization. Valid values are between 0-1, inclusive.
-
-    * `ffn_dropout`: The probability of dropping feed-forward network outputs. Valid values are between 0-1, inclusive.
-
-  * **Optimizer configuration**
-
-    * `lr`: The learning rate, which controls the step size during optimization. Valid values are between 1e-6-1e-3, inclusive. We recommend values between 1e-6-1e-4 for good performance.
-
-    * `name`: The optimizer algorithm. Currently, only `distributed_fused_adam` is supported.
-
-    * `weight_decay`: The L2 regularization strength. Higher values (between 0.01-0.1) increase regularization.
-
-    * `warmup_steps`: The number of steps to gradually increase learning rate. This improves training stability. Valid values are between 1-20, inclusive.
-
-    * `min_lr`: The minimum learning rate at the end of decay. Valid values are between 0-1, inclusive, but must be less than learning rate.
-
-
-
-
-###### Quick start Full-rank SFT recipe
-
-The following is a recipe for full-rank SFT that's intended for you to quickly start an SFT job on a HyperPod cluster. This recipe also assumes that you have connected to your HyperPod cluster using the correct AWS credentials.
-    
-    
-    run:
-      name: "my-sft-micro-job" # gets appended with a unique ID for HP jobs
-      model_type: "amazon.nova-micro-v1:0:128k"
-      model_name_or_path: "nova-micro/prod"
-      replicas: 2
-      data_s3_path: s3:Replace with your S3 bucket name/input.jsonl
-      validation_data_s3_path: [OPTIONAL] s3:your S3 bucket name/input.jsonl
-      output_s3_path: [S3_PATH_TO_STORE_MANIFEST]
-    
-    ## training specific configs
-    training_config:
-      max_length: 32768
-      save_steps: 100000
-      replicas: ${recipes.run.replicas}
-      micro_batch_size: 1
-      task_type: sft
-      global_batch_size: 64
-      weights_only: True
-      allow_percentage_invalid_samples: 10 
-    
-      exp_manager:
-        exp_dir: null
-        create_wandb_logger: False
-        create_tensorboard_logger: True
-          project: null
-          name: null
-        checkpoint_callback_params:
-          monitor: step
-          save_top_k: 10
-          mode: max
-          every_n_train_steps: ${recipes.training_config.save_steps} 
-          save_last: True
-        create_early_stopping_callback: True
-        early_stopping_callback_params:
-          min_delta: 0.001
-          mode: min
-          monitor: "val_loss"
-          patience: 2
-    
-      trainer:
-        log_every_n_steps: 1
-        max_epochs: -1 
-        max_steps: 16 
-        val_check_interval: 100
-        limit_test_batches: 0
-        gradient_clip_val: 1.0
-        num_nodes: ${recipes.training_config.replicas}
-    
-      model: 
-        hidden_dropout: 0.0 # Dropout probability for hidden state transformer.
-        attention_dropout: 0.0 # Dropout probability in the attention layer.
-        ffn_dropout: 0.0 # Dropout probability in the feed-forward layer.
-        sequence_parallel: True
-        optim:
-          lr: 1e-5
-          name: distributed_fused_adam 
-          bucket_cap_mb: 10
-          contiguous_grad_buffer: False
-          overlap_param_sync: False
-          contiguous_param_buffer: False
-          overlap_grad_sync: False
-          adam_w_mode: true
-          eps: 1e-06
-          weight_decay: 0.0
-          betas:
-            - 0.9
-            - 0.999
-          sched:
-            name: CosineAnnealing 
-            warmup_steps: 10
-            constant_steps: 0
-            min_lr: 1e-6
-    
-        mm_cfg:
-          llm:
-            freeze: false
-          image_projector:
-            freeze: true
-            require_newline: true 
-          video_projector:
-            freeze: true
-            require_newline: false
-    
-        peft:
-          peft_scheme: null
-    
-        training_validation:
-          loader:
-            args:
-              data_loader_workers: 1 
-              prefetch_factor: 2
-          collator:
-            args:
-              force_image_at_turn_beginning: false
-
-###### Sample Full Rank recipe
-
-The following is a sample full-rank recipe for SFT with all components properly configured.
-    
-    
-    ## Run config
-    run:
-        name: "my-sft-run"              # A descriptive name for your training job
-        model_type: "amazon.nova-lite-v1:0:300k"  # Model variant specification
-        model_name_or_path: "nova-lite/prod"      # Base model path
-        replicas: 4                     # Number of compute instances for training
-        data_s3_path: s3:Replace with your S3 bucket name/input.jsonl
-        validation_data_s3_path: [OPTIONAL] s3:your S3 bucket name/input.jsonl
-        output_s3_path: [S3_PATH_TO_STORE_MANIFEST]
-    
-    ## Training specific configs    
-    training_config:
-        max_length: 32768               # Maximum context window size (tokens)
-    
-        trainer:
-            max_epochs: 2               # Number of training epochs
-     
-        model: