speedyrulz commited on
Commit
d861a6b
·
verified ·
1 Parent(s): 2260f3f

Upload 52 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +1 -0
  2. Wan_21_14B/epoch10/adapter_config.json +38 -0
  3. Wan_21_14B/epoch10/adapter_model.safetensors +3 -0
  4. Wan_21_14B/epoch10/config_photo.toml +87 -0
  5. Wan_21_14B/epoch12/adapter_config.json +38 -0
  6. Wan_21_14B/epoch12/adapter_model.safetensors +3 -0
  7. Wan_21_14B/epoch12/config_photo.toml +87 -0
  8. Wan_21_14B/epoch14/adapter_config.json +38 -0
  9. Wan_21_14B/epoch14/adapter_model.safetensors +3 -0
  10. Wan_21_14B/epoch14/config_photo.toml +87 -0
  11. Wan_21_14B/epoch16/adapter_config.json +38 -0
  12. Wan_21_14B/epoch16/adapter_model.safetensors +3 -0
  13. Wan_21_14B/epoch16/config_photo.toml +87 -0
  14. Wan_21_14B/epoch18/adapter_config.json +38 -0
  15. Wan_21_14B/epoch18/adapter_model.safetensors +3 -0
  16. Wan_21_14B/epoch18/config_photo.toml +87 -0
  17. Wan_21_14B/epoch2/adapter_config.json +38 -0
  18. Wan_21_14B/epoch2/adapter_model.safetensors +3 -0
  19. Wan_21_14B/epoch2/config_photo.toml +87 -0
  20. Wan_21_14B/epoch20/adapter_config.json +38 -0
  21. Wan_21_14B/epoch20/adapter_model.safetensors +3 -0
  22. Wan_21_14B/epoch20/config_photo.toml +87 -0
  23. Wan_21_14B/epoch4/adapter_config.json +38 -0
  24. Wan_21_14B/epoch4/adapter_model.safetensors +3 -0
  25. Wan_21_14B/epoch4/config_photo.toml +87 -0
  26. Wan_21_14B/epoch6/adapter_config.json +38 -0
  27. Wan_21_14B/epoch6/adapter_model.safetensors +3 -0
  28. Wan_21_14B/epoch6/config_photo.toml +87 -0
  29. Wan_21_14B/epoch8/adapter_config.json +38 -0
  30. Wan_21_14B/epoch8/adapter_model.safetensors +3 -0
  31. Wan_21_14B/epoch8/config_photo.toml +87 -0
  32. Wan_21_14B/face/epoch1/adapter_config.json +38 -0
  33. Wan_21_14B/face/epoch1/adapter_model.safetensors +3 -0
  34. Wan_21_14B/face/epoch1/config_photo.toml +87 -0
  35. Wan_21_14B/face/epoch2/adapter_config.json +38 -0
  36. Wan_21_14B/face/epoch2/adapter_model.safetensors +3 -0
  37. Wan_21_14B/face/epoch2/config_photo.toml +87 -0
  38. Wan_21_14B/face/epoch3/adapter_config.json +38 -0
  39. Wan_21_14B/face/epoch3/adapter_model.safetensors +3 -0
  40. Wan_21_14B/face/epoch3/config_photo.toml +87 -0
  41. Wan_21_14B/face/epoch4/adapter_config.json +38 -0
  42. Wan_21_14B/face/epoch4/adapter_model.safetensors +3 -0
  43. Wan_21_14B/face/epoch4/config_photo.toml +87 -0
  44. Wan_21_14B/face/epoch5/adapter_config.json +38 -0
  45. Wan_21_14B/face/epoch5/adapter_model.safetensors +3 -0
  46. Wan_21_14B/face/epoch5/config_photo.toml +87 -0
  47. Wan_21_14B/face/epoch6/adapter_config.json +38 -0
  48. Wan_21_14B/face/epoch6/adapter_model.safetensors +3 -0
  49. Wan_21_14B/face/epoch6/config_photo.toml +87 -0
  50. Wan_21_14B/face/epoch7/adapter_config.json +38 -0
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ Wan_21_14B/face/runpodctl.exe filter=lfs diff=lfs merge=lfs -text
Wan_21_14B/epoch10/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch10/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4b4f889ab03be4b912cd136772a7b53ef462d47995a0f03b95d5d4e653ef561d
3
+ size 2453769592
Wan_21_14B/epoch10/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch12/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch12/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3b1e7f6cf0d3ebbc0846b494c80e745d1a11ff85d93acc6d9ba15bcf236b0717
3
+ size 2453769592
Wan_21_14B/epoch12/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch14/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch14/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8a56cc4ca9346ced8106f781fa829fb9c29d09f781843299c325cb5aef96bd58
3
+ size 2453769592
Wan_21_14B/epoch14/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch16/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch16/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b4f05da131030b08082cb289fb863aac1169223acd41ab59243d4c26bb69d490
3
+ size 2453769592
Wan_21_14B/epoch16/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch18/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch18/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:63c007eebf523ed8e4ea1f395dcf1480bbe099f419586ab5606fed9a4245b214
3
+ size 2453769592
Wan_21_14B/epoch18/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch2/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch2/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f5d7d04a0d06ba9bf34782f65483f9b6d38d6bc394d152cee8138e6748e9d4a0
3
+ size 2453769592
Wan_21_14B/epoch2/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch20/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch20/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f008b3912b8a993f747f9e7b7330e88a3958281c8716862390502638ea64df29
3
+ size 2453769592
Wan_21_14B/epoch20/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch18/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch4/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch4/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d8bc9b988f0d856175ed73e8b38f9007f6436f318b3f7d8bc063c05f2bf27498
3
+ size 2453769592
Wan_21_14B/epoch4/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch6/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch6/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c04b8e1053f7cc2872649998221b968b0000a28315aba4ccd345fadf8e5be560
3
+ size 2453769592
Wan_21_14B/epoch6/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/epoch8/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "q",
28
+ "ffn.0",
29
+ "k",
30
+ "v",
31
+ "o",
32
+ "ffn.2"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/epoch8/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c7d6615dc1c437c57e2c44c8c916778de95974ffe0ef9aab6be638c77bbe0546
3
+ size 2453769592
Wan_21_14B/epoch8/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 2
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ #init_from_existing = '/data/diffusion_pipe_training_runs/something/epoch50'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 5e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch1/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch1/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:337c6e4142db3a4e83d44480604c4bf25a8cf67678e1beb306e8e76807804177
3
+ size 2453769592
Wan_21_14B/face/epoch1/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch2/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch2/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d0e8c874ebb496668c9aa6d775a64784c6e7aaaf94811bb77a71622ed28462bf
3
+ size 2453769592
Wan_21_14B/face/epoch2/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch3/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch3/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1ea9523e8cfb99d1755477e4d9bea70f84e3d4daa30f55ff5326a88f6ab9f1a7
3
+ size 2453769592
Wan_21_14B/face/epoch3/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch4/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch4/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b6a5c3c6674aa519b398eba04a6769ffd7a8bbba94aee8b391194125bcb11f6d
3
+ size 2453769592
Wan_21_14B/face/epoch4/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch5/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch5/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:292357445a0e4447d7e37a4125a40ce8563ffca83597bb75509760606b00bb1f
3
+ size 2453769592
Wan_21_14B/face/epoch5/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch6/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }
Wan_21_14B/face/epoch6/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0f952250af1b9021ed35bfd11d6aba5862396495a7e1a692f5d2c968f0dbd3f4
3
+ size 2453769592
Wan_21_14B/face/epoch6/config_photo.toml ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Output path for training runs. Each training run makes a new directory in here.
2
+ output_dir = '/workspace/output'
3
+
4
+ # Dataset config file.
5
+ dataset = '/workspace/dataset_photo.toml'
6
+ # You can have separate eval datasets. Give them a name for Tensorboard metrics.
7
+ # eval_datasets = [
8
+ # {name = 'something', config = 'path/to/eval_dataset.toml'},
9
+ # ]
10
+
11
+ # training settings
12
+
13
+ # I usually set this to a really high value because I don't know how long I want to train.
14
+ epochs = 1000
15
+ # Batch size of a single forward/backward pass for one GPU.
16
+ micro_batch_size_per_gpu = 2
17
+ # Pipeline parallelism degree. A single instance of the model is divided across this many GPUs.
18
+ pipeline_stages = 1
19
+ # Number of micro-batches sent through the pipeline for each training step.
20
+ # If pipeline_stages > 1, a higher GAS means better GPU utilization due to smaller pipeline bubbles (where GPUs aren't overlapping computation).
21
+ gradient_accumulation_steps = 1
22
+ # Grad norm clipping.
23
+ gradient_clipping = 1.0
24
+ # Learning rate warmup.
25
+ # warmup_steps = 100
26
+
27
+ # eval settings
28
+
29
+ eval_every_n_epochs = 1
30
+ eval_before_first_step = true
31
+ # Might want to set these lower for eval so that less images get dropped (eval dataset size is usually much smaller than training set).
32
+ # Each size bucket of images/videos is rounded down to the nearest multiple of the global batch size, so higher global batch size means
33
+ # more dropped images. Usually doesn't matter for training but the eval set is much smaller so it can matter.
34
+ eval_micro_batch_size_per_gpu = 1
35
+ eval_gradient_accumulation_steps = 1
36
+
37
+ # misc settings
38
+
39
+ # Probably want to set this a bit higher if you have a smaller dataset so you don't end up with a million saved models.
40
+ save_every_n_epochs = 1
41
+ # Can checkpoint the training state every n number of epochs or minutes. Set only one of these. You can resume from checkpoints using the --resume_from_checkpoint flag.
42
+ #checkpoint_every_n_epochs = 1
43
+ checkpoint_every_n_minutes = 800
44
+ # Always set to true unless you have a huge amount of VRAM.
45
+ activation_checkpointing = true
46
+ # Controls how Deepspeed decides how to divide layers across GPUs. Probably don't change this.
47
+ partition_method = 'parameters'
48
+ # dtype for saving the LoRA or model, if different from training dtype
49
+ save_dtype = 'bfloat16'
50
+ # Batch size for caching latents and text embeddings. Increasing can lead to higher GPU utilization during caching phase but uses more memory.
51
+ caching_batch_size = 1
52
+ # How often deepspeed logs to console.
53
+ steps_per_print = 1
54
+ # How to extract video clips for training from a single input video file.
55
+ # The video file is first assigned to one of the configured frame buckets, but then we must extract one or more clips of exactly the right
56
+ # number of frames for that bucket.
57
+ # single_beginning: one clip starting at the beginning of the video
58
+ # single_middle: one clip from the middle of the video (cutting off the start and end equally)
59
+ # multiple_overlapping: extract the minimum number of clips to cover the full range of the video. They might overlap some.
60
+ # default is single_middle
61
+ video_clip_mode = 'single_middle'
62
+
63
+ [model]
64
+ type = 'wan'
65
+ ckpt_path = '/workspace/model'
66
+ dtype = 'bfloat16'
67
+ # You can use fp8 for the transformer when training LoRA.
68
+ transformer_dtype = 'float8'
69
+ timestep_sample_method = 'logit_normal'
70
+
71
+ # For models that support full fine tuning, simply delete or comment out the [adapter] table to FFT.
72
+ [adapter]
73
+ type = 'lora'
74
+ rank = 256
75
+ # Dtype for the LoRA weights you are training.
76
+ dtype = 'bfloat16'
77
+ # You can initialize the lora weights from a previously trained lora.
78
+ init_from_existing = '/workspace/epoch20/'
79
+
80
+ [optimizer]
81
+ # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
82
+ # Look at train.py for other options. You could also easily edit the file and add your own.
83
+ type = 'adamw_optimi'
84
+ lr = 1e-5
85
+ betas = [0.9, 0.99]
86
+ weight_decay = 0.01
87
+ eps = 1e-8
Wan_21_14B/face/epoch7/adapter_config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": null,
5
+ "bias": "none",
6
+ "corda_config": null,
7
+ "eva_config": null,
8
+ "exclude_modules": null,
9
+ "fan_in_fan_out": false,
10
+ "inference_mode": false,
11
+ "init_lora_weights": true,
12
+ "layer_replication": null,
13
+ "layers_pattern": null,
14
+ "layers_to_transform": null,
15
+ "loftq_config": {},
16
+ "lora_alpha": 256,
17
+ "lora_bias": false,
18
+ "lora_dropout": 0.0,
19
+ "megatron_config": null,
20
+ "megatron_core": "megatron.core",
21
+ "modules_to_save": null,
22
+ "peft_type": "LORA",
23
+ "r": 256,
24
+ "rank_pattern": {},
25
+ "revision": null,
26
+ "target_modules": [
27
+ "ffn.0",
28
+ "ffn.2",
29
+ "v",
30
+ "q",
31
+ "o",
32
+ "k"
33
+ ],
34
+ "task_type": null,
35
+ "trainable_token_indices": null,
36
+ "use_dora": false,
37
+ "use_rslora": false
38
+ }