linoyts HF Staff commited on
Commit
d07b6d1
·
verified ·
1 Parent(s): 79a2d13

Update optimization.py (#3)

Browse files

- Update optimization.py (8dc6c106b60acd3e7a1089f80e31f02d7a789c3a)
- Update app.py (de0bec3971c17324a1f71c8e40b8e9da28546c6d)

Files changed (2) hide show
  1. app.py +6 -15
  2. optimization.py +7 -0
app.py CHANGED
@@ -299,7 +299,7 @@ def update_history(new_image, history):
299
  def use_history_as_input(evt: gr.SelectData, history):
300
  """Sets the selected history image as the new input image."""
301
  if history and evt.index < len(history):
302
- return gr.update(value=history[evt.index])
303
  return gr.update()
304
 
305
  def use_output_as_input(output_image):
@@ -441,16 +441,7 @@ with gr.Blocks(css=css) as demo:
441
  <img src="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-Image/qwen_image_edit_logo.png" alt="Qwen-Image Edit Logo" width="400" style="display: block; margin: 0 auto;">
442
  </div>
443
  """)
444
- gr.Markdown("""
445
- ## Qwen-Image Edit with Outpainting
446
-
447
- Extend your images beyond their original boundaries with intelligent outpainting. The model will generate new content that seamlessly blends with your original image.
448
-
449
- **Tips:**
450
- - Use the preview button to see which areas will be generated before running
451
- - Click on any image in the history to use it as a new input
452
- - Try different alignments to expand your image in specific directions
453
-
454
  [Learn more](https://github.com/QwenLM/Qwen-Image) about the Qwen-Image series.
455
  Try on [Qwen Chat](https://chat.qwen.ai/), or [download model](https://huggingface.co/Qwen/Qwen-Image-Edit) to run locally.
456
  """)
@@ -478,9 +469,9 @@ with gr.Blocks(css=css) as demo:
478
  label="Alignment"
479
  )
480
 
481
- run_button = gr.Button("🎨 Outpaint!", variant="primary")
482
 
483
- with gr.Accordion("⚙️ Outpainting Settings", open=False) as settings_panel:
484
  with gr.Row():
485
  width_slider = gr.Slider(
486
  label="Target Width",
@@ -555,9 +546,9 @@ with gr.Blocks(css=css) as demo:
555
  num_inference_steps = gr.Slider(
556
  label="Number of inference steps",
557
  minimum=1,
558
- maximum=50,
559
  step=1,
560
- value=50,
561
  )
562
 
563
  rewrite_prompt = gr.Checkbox(
 
299
  def use_history_as_input(evt: gr.SelectData, history):
300
  """Sets the selected history image as the new input image."""
301
  if history and evt.index < len(history):
302
+ return gr.update(value=history[evt.index][0])
303
  return gr.update()
304
 
305
  def use_output_as_input(output_image):
 
441
  <img src="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-Image/qwen_image_edit_logo.png" alt="Qwen-Image Edit Logo" width="400" style="display: block; margin: 0 auto;">
442
  </div>
443
  """)
444
+ gr.Markdown("""
 
 
 
 
 
 
 
 
 
445
  [Learn more](https://github.com/QwenLM/Qwen-Image) about the Qwen-Image series.
446
  Try on [Qwen Chat](https://chat.qwen.ai/), or [download model](https://huggingface.co/Qwen/Qwen-Image-Edit) to run locally.
447
  """)
 
469
  label="Alignment"
470
  )
471
 
472
+ run_button = gr.Button("run", variant="primary")
473
 
474
+ with gr.Accordion("Outpainting Settings", open=False) as settings_panel:
475
  with gr.Row():
476
  width_slider = gr.Slider(
477
  label="Target Width",
 
546
  num_inference_steps = gr.Slider(
547
  label="Number of inference steps",
548
  minimum=1,
549
+ maximum=28,
550
  step=1,
551
+ value=8,
552
  )
553
 
554
  rewrite_prompt = gr.Checkbox(
optimization.py CHANGED
@@ -49,6 +49,13 @@ def optimize_pipeline_(pipeline: Callable[P, Any], *args: P.args, **kwargs: P.kw
49
 
50
  @spaces.GPU(duration=1500)
51
  def compile_transformer():
 
 
 
 
 
 
 
52
 
53
  with spaces.aoti_capture(pipeline.transformer) as call:
54
  pipeline(*args, **kwargs)
 
49
 
50
  @spaces.GPU(duration=1500)
51
  def compile_transformer():
52
+
53
+ pipeline.load_lora_weights(
54
+ "lightx2v/Qwen-Image-Lightning",
55
+ weight_name="Qwen-Image-Lightning-8steps-V1.1.safetensors"
56
+ )
57
+ pipeline.fuse_lora()
58
+ pipeline.unload_lora_weights()
59
 
60
  with spaces.aoti_capture(pipeline.transformer) as call:
61
  pipeline(*args, **kwargs)