Check which models support fine-tuning
A quick way to discover which foundation models in your region support fine-tuning is to use the AWS CLI Bedrock command to list models filtered by customization type:FINE_TUNING helps you quickly determine which foundation models in a region can be customized.
Customization techniques overview
When creating a fine-tuning job you select one of the available customization techniques. The primary approaches are:
- Supervised fine-tuning (SFT) is the most common: you provide example prompt-response pairs and the job uses those pairs to teach the model the desired behavior.
- Reinforcement-style fine-tuning uses prompts with associated scores or rankings (for example, 1–10 or ranked choices) so the model learns to choose outputs with higher reward.
- Distillation uses a stronger model (teacher) to generate high-quality prompt-response pairs; those examples train a smaller (student) model for improved latency or cost.
Console workflow: create a fine-tuning job
In the Bedrock console the typical flow to create a fine-tuning job is:- Navigate to Bedrock and choose Create fine-tuning job.
- Provide a job name (example: Customer Support Tone Fine-Tuning).
- Choose a base model to fine-tune (e.g., Nova Pro, Nova 2 Lite, Titan Image Generator, Nova Canvas — availability varies by region).
- Select the customization technique (Supervised, Reinforcement, or Distillation).
- Provide dataset and output S3 locations, and an IAM role that Bedrock can assume with the required permissions.

Custom model artifacts and discovery
When a fine-tuning job completes, Bedrock creates a custom model resource and stores the resulting model artifact in the S3 output location you specified. The custom model is visible under the Bedrock console’s Custom Models section (not in the Model Catalog, which lists platform-provided foundation models). Each custom model receives its own ARN and appears in your Custom Models listing.
Supervised fine-tuning: dataset format & prerequisites
Supervised fine-tuning (SFT) requires a properly formatted dataset, storage configuration, and an IAM role Bedrock can assume.- Training dataset format: Use a JSON Lines (JSONL) file where each line is a JSON object representing a single example. Each example typically contains
promptandcompletionfields. Example:
- Storage: Upload your JSONL file to an S3 bucket. Provide a separate (or same) S3 output location where Bedrock will write the resulting custom model artifact.
- IAM role: Create an IAM role that Bedrock can assume with the required S3 permissions and a trust policy that allows the Bedrock service principal to assume the role. Apply least privilege.
Bedrock will create and register the custom model resource as part of the training job. You can manage and deploy that custom model from the Custom Models section of the Bedrock console after the job completes.
Model availability and supported customization techniques change over time and vary by region. Always verify current support with the AWS CLI (
aws bedrock list-foundation-models) or the Bedrock console before planning a fine-tuning job.Links and references
- Amazon Bedrock — What is Bedrock?
- AWS CLI — bedrock list-foundation-models
- Amazon S3 documentation
- IAM roles — AWS Identity and Access Management