Tune Qwen models in Model Studio through the API (HTTP) or CLI (shell). Three tuning methods are supported: supervised fine-tuning (SFT), continual pre-training (CPT), and direct preference optimization (DPO).
Prerequisites
- Review Introduction to model fine-tuning to understand its concepts, process, and data requirements.
- Activate the service and obtain an API key. Get an API key.
- Grant the RAM user (RAM user) the necessary invocation, training, and deployment permissions.
Upload tuning files
Preparing fine-tuning files
- SFT training set
The OpenAInameandweightparameters are not supported. All assistant outputs will be trained.
"loss_weight" parameter, which sets the relative importance of that line during training. (Range: 0.0 to 1.0. A larger value indicates higher importance.)This parameter is available for invitational preview. To use it, contact your account manager.
You can also download a data template from the Model Studio console. | Below the file upload area on the Create Dataset page, you can find the data template download link. |
Upload fine-tuning fileto Model Studio
- OpenAI-compatible Files API
- The maximum size of a single file is 300 MB.
- The total size of all non-deleted files is limited to 5 GB.
- You can store a maximum of 100 non-deleted files.
- Files are stored indefinitely.
Model fine-tuning
Create a fine-tuning job
- HTTP
For Windows CMD, replace${DASHSCOPE_API_KEY}with%DASHSCOPE_API_KEY%. For PowerShell, use$env:DASHSCOPE_API_KEY.
Parameters
Parameter | Required | Type | Location | Description |
|---|---|---|---|---|
training_file_ids | Yes | Array | Body | A list of file IDs for the training set. |
validation_file_ids | No | Array | Body | A list of file IDs for the validation set. |
model | Yes | String | Body | Base model ID, or the ID of a previously fine-tuned model. |
hyper_parameters | No | Map | Body | Hyperparameters for the fine-tuning job. Default values vary by model; check the console for specifics. The following parameters are required because they affect training cost: |
training_type | No | String | Body | Fine-tuning method. Valid values:
|
job_name | No | String | Body | Name of the fine-tuning job. |
model_name | No | String | Body | Name of the fine-tuned model (not the system-generated model ID). |
Response
Base models ( model ) and training types ( training_type )
Base models ( model ) and training types ( training_type )
Supported models
- Singapore
- North China 2 (Beijing)
- Tab
- Tab
Model name | Model code | SFT full-parameter training (sft) | SFT efficient training (efficient_sft) |
|---|---|---|---|
Qwen3-14B | qwen3-14b | × | Supported |
Comparison of tuning methods
Feature | CPT (Continual Pre-training) | SFT (Supervised Fine-tuning) | DPO (Direct Preference Optimization) |
|---|---|---|---|
Summary | Supplements knowledge (Injects domain knowledge) | Learns to perform tasks (Follows instructions) | Performs tasks better (Aligns with human preferences) |
Input data | 10 million+ tokens Unlabeled domain text | Over 1,000 entries High-quality "question-answer" pairs | 100+ sets "Better-worse" response pairs for the same instruction |
Core objective | Domain adaptation. Learns specialized vocabulary and facts. | Teaches the model conversation formats and task execution capabilities. | Makes model outputs better align with human values and preferences. |
Learning method | Self-supervised learning (Predicts the next word) | Supervised learning (Imitates the ground truth) | Direct preference learning (Increases the probability of good responses and decreases the probability of bad responses) |
Model stage | Typically before SFT | After CPT and before DPO | Typically after SFT, as the final step for alignment. |
Comparison of training patterns
Full-parameter training | Efficient training (LoRA, recommended) | |
|---|---|---|
Scenarios | • The model needs to acquire new capabilities • Achieving optimal global performance. | • Optimizing model performance for specific scenarios. • For cost-sensitive and time-sensitive scenarios. |
Training time | Longer, with slower convergence. | Shorter, with faster convergence. |
hyper_parameters : Supported settings
hyper_parameters : Supported settings
Supported parameters and their default values vary by model. To view specific default values, go to theconsoleand select the model and training method.
Parameter | Recommended setting | Type | Description |
|---|---|---|---|
(Number of epochs) [Required] | Data size < 10,000: 3–5 Data size > 10,000: 1–2 | Integer | How many times the model iterates over the full training set. More epochs increase training time and cost. |
(Learning rate) | Use the recommended default value provided by Model Studio. | Float | Controls the step-size for weight updates during training.
|
(Freeze visual backbone) | Adjust as needed | Boolean | Freezes the visual backbone so its weights are not updated during training. Applies only to Qwen-VL models. Token-based billing is available only when freeze_vit is set to “true”. |
(Batch size) [Required] | Use the recommended default value provided by Model Studio. | Integer | Number of training examples per iteration. Small values significantly increase training time. Defaults vary by model. |
(Evaluation steps) | Adjust as needed | Integer | Step interval for evaluating training accuracy and loss. Controls how often |
(Logging steps) | Adjust as needed | Integer | Step interval for logging training progress. |
(Learning rate scheduler) | Recommended | String | Strategy for adjusting the learning rate during training. Each strategy is described in Fine-tune a model in the console. |
(Sequence length) [Required] | 8192 | Integer | Maximum sequence length (in tokens) per training example. Longer examples are discarded. How to convert between tokens and characters. |
(Max validation set samples) | Use the recommended default value provided by Model Studio. | Integer | When This parameter has no effect when |
(Training set ratio) | Use the recommended default value provided by Model Studio. | Float | If When |
(Warm-up ratio) | Use the recommended default value provided by Model Studio. | Float | Fraction of training steps used for learning rate warm-up (linear ramp from near-zero to the target rate). Stabilizes early training by limiting large weight updates. Too high: resembles a low learning rate with minimal performance change. Too low: resembles a high learning rate and may degrade performance. This parameter has no effect if the learning rate scheduler is set to |
(Weight decay) | Use the recommended default value provided by Model Studio. | Float | L2 regularization strength. Helps preserve generalization, but excessively high values reduce fine-tuning effectiveness. |
Parameters for efficient fine-tuning (supports When you perform a second round of efficient fine-tuning on a model that has already been efficiently fine-tuned, the | |||
(LoRA rank) | 64 | Integer | Rank of the LoRA low-rank matrices. Higher ranks can improve results but slightly increase training time. |
(LoRA alpha) | Use the recommended default value provided by Model Studio. | Integer | Scaling factor for combining base model weights with the LoRA correction. Larger alpha: more weight to task-specific LoRA updates. Smaller alpha: more retention of base model knowledge. |
(LoRA dropout) | Use the recommended default value provided by Model Studio. | Float | Dropout rate for LoRA low-rank matrices. The default balances generalization; overly large values diminish fine-tuning effectiveness. |
Parameters for publishing model parameter snapshots (for | |||
(Snapshot save strategy) | It can be set to
| String | Strategy for saving model parameter snapshots (checkpoints): |
(Save steps) | If you need to modify it manually, set it to an integer multiple of the | Integer | Interval, in training steps, between snapshot saves. |
(Snapshot save limit) | 10 | Integer | Maximum snapshots to retain. Older snapshots are auto-deleted when the limit is reached. |
Retrieve a fine-tuning job
Use the job_id from the create response to retrieve job details.
- HTTP
Request parameters
Parameter | Type | Location | Required | Description |
|---|---|---|---|---|
job_id | String | Path | Yes | The ID of the fine-tuning job. |
Successful response
Job status | Description |
|---|---|
PENDING | The job is waiting to start. |
QUEUING | The job is queued. Only one fine-tuning job runs at a time. |
RUNNING | The job is running. |
CANCELING | The job is being canceled. |
SUCCEEDED | The job succeeded. |
FAILED | The job failed. |
CANCELED | The job was canceled. |
finetuned_output field contains the model ID for deployment.Get fine-tuning job logs
- HTTP
UseSample response:offset(starting line) andline(max lines to return) to paginate log output.
Query and publish model checkpoints
Only SFT fine-tuning (efficient_sftandsft) supports saving and publishing checkpoints from intermediate training states.
List checkpoints for a fine-tuning job
Parameter | Type | Parameter location | Required | Description |
|---|---|---|---|---|
job_id | String | Path Parameter | Yes | The ID of the fine-tuning job. |
checkpoint field contains the checkpoint ID, which specifies the checkpoint to publish in the Model publishing (optional) API. The model_name field contains the model ID used for model deployment. The finetuned_output field in the original fine-tuning job response is the model_name of the final checkpoint.Status | Description |
|---|---|
PENDING | The checkpoint is pending publication. You must publish it using the Model publishing API before you can use it for model deployment and invocation. |
PROCESSING | The checkpoint is being published. |
SUCCEEDED | The checkpoint has been published successfully. You can now use it for model deployment and invocation. |
FAILED | The checkpoint failed to publish. |
Model publishing (optional)
Parameter | Type | Parameter location | Required | Description |
|---|---|---|---|---|
job_id | String | Path Parameter | Yes | The ID of the fine-tuning job. |
checkpoint_id | String | Path Parameter | Yes | The ID of the checkpoint to publish. |
model_name | String | Path Parameter | Yes | The custom model ID to assign to the published model. |
More fine-tuning operations
List fine-tuning jobs
Cancel a fine-tuning job
Cancels a running fine-tuning job.
Delete a fine-tuning job
You cannot delete a running fine-tuning job.
Model deployment and invocation
Model deployment
To deploy the model, go to the model deployment console.
Model invocation
Once deployment status is RUNNING, invoke the fine-tuned model like any other model.
You can also get the Model Code from the model deployment console.
Usage and parameters: DashScope API Reference.