signsur4739379373 commited on
Commit
be3c3af
·
1 Parent(s): bd83937

add optional lora support

Browse files
Files changed (2) hide show
  1. README.md +1 -1
  2. app.py +35 -5
README.md CHANGED
@@ -7,7 +7,7 @@ sdk: gradio
7
  sdk_version: 5.44.1
8
  python_version: '3.12'
9
  app_file: app.py
10
- pinned: false
11
  short_description: 10eros ltx 2.3 image-to-video with native audio
12
  ---
13
 
 
7
  sdk_version: 5.44.1
8
  python_version: '3.12'
9
  app_file: app.py
10
+ pinned: true
11
  short_description: 10eros ltx 2.3 image-to-video with native audio
12
  ---
13
 
app.py CHANGED
@@ -505,6 +505,12 @@ DOWNLOADS = [
505
  "dest": MODELS / "loras" / "ltx23" / "2592090_LTX2.3_Physics_V2_000002000.safetensors",
506
  "label": "physics v2 lora (mistic)",
507
  },
 
 
 
 
 
 
508
  {
509
  "repo": "LiconStudio/LTX-2.3-Multiple-Subject-Reference",
510
  "file": "LTX2.3-Licon-MSR-test_version.safetensors",
@@ -537,6 +543,7 @@ SINGULARITY_LORA_FILENAME = "ltx23/Singularity-LTX-2.3_OmniCine_V1nsf.safetensor
537
  OMNINFT_LORA_FILENAME = "ltx23/OmniNFT_converted_lora.safetensors"
538
  OMNINFT_BF16_LORA_FILENAME = "ltx23/LTX-2.3-OmniNFT-RL-Lora_bf16.safetensors"
539
  MSR_LORA_FILENAME = "ltx23/LTX2.3-Licon-MSR-test_version.safetensors"
 
540
  NODE_POWER_LORA = "557"
541
 
542
  # Workflow has two sampler passes; MSR conditioning injected at pass-1
@@ -639,7 +646,7 @@ PRESET_VALUES = {
639
  "sulphur_fro99": 0.0, "sulphur_v1": 0.0, "vbvr": 0.0,
640
  "dreamly": 0.0, "synth": 0.0, "plora": 0.0,
641
  "singularity": 0.0, "omninft": 0.8, "omninft_bf16": 0.0,
642
- "better_motion": 0.0, "physics_v2": 0.0,
643
  "likeness_strength": 0.9,
644
  "likeness_anchor_strength": 0.5,
645
  "latent_anchor_strength": 0.11,
@@ -654,7 +661,7 @@ PRESET_VALUES = {
654
  "sulphur_fro99": 0.15, "sulphur_v1": 0.15, "vbvr": 0.5,
655
  "dreamly": 0.6, "synth": 0.0, "plora": 0.0,
656
  "singularity": 0.3, "omninft": 0.8, "omninft_bf16": 0.0,
657
- "better_motion": 0.0, "physics_v2": 0.0,
658
  "likeness_strength": 0.9,
659
  "likeness_anchor_strength": 0.15,
660
  "latent_anchor_strength": 0.08,
@@ -669,7 +676,7 @@ PRESET_VALUES = {
669
  "sulphur_fro99": 0.15, "sulphur_v1": 0.15, "vbvr": 0.5,
670
  "dreamly": 0.6, "synth": 0.0, "plora": 0.0,
671
  "singularity": 0.3, "omninft": 0.3, "omninft_bf16": 0.0,
672
- "better_motion": 0.0, "physics_v2": 0.0,
673
  "likeness_strength": 0.9,
674
  "likeness_anchor_strength": 0.15,
675
  "latent_anchor_strength": 0.08,
@@ -685,7 +692,7 @@ PRESET_VALUES = {
685
  "sulphur_fro99": 0.25, "sulphur_v1": 0.20, "vbvr": 0.85,
686
  "dreamly": 0.45, "synth": 0.30, "plora": 0.70,
687
  "singularity": 0.70, "omninft": 1.25, "omninft_bf16": 1.70,
688
- "better_motion": 0.30, "physics_v2": 0.70,
689
  "likeness_strength": 0.35,
690
  "likeness_anchor_strength": 0.72,
691
  "latent_anchor_strength": 0.33,
@@ -1782,6 +1789,7 @@ def _inject_params(
1782
  omninft_bf16_lora_strength: float = 0.0,
1783
  better_motion_lora_strength: float = 0.0,
1784
  physics_v2_lora_strength: float = 0.0,
 
1785
  sulphur_audio_strength: float = 0.15,
1786
  sulphur_v1_audio_strength: float = 0.15,
1787
  vbvr_audio_strength: float = 0.5,
@@ -1793,6 +1801,7 @@ def _inject_params(
1793
  omninft_bf16_audio_strength: float = 0.0,
1794
  better_motion_audio_strength: float = 0.0,
1795
  physics_v2_audio_strength: float = 0.0,
 
1796
  cache_at_step: int = 0,
1797
  cache_warmup: int = 400,
1798
  energy_threshold: float = 0.3,
@@ -1899,6 +1908,7 @@ def _inject_params(
1899
  "lora_omninft_bf16": omninft_bf16_lora_strength,
1900
  "lora_better_motion": better_motion_lora_strength,
1901
  "lora_physics_v2": physics_v2_lora_strength,
 
1902
  },
1903
  audio_strengths={
1904
  "lora_sulphur": sulphur_audio_strength,
@@ -1912,6 +1922,7 @@ def _inject_params(
1912
  "lora_omninft_bf16": omninft_bf16_audio_strength,
1913
  "lora_better_motion": better_motion_audio_strength,
1914
  "lora_physics_v2": physics_v2_audio_strength,
 
1915
  },
1916
  )
1917
  workflow[NODE_POSITIVE]["inputs"]["text"] = prompt
@@ -2059,6 +2070,7 @@ OPTIONAL_LORAS = {
2059
  "lora_omninft_bf16": OMNINFT_BF16_LORA_FILENAME,
2060
  "lora_better_motion": BETTER_MOTION_LORA_FILENAME,
2061
  "lora_physics_v2": PHYSICS_V2_LORA_FILENAME,
 
2062
  }
2063
 
2064
 
@@ -2870,6 +2882,7 @@ def get_gpu_duration(
2870
  omninft_bf16_lora_strength: float = 0.0,
2871
  better_motion_lora_strength: float = 0.0,
2872
  physics_v2_lora_strength: float = 0.0,
 
2873
  sulphur_audio_strength: float = 0.15,
2874
  sulphur_v1_audio_strength: float = 0.15,
2875
  vbvr_audio_strength: float = 0.5,
@@ -2881,6 +2894,7 @@ def get_gpu_duration(
2881
  omninft_bf16_audio_strength: float = 0.0,
2882
  better_motion_audio_strength: float = 0.0,
2883
  physics_v2_audio_strength: float = 0.0,
 
2884
  cache_at_step: int = 0,
2885
  cache_warmup: int = 400,
2886
  energy_threshold: float = 0.3,
@@ -2961,6 +2975,7 @@ def generate(
2961
  omninft_bf16_lora_strength: float = 0.0,
2962
  better_motion_lora_strength: float = 0.0,
2963
  physics_v2_lora_strength: float = 0.0,
 
2964
  sulphur_audio_strength: float = 0.15,
2965
  sulphur_v1_audio_strength: float = 0.15,
2966
  vbvr_audio_strength: float = 0.5,
@@ -2972,6 +2987,7 @@ def generate(
2972
  omninft_bf16_audio_strength: float = 0.0,
2973
  better_motion_audio_strength: float = 0.0,
2974
  physics_v2_audio_strength: float = 0.0,
 
2975
  cache_at_step: int = 0,
2976
  cache_warmup: int = 400,
2977
  energy_threshold: float = 0.3,
@@ -3096,6 +3112,7 @@ def generate(
3096
  omninft_bf16_lora_strength=omninft_bf16_lora_strength,
3097
  better_motion_lora_strength=better_motion_lora_strength,
3098
  physics_v2_lora_strength=physics_v2_lora_strength,
 
3099
  sulphur_audio_strength=sulphur_audio_strength,
3100
  sulphur_v1_audio_strength=sulphur_v1_audio_strength,
3101
  vbvr_audio_strength=vbvr_audio_strength,
@@ -3107,6 +3124,7 @@ def generate(
3107
  omninft_bf16_audio_strength=omninft_bf16_audio_strength,
3108
  better_motion_audio_strength=better_motion_audio_strength,
3109
  physics_v2_audio_strength=physics_v2_audio_strength,
 
3110
  cache_at_step=int(cache_at_step),
3111
  cache_warmup=int(cache_warmup),
3112
  energy_threshold=float(energy_threshold),
@@ -3154,6 +3172,7 @@ def generate(
3154
  f"omninft_bf16={omninft_bf16_lora_strength:.2f}/{omninft_bf16_audio_strength:.2f} "
3155
  f"better_motion={better_motion_lora_strength:.2f}/{better_motion_audio_strength:.2f} "
3156
  f"physics_v2={physics_v2_lora_strength:.2f}/{physics_v2_audio_strength:.2f} "
 
3157
  f"likeness={likeness_strength:.2f} "
3158
  f"like_anchor={likeness_anchor_strength:.2f} "
3159
  f"lat_anchor={latent_anchor_strength:.2f} "
@@ -3234,6 +3253,7 @@ def apply_preset(preset: str):
3234
  gr.update(value=p["omninft_bf16"]),
3235
  gr.update(value=p["better_motion"]),
3236
  gr.update(value=p["physics_v2"]),
 
3237
  gr.update(value=p["likeness_strength"]),
3238
  gr.update(value=p["likeness_anchor_strength"]),
3239
  gr.update(value=p["latent_anchor_strength"]),
@@ -3361,6 +3381,10 @@ with gr.Blocks(title="10Eros LTX 2.3 image-to-video") as demo:
3361
  0.0, 1.0, value=0.0, step=0.05,
3362
  label="physics v2 / mistic (0 = off)",
3363
  )
 
 
 
 
3364
  with gr.Row():
3365
  max_width = gr.Slider(512, 1536, value=1120, step=32, label="max width")
3366
  max_height = gr.Slider(512, 1536, value=1344, step=32, label="max height")
@@ -3483,6 +3507,10 @@ with gr.Blocks(title="10Eros LTX 2.3 image-to-video") as demo:
3483
  0.0, 1.0, value=0.0, step=0.05,
3484
  label="physics v2 / mistic (audio)",
3485
  )
 
 
 
 
3486
  with gr.Accordion("multi-reference settings (MSR)", open=False, visible=False) as msr_settings_acc:
3487
  msr_frame_count = gr.Dropdown(
3488
  [17, 25, 33, 41], value=41,
@@ -3566,6 +3594,7 @@ with gr.Blocks(title="10Eros LTX 2.3 image-to-video") as demo:
3566
  omninft_bf16_lora_strength,
3567
  better_motion_lora_strength,
3568
  physics_v2_lora_strength,
 
3569
  sulphur_audio_strength,
3570
  sulphur_v1_audio_strength,
3571
  vbvr_audio_strength,
@@ -3577,6 +3606,7 @@ with gr.Blocks(title="10Eros LTX 2.3 image-to-video") as demo:
3577
  omninft_bf16_audio_strength,
3578
  better_motion_audio_strength,
3579
  physics_v2_audio_strength,
 
3580
  cache_at_step,
3581
  cache_warmup,
3582
  energy_threshold,
@@ -3624,7 +3654,7 @@ with gr.Blocks(title="10Eros LTX 2.3 image-to-video") as demo:
3624
  sulphur_lora_strength, sulphur_v1_lora_strength, vbvr_lora_strength,
3625
  dreamly_lora_strength, synth_lora_strength, plora_lora_strength,
3626
  singularity_lora_strength, omninft_lora_strength, omninft_bf16_lora_strength,
3627
- better_motion_lora_strength, physics_v2_lora_strength,
3628
  likeness_strength, likeness_anchor_strength, latent_anchor_strength,
3629
  first_frame_strength, anchor_similarity_threshold, energy_threshold,
3630
  cache_warmup, sigma_string,
 
505
  "dest": MODELS / "loras" / "ltx23" / "2592090_LTX2.3_Physics_V2_000002000.safetensors",
506
  "label": "physics v2 lora (mistic)",
507
  },
508
+ {
509
+ "repo": "signsur4739379373/archive",
510
+ "file": "2508281_LTX-2.3_Cinematic hardcut.safetensors",
511
+ "dest": MODELS / "loras" / "ltx23" / "2508281_LTX-2.3_Cinematic hardcut.safetensors",
512
+ "label": "cinematic hardcut lora",
513
+ },
514
  {
515
  "repo": "LiconStudio/LTX-2.3-Multiple-Subject-Reference",
516
  "file": "LTX2.3-Licon-MSR-test_version.safetensors",
 
543
  OMNINFT_LORA_FILENAME = "ltx23/OmniNFT_converted_lora.safetensors"
544
  OMNINFT_BF16_LORA_FILENAME = "ltx23/LTX-2.3-OmniNFT-RL-Lora_bf16.safetensors"
545
  MSR_LORA_FILENAME = "ltx23/LTX2.3-Licon-MSR-test_version.safetensors"
546
+ HARDCUT_LORA_FILENAME = "ltx23/2508281_LTX-2.3_Cinematic hardcut.safetensors"
547
  NODE_POWER_LORA = "557"
548
 
549
  # Workflow has two sampler passes; MSR conditioning injected at pass-1
 
646
  "sulphur_fro99": 0.0, "sulphur_v1": 0.0, "vbvr": 0.0,
647
  "dreamly": 0.0, "synth": 0.0, "plora": 0.0,
648
  "singularity": 0.0, "omninft": 0.8, "omninft_bf16": 0.0,
649
+ "better_motion": 0.0, "physics_v2": 0.0, "hardcut": 0.0,
650
  "likeness_strength": 0.9,
651
  "likeness_anchor_strength": 0.5,
652
  "latent_anchor_strength": 0.11,
 
661
  "sulphur_fro99": 0.15, "sulphur_v1": 0.15, "vbvr": 0.5,
662
  "dreamly": 0.6, "synth": 0.0, "plora": 0.0,
663
  "singularity": 0.3, "omninft": 0.8, "omninft_bf16": 0.0,
664
+ "better_motion": 0.0, "physics_v2": 0.0, "hardcut": 0.0,
665
  "likeness_strength": 0.9,
666
  "likeness_anchor_strength": 0.15,
667
  "latent_anchor_strength": 0.08,
 
676
  "sulphur_fro99": 0.15, "sulphur_v1": 0.15, "vbvr": 0.5,
677
  "dreamly": 0.6, "synth": 0.0, "plora": 0.0,
678
  "singularity": 0.3, "omninft": 0.3, "omninft_bf16": 0.0,
679
+ "better_motion": 0.0, "physics_v2": 0.0, "hardcut": 0.0,
680
  "likeness_strength": 0.9,
681
  "likeness_anchor_strength": 0.15,
682
  "latent_anchor_strength": 0.08,
 
692
  "sulphur_fro99": 0.25, "sulphur_v1": 0.20, "vbvr": 0.85,
693
  "dreamly": 0.45, "synth": 0.30, "plora": 0.70,
694
  "singularity": 0.70, "omninft": 1.25, "omninft_bf16": 1.70,
695
+ "better_motion": 0.30, "physics_v2": 0.70, "hardcut": 0.0,
696
  "likeness_strength": 0.35,
697
  "likeness_anchor_strength": 0.72,
698
  "latent_anchor_strength": 0.33,
 
1789
  omninft_bf16_lora_strength: float = 0.0,
1790
  better_motion_lora_strength: float = 0.0,
1791
  physics_v2_lora_strength: float = 0.0,
1792
+ hardcut_lora_strength: float = 0.0,
1793
  sulphur_audio_strength: float = 0.15,
1794
  sulphur_v1_audio_strength: float = 0.15,
1795
  vbvr_audio_strength: float = 0.5,
 
1801
  omninft_bf16_audio_strength: float = 0.0,
1802
  better_motion_audio_strength: float = 0.0,
1803
  physics_v2_audio_strength: float = 0.0,
1804
+ hardcut_audio_strength: float = 0.0,
1805
  cache_at_step: int = 0,
1806
  cache_warmup: int = 400,
1807
  energy_threshold: float = 0.3,
 
1908
  "lora_omninft_bf16": omninft_bf16_lora_strength,
1909
  "lora_better_motion": better_motion_lora_strength,
1910
  "lora_physics_v2": physics_v2_lora_strength,
1911
+ "lora_hardcut": hardcut_lora_strength,
1912
  },
1913
  audio_strengths={
1914
  "lora_sulphur": sulphur_audio_strength,
 
1922
  "lora_omninft_bf16": omninft_bf16_audio_strength,
1923
  "lora_better_motion": better_motion_audio_strength,
1924
  "lora_physics_v2": physics_v2_audio_strength,
1925
+ "lora_hardcut": hardcut_audio_strength,
1926
  },
1927
  )
1928
  workflow[NODE_POSITIVE]["inputs"]["text"] = prompt
 
2070
  "lora_omninft_bf16": OMNINFT_BF16_LORA_FILENAME,
2071
  "lora_better_motion": BETTER_MOTION_LORA_FILENAME,
2072
  "lora_physics_v2": PHYSICS_V2_LORA_FILENAME,
2073
+ "lora_hardcut": HARDCUT_LORA_FILENAME,
2074
  }
2075
 
2076
 
 
2882
  omninft_bf16_lora_strength: float = 0.0,
2883
  better_motion_lora_strength: float = 0.0,
2884
  physics_v2_lora_strength: float = 0.0,
2885
+ hardcut_lora_strength: float = 0.0,
2886
  sulphur_audio_strength: float = 0.15,
2887
  sulphur_v1_audio_strength: float = 0.15,
2888
  vbvr_audio_strength: float = 0.5,
 
2894
  omninft_bf16_audio_strength: float = 0.0,
2895
  better_motion_audio_strength: float = 0.0,
2896
  physics_v2_audio_strength: float = 0.0,
2897
+ hardcut_audio_strength: float = 0.0,
2898
  cache_at_step: int = 0,
2899
  cache_warmup: int = 400,
2900
  energy_threshold: float = 0.3,
 
2975
  omninft_bf16_lora_strength: float = 0.0,
2976
  better_motion_lora_strength: float = 0.0,
2977
  physics_v2_lora_strength: float = 0.0,
2978
+ hardcut_lora_strength: float = 0.0,
2979
  sulphur_audio_strength: float = 0.15,
2980
  sulphur_v1_audio_strength: float = 0.15,
2981
  vbvr_audio_strength: float = 0.5,
 
2987
  omninft_bf16_audio_strength: float = 0.0,
2988
  better_motion_audio_strength: float = 0.0,
2989
  physics_v2_audio_strength: float = 0.0,
2990
+ hardcut_audio_strength: float = 0.0,
2991
  cache_at_step: int = 0,
2992
  cache_warmup: int = 400,
2993
  energy_threshold: float = 0.3,
 
3112
  omninft_bf16_lora_strength=omninft_bf16_lora_strength,
3113
  better_motion_lora_strength=better_motion_lora_strength,
3114
  physics_v2_lora_strength=physics_v2_lora_strength,
3115
+ hardcut_lora_strength=hardcut_lora_strength,
3116
  sulphur_audio_strength=sulphur_audio_strength,
3117
  sulphur_v1_audio_strength=sulphur_v1_audio_strength,
3118
  vbvr_audio_strength=vbvr_audio_strength,
 
3124
  omninft_bf16_audio_strength=omninft_bf16_audio_strength,
3125
  better_motion_audio_strength=better_motion_audio_strength,
3126
  physics_v2_audio_strength=physics_v2_audio_strength,
3127
+ hardcut_audio_strength=hardcut_audio_strength,
3128
  cache_at_step=int(cache_at_step),
3129
  cache_warmup=int(cache_warmup),
3130
  energy_threshold=float(energy_threshold),
 
3172
  f"omninft_bf16={omninft_bf16_lora_strength:.2f}/{omninft_bf16_audio_strength:.2f} "
3173
  f"better_motion={better_motion_lora_strength:.2f}/{better_motion_audio_strength:.2f} "
3174
  f"physics_v2={physics_v2_lora_strength:.2f}/{physics_v2_audio_strength:.2f} "
3175
+ f"hardcut={hardcut_lora_strength:.2f}/{hardcut_audio_strength:.2f} "
3176
  f"likeness={likeness_strength:.2f} "
3177
  f"like_anchor={likeness_anchor_strength:.2f} "
3178
  f"lat_anchor={latent_anchor_strength:.2f} "
 
3253
  gr.update(value=p["omninft_bf16"]),
3254
  gr.update(value=p["better_motion"]),
3255
  gr.update(value=p["physics_v2"]),
3256
+ gr.update(value=p["hardcut"]),
3257
  gr.update(value=p["likeness_strength"]),
3258
  gr.update(value=p["likeness_anchor_strength"]),
3259
  gr.update(value=p["latent_anchor_strength"]),
 
3381
  0.0, 1.0, value=0.0, step=0.05,
3382
  label="physics v2 / mistic (0 = off)",
3383
  )
3384
+ hardcut_lora_strength = gr.Slider(
3385
+ 0.0, 1.0, value=0.0, step=0.05,
3386
+ label="cinematic hardcut (0 = off)",
3387
+ )
3388
  with gr.Row():
3389
  max_width = gr.Slider(512, 1536, value=1120, step=32, label="max width")
3390
  max_height = gr.Slider(512, 1536, value=1344, step=32, label="max height")
 
3507
  0.0, 1.0, value=0.0, step=0.05,
3508
  label="physics v2 / mistic (audio)",
3509
  )
3510
+ hardcut_audio_strength = gr.Slider(
3511
+ 0.0, 1.0, value=0.0, step=0.05,
3512
+ label="cinematic hardcut (audio)",
3513
+ )
3514
  with gr.Accordion("multi-reference settings (MSR)", open=False, visible=False) as msr_settings_acc:
3515
  msr_frame_count = gr.Dropdown(
3516
  [17, 25, 33, 41], value=41,
 
3594
  omninft_bf16_lora_strength,
3595
  better_motion_lora_strength,
3596
  physics_v2_lora_strength,
3597
+ hardcut_lora_strength,
3598
  sulphur_audio_strength,
3599
  sulphur_v1_audio_strength,
3600
  vbvr_audio_strength,
 
3606
  omninft_bf16_audio_strength,
3607
  better_motion_audio_strength,
3608
  physics_v2_audio_strength,
3609
+ hardcut_audio_strength,
3610
  cache_at_step,
3611
  cache_warmup,
3612
  energy_threshold,
 
3654
  sulphur_lora_strength, sulphur_v1_lora_strength, vbvr_lora_strength,
3655
  dreamly_lora_strength, synth_lora_strength, plora_lora_strength,
3656
  singularity_lora_strength, omninft_lora_strength, omninft_bf16_lora_strength,
3657
+ better_motion_lora_strength, physics_v2_lora_strength, hardcut_lora_strength,
3658
  likeness_strength, likeness_anchor_strength, latent_anchor_strength,
3659
  first_frame_strength, anchor_similarity_threshold, energy_threshold,
3660
  cache_warmup, sigma_string,