bmarci commited on
Commit
cdba24f
·
1 Parent(s): 14637c1

generation

Browse files
Files changed (1) hide show
  1. app.py +14 -23
app.py CHANGED
@@ -11,7 +11,7 @@ from transformers import AutoTokenizer, AutoModel
11
  from models.gen_pipeline import NextStepPipeline
12
  from utils.aspect_ratio import center_crop_arr_with_buckets
13
 
14
- HF_HUB = "stepfun-ai/NextStep-1-Large-Edit"
15
  device = "cuda" if torch.cuda.is_available() else "cpu"
16
 
17
  tokenizer = AutoTokenizer.from_pretrained(HF_HUB, local_files_only=False, trust_remote_code=True)
@@ -30,15 +30,15 @@ def infer(
30
  ref=None,
31
  seed=0,
32
  text_cfg=7.5,
33
- img_cfg=2.0,
34
  num_inference_steps=30,
35
  positive_prompt=DEFAULT_POSITIVE_PROMPT,
36
  negative_prompt=DEFAULT_NEGATIVE_PROMPT,
37
  progress=gr.Progress(track_tqdm=True),
38
  ):
39
- if ref is None:
40
- gr.Warning("⚠️ Please upload an image!")
41
- return None
42
 
43
  if prompt in [None, ""]:
44
  gr.Warning("⚠️ Please enter a prompt!")
@@ -55,8 +55,7 @@ def infer(
55
 
56
  image = pipeline.generate_image(
57
  captions=editing_caption,
58
- images=input_image,
59
- num_images_per_caption=2,
60
  positive_prompt=positive_prompt,
61
  negative_prompt=negative_prompt,
62
  hw=(input_image.size[1], input_image.size[0]),
@@ -69,15 +68,7 @@ def infer(
69
  progress=True,
70
  )
71
 
72
- return image[0], image[1]
73
-
74
-
75
- examples = [
76
- ["Modify the image to make the white horse run towards the camera.", "assets/1.jpg"],
77
- ["Change the background to the sea view.", "assets/2.jpg"],
78
- ["Add a pirate hat to the dog's head. Change the background to a stormy sea with dark clouds. Include the text 'NextStep-Edit' in bold white letters at the top portion of the image.", "assets/3.jpg"],
79
- ["Change to Ghibli style.", "assets/4.jpg"],
80
- ]
81
 
82
  css = """
83
  #col-container {
@@ -102,13 +93,13 @@ with gr.Blocks(css=css) as demo:
102
  run_button = gr.Button("Run", scale=0, variant="primary")
103
 
104
  with gr.Row():
105
- ref = gr.Image(label="Reference Image", show_label=True, type="pil", height=400)
106
 
107
  with gr.Accordion("Advanced Settings", open=True):
108
  positive_prompt = gr.Text(
109
  label="Positive Prompt",
110
  show_label=False,
111
- max_lines=2,
112
  placeholder="Enter your positive prompt",
113
  container=False,
114
  )
@@ -153,9 +144,9 @@ with gr.Blocks(css=css) as demo:
153
 
154
  with gr.Row():
155
  result_1 = gr.Image(label="Result 1", show_label=False, container=True, height=400, visible=False)
156
- result_2 = gr.Image(label="Result 2", show_label=False, container=True, height=400, visible=False)
157
 
158
- gr.Examples(examples=examples, inputs=[prompt, ref])
159
 
160
  def show_result():
161
  return gr.update(visible=True), gr.update(visible=True)
@@ -165,7 +156,7 @@ with gr.Blocks(css=css) as demo:
165
  fn=infer,
166
  inputs=[
167
  prompt,
168
- ref,
169
  seed,
170
  text_cfg,
171
  img_cfg,
@@ -173,13 +164,13 @@ with gr.Blocks(css=css) as demo:
173
  positive_prompt,
174
  negative_prompt,
175
  ],
176
- outputs=[result_1, result_2],
177
  )
178
 
179
  gr.on(
180
  triggers=[run_button.click, prompt.submit],
181
  fn=show_result,
182
- outputs=[result_1, result_2],
183
  )
184
 
185
 
 
11
  from models.gen_pipeline import NextStepPipeline
12
  from utils.aspect_ratio import center_crop_arr_with_buckets
13
 
14
+ HF_HUB = "stepfun-ai/NextStep-1-Large"
15
  device = "cuda" if torch.cuda.is_available() else "cpu"
16
 
17
  tokenizer = AutoTokenizer.from_pretrained(HF_HUB, local_files_only=False, trust_remote_code=True)
 
30
  ref=None,
31
  seed=0,
32
  text_cfg=7.5,
33
+ img_cfg=1.0,
34
  num_inference_steps=30,
35
  positive_prompt=DEFAULT_POSITIVE_PROMPT,
36
  negative_prompt=DEFAULT_NEGATIVE_PROMPT,
37
  progress=gr.Progress(track_tqdm=True),
38
  ):
39
+ #if ref is None:
40
+ # gr.Warning("⚠️ Please upload an image!")
41
+ # return None
42
 
43
  if prompt in [None, ""]:
44
  gr.Warning("⚠️ Please enter a prompt!")
 
55
 
56
  image = pipeline.generate_image(
57
  captions=editing_caption,
58
+ num_images_per_caption=1,
 
59
  positive_prompt=positive_prompt,
60
  negative_prompt=negative_prompt,
61
  hw=(input_image.size[1], input_image.size[0]),
 
68
  progress=True,
69
  )
70
 
71
+ return image[0]
 
 
 
 
 
 
 
 
72
 
73
  css = """
74
  #col-container {
 
93
  run_button = gr.Button("Run", scale=0, variant="primary")
94
 
95
  with gr.Row():
96
+ #ref = gr.Image(label="Reference Image", show_label=True, type="pil", height=400)
97
 
98
  with gr.Accordion("Advanced Settings", open=True):
99
  positive_prompt = gr.Text(
100
  label="Positive Prompt",
101
  show_label=False,
102
+ max_lines=1,
103
  placeholder="Enter your positive prompt",
104
  container=False,
105
  )
 
144
 
145
  with gr.Row():
146
  result_1 = gr.Image(label="Result 1", show_label=False, container=True, height=400, visible=False)
147
+ #result_2 = gr.Image(label="Result 2", show_label=False, container=True, height=400, visible=False)
148
 
149
+ #gr.Examples(examples=examples, inputs=[prompt, ref])
150
 
151
  def show_result():
152
  return gr.update(visible=True), gr.update(visible=True)
 
156
  fn=infer,
157
  inputs=[
158
  prompt,
159
+ #ref,
160
  seed,
161
  text_cfg,
162
  img_cfg,
 
164
  positive_prompt,
165
  negative_prompt,
166
  ],
167
+ outputs=[result_1],
168
  )
169
 
170
  gr.on(
171
  triggers=[run_button.click, prompt.submit],
172
  fn=show_result,
173
+ outputs=[result_1],
174
  )
175
 
176