リクエストパラメーター ヘッダー Content-Type string (必須)
固定値:application/json
Authorization string (必須)
API Key認証。形式:Bearer sk-xxxx。
リクエストボディ model string (必須)
ファインチューニング用のベースモデルを指定します。
wan2.7-image-pro:テキストから画像/画像から画像へのファインチューニングに推奨されます。
wan2.7-image
qwen-image-2.0:Qwenの画像生成モデルです。Wanとは異なるハイパーパラメータセットをサポートしています。以下のハイパーパラメータのプロパティ(qwen-image-2.0、qwen-image-2.0-pro) を参照してください。
qwen-image-2.0-pro:Qwenの画像生成モデルです。ハイパーパラメータはqwen-image-2.0と同一です。以下のハイパーパラメータのプロパティ(qwen-image-2.0、qwen-image-2.0-pro) を参照してください。
training_file_ids array[string] (条件付き必須)
トレーニングデータセットのファイルIDの配列。複数のIDを渡すことができます。training_datasetsとは排他的です。training_datasetsを使用する場合、このパラメータは不要です。ファイルIDはUpload File API を通じて取得します。
validation_file_ids array[string](任意)
検証データセットファイルIDの配列です。複数のIDを渡すことができます。validation_datasetsとは排他的です。validation_datasetsを使用する場合、このパラメータは不要です。どちらも指定されていない場合、システムはトレーニングセットから自動的に分割します。ファイルIDはファイルアップロードAPI を通じて取得します。
training_type string (必須)
ファインチューニングタイプ。現在はefficient_sft(LoRA効率的ファインチューニング)のみをサポートしています。
hyper_parameters object(任意)
ハイパーパラメータ設定 。初期トレーニングでは、デフォルトのハイパーパラメータを使用することを推奨します。モデルのパフォーマンスが低い場合やトレーニングが収束しない場合は、トレーニング量(Wanの場合はmax_steps、qwen-image-2.0とqwen-image-2.0-proの場合はn_epochs)またはlearning_rateの調整を試してください。サポートされるハイパーパラメータはベースモデルによって異なります。以下の対応するハイパーパラメータのプロパティを参照してください。
ハイパーパラメータのプロパティ(wan2.7-image-pro、wan2.7-image)
max_steps int (必須)
合計トレーニングステップ数。トレーニング期間を制御する主要なパラメータです。推奨値:800。
max_stepsはトレーニングの反復回数を決定し、max_token_lengthはステップごとに処理されるデータ量を決定します。
モデルが十分に収束するように、少なくとも500ステップを使用することを推奨します。データセットが大きい場合はステップ数を増やすことができます。
eval_steps int (必須)
検証間隔。推奨値:200。値は>= 0である必要があります。トレーニング中の検証評価の間隔ステップ数を指定し、モデルのトレーニング進捗を定期的に評価するために使用されます。現在のステップのモデルファイルも保存されます。
learning_rate float (必須)
学習率。推奨値:3e-5。モデルの重みの更新幅を制御します。高すぎるとモデルの性能が低下し、低すぎると変化がほとんど見られなくなる可能性があります。
generation_type string (必須)
生成モード。トレーニングデータの形式と推論方法を決定します。有効な値は以下の通りです。
t2i:テキストから画像モード。
i2i:画像から画像モード。
max_pixels string (必須)
トレーニング画像の最大解像度です。トレーニングセット内の画像の総ピクセル数(幅 x 高さ)の上限を設定します。システムはこの値を超える画像のみをスケーリングし、制限内の画像は変更されません。3つの解像度パラメータ(max_pixels、max_token_length、val_img_size)を一致させることを推奨します。
1k:つまり 1024x1024 です。
2k:つまり 2048x2048 です。
推奨値:テキストから画像へは2k、画像から画像へは1kです。
val_img_size string (必須)
検証用画像の生成解像度。トレーニングプロセス中の検証評価時に生成される画像のターゲット解像度です。有効な値はmax_pixelsと同じです。推奨値:テキストから画像へは2k、画像から画像へは1kです。
max_token_length string (必須)
トレーニングステップごとの最大トークン長で、ステップごとの計算量と課金に影響します。max_stepsとともにトレーニングプロセスを制御します。max_stepsは反復回数を決定し、max_token_lengthはステップごとのデータ量を決定します。有効な値は以下の通りです。
1k:画像から画像への生成シナリオに推奨されます。
2k:テキストから画像への生成シナリオに推奨されます。
max_token_lengthと課金対象のLmax のマッピング:
generation_type
max_token_length
L max
t2i(テキストから画像)
1k
12,800
2k
23,220
i2i(画像から画像)
1k
23,220
2k
32,000
gradient_clip float (必須)
勾配クリッピング。推奨値:0.5。勾配爆発を防ぐために、すべての学習可能なパラメータに対するグローバル勾配ノルムのクリッピング閾値です。クリッピングを無効にするには-1を設定してください。
weight_decay float (必須)
Weight decay。推奨値:0.02。AdamWの分離型Weight decay係数で、過学習を防ぐためにすべての学習可能なパラメータに適用される正則化です。
lora_rank int (必須)
LoRA低ランク行列のランク。推奨値:32。この値はファインチューニングパラメータの数を決定します。値が大きいほどモデルの適合能力は強くなりますが、トレーニング速度は低下します。値は2のn 乗である必要があります(例:16、32、64)。
save_total_limit int(任意)
保存するチェックポイントの最大数。推奨値:10。保存されるモデルの最大数を制限します。システムはトレーニング中に生成された最後のN個のチェックポイントのみを保持します。
split float(任意)
トレーニングセットの分割比率です。推奨値は0.9です。値の範囲は(0, 1)です。validation_file_idsとvalidation_datasetsのいずれも指定されていない場合にのみ有効になります。このパラメータは、トレーニングセットの一部を自動的に検証セットとして分割するために使用されます。例えば、0.9はトレーニングセット90%、検証セット10%を意味します。
ハイパーパラメータのプロパティ(qwen-image-2.0、qwen-image-2.0-pro)
qwen-image-2.0とqwen-image-2.0-proは、エポック (n_epochs)の数によってトレーニングプロセスを制御します。これらはmax_steps、eval_steps、またはmax_token_lengthをサポートしていません。2つのモデルは同じハイパーパラメータを共有しますが、推奨される学習率は異なります。qwen-image-2.0の場合は5e-5、qwen-image-2.0-proの場合は1e-4です。
n_epochs int (必須)
トレーニングのエポック数。トレーニングセット全体を完全に通過する回数です。推奨値:10。有効範囲:[1, 10000]。エポック数を増やすと適合度が向上しますが、多すぎると過学習を引き起こす可能性があります。
eval_epochs int (必須)
エポック単位の検証間隔。推奨値:10。有効範囲:[1, 1000]。トレーニング中の検証評価の間隔エポック数を指定し、モデルのトレーニング進捗を定期的に評価するために使用されます。現在のエポックのモデルファイルも保存されます。
batch_size int(任意)
バッチサイズ。各パラメータ更新に使用されるサンプル数。推奨値:8。有効範囲:[1, 2048]。このパラメータは課金や総トレーニングトークン数には影響しません。
learning_rate float (必須)
学習率。qwen-image-2.0の推奨値は5e-5、qwen-image-2.0-proの推奨値は1e-4です。モデルの重みの更新幅を制御します。高すぎるとモデルの性能が低下し、低すぎると変化がほとんど見られなくなる可能性があります。
generation_type string (必須)
生成モード。トレーニングデータの形式と推論方法を決定します。有効な値は以下の通りです。
t2i:テキストから画像モード。
i2i:画像から画像モード。
推奨値:i2i。
max_pixels string (必須)
トレーニング画像の最大解像度。トレーニングセット内の画像の総ピクセル数(幅×高さ)の上限を設定する文字列ティアです。システムはこの値を超える画像のみをスケーリングし、制限内の画像は変更されません。有効な値は以下の通りです。
1k:つまり 1024x1024 です。
2k:つまり 2048x2048 です。
推奨値:2k。val_img_sizeと一致させてください。
val_img_size string (必須)
検証用画像の生成解像度。トレーニングプロセス中の検証評価時に生成される画像のターゲット解像度です。有効な値はmax_pixelsと同じです。推奨値:2k。
gradient_clip float (必須)
勾配クリッピング。推奨値:0.5。有効範囲:[0, 10.0]。勾配爆発を防ぐために使用される、すべての学習可能なパラメータに対するグローバル勾配ノルムクリッピングの閾値です。
weight_decay float (必須)
Weight decay。推奨値:0.02。有効範囲:[0, 1.0]。AdamWの分離型Weight decay係数です。すべての学習可能なパラメータに適用され、過学習を防ぐための正則化に使用されます。
lora_rank int (必須)
LoRA低ランク行列のランク(次元)。推奨値:32。有効範囲:[8, 128]。この値は学習可能なパラメータの数を決定します。値が大きいほど適合能力は向上しますが、トレーニング速度は低下します。
save_total_limit int(任意)
チェックポイントの保存上限。推奨値:20。有効範囲:[1, 40]。保存するモデルチェックポイントの最大数です。システムは最新のN個のチェックポイントのみを保持します。
split float(任意)
トレーニングセットの分割比率です。推奨値は0.9です。有効範囲は[0, 1]です。validation_file_idsまたはvalidation_datasetsが指定されていない場合にのみ有効になります。トレーニングセットの一部を自動的に検証セットとして分割します。例えば、0.9はトレーニングセット90%、検証セット10%を意味します。
training_datasets Array of Dataset (条件付き必須)
トレーニングデータセットのファイルリスト。training_file_idsとは排他的です。training_file_idsを使用する場合、このパラメータは不要です。
データセット構造
data_source_type string (必須)
データソースタイプ。有効な値:
oss_mount(OSS ファイルのマウント)
file_id(ファイル管理API経由でアップロードされたファイル)
mount_storage object(条件付き必須)
data_source_typeがoss_mountの場合に必須です。OSSマウント情報。
プロパティ
region string (必須)
マウントするOSSバケットのリージョン。北京(cn-beijing)およびシンガポール(ap-southeast-1)をサポートします。
bucket string (必須)
マウントするOSSバケットの名前。
file_path string (必須)
マウントするOSSファイルパス(オブジェクトキー)。複数のファイルを含むデータセットの場合は、data.jsonlのファイルパスを使用してください。file_idアプローチとは異なり、圧縮されていないデータセットフォルダ全体をOSSにアップロードする必要があります。Zipファイルはサポートされていません。
file_id string(条件付き必須)
data_source_typeがfile_idの場合に必須です。Upload File API によって生成されたファイルID。
validation_datasets Array of Dataset(任意)
検証用データセットのファイルリスト。構造はtraining_datasetsと同じです。
validation_file_idsとは排他的です。どちらも指定されていない場合、システムは自動的にトレーニングセットから分割します。
job_name string(任意)
チューニングジョブの名前。
model_name string(任意)
チューニング完了後のモデル名。
Text-to-image (wan2.7-image-pro) curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.7-image-pro",
"training_file_ids": [
"<Replace with the training dataset file ID>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"learning_rate": 3e-5,
"max_steps": 800,
"eval_steps": 200,
"max_token_length": "2k",
"gradient_clip": 0.5,
"weight_decay": 0.02,
"max_pixels": "2k",
"val_img_size": "2k",
"generation_type": "t2i",
"lora_rank": 32,
"save_total_limit": 10
}
}'
Image-to-image (wan2.7-image) curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.7-image",
"training_file_ids": [
"<Replace with the training dataset file ID>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"learning_rate": 3e-5,
"max_steps": 800,
"eval_steps": 200,
"max_token_length": "1k",
"gradient_clip": 0.5,
"weight_decay": 0.02,
"max_pixels": "1k",
"val_img_size": "1k",
"generation_type": "i2i",
"lora_rank": 32,
"save_total_limit": 10
}
}'
Qwen (qwen-image-2.0) curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen-image-2.0",
"training_file_ids": [
"<replace_with_training_dataset_file_id>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"learning_rate": 5e-5,
"n_epochs": 10,
"eval_epochs": 10,
"batch_size": 8,
"gradient_clip": 0.5,
"weight_decay": 0.02,
"max_pixels": "2k",
"val_img_size": "2k",
"generation_type": "t2i",
"lora_rank": 32,
"save_total_limit": 20
}
}'
Qwen (qwen-image-2.0-pro) curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "qwen-image-2.0-pro",
"training_file_ids": [
"<replace_with_training_dataset_file_id>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"learning_rate": 1e-4,
"n_epochs": 10,
"eval_epochs": 10,
"batch_size": 8,
"gradient_clip": 0.5,
"weight_decay": 0.02,
"max_pixels": "2k",
"val_img_size": "2k",
"generation_type": "t2i",
"lora_rank": 32,
"save_total_limit": 20
}
}'
Using OSS-mounted datasets curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.7-image-pro",
"training_datasets": [
{
"data_source_type": "oss_mount",
"mount_storage": {
"region": "ap-southeast-1",
"bucket": "example_bucket",
"file_path": "dataset/data.jsonl"
}
}
],
"training_type": "efficient_sft",
"hyper_parameters": {
"learning_rate": 3e-5,
"max_steps": 800,
"eval_steps": 200,
"max_token_length": "2k",
"gradient_clip": 0.5,
"weight_decay": 0.02,
"max_pixels": "2k",
"val_img_size": "2k",
"generation_type": "t2i",
"lora_rank": 32,
"save_total_limit": 10
}
}'