fffiloni commited on
Commit
a575d82
·
verified ·
1 Parent(s): 18905b7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +41 -21
app.py CHANGED
@@ -1,44 +1,64 @@
1
  import gradio as gr
2
  from main import main
3
  from arguments import parse_args
 
4
 
5
- def generate_image(prompt):
6
  # Set up arguments
7
  args = parse_args()
8
  args.task = "single"
9
  args.prompt = prompt
10
- args.model = "sd-turbo" # or another supported model
 
 
11
  args.cache_dir = "./HF_model_cache"
12
  args.save_dir = "./outputs"
13
  args.save_all_images = True
14
 
15
- # Run the main function
16
- main(args)
 
17
 
18
- settings = (
19
- f"{args.model}{'_' + args.prompt if args.task == 't2i-compbench' else ''}"
20
- f"{'_no-optim' if args.no_optim else ''}_{args.seed if args.task != 'geneval' else ''}"
21
- f"_lr{args.lr}_gc{args.grad_clip}_iter{args.n_iters}"
22
- f"_reg{args.reg_weight if args.enable_reg else '0'}"
23
- f"{'_pickscore' + str(args.pickscore_weighting) if args.enable_pickscore else ''}"
24
- f"{'_clip' + str(args.clip_weighting) if args.enable_clip else ''}"
25
- f"{'_hps' + str(args.hps_weighting) if args.enable_hps else ''}"
26
- f"{'_imagereward' + str(args.imagereward_weighting) if args.enable_imagereward else ''}"
27
- f"{'_aesthetic' + str(args.aesthetic_weighting) if args.enable_aesthetic else ''}"
28
- )
29
 
30
- save_dir = f"{args.save_dir}/{args.task}/{settings}/{args.prompt}"
 
 
 
 
 
 
 
 
31
 
32
- # Return the path to the generated image
33
- return f"{save_dir}/best_image.png"
34
 
35
  # Create Gradio interface
36
  iface = gr.Interface(
37
  fn=generate_image,
38
- inputs="text",
39
- outputs="image",
 
 
 
 
 
 
 
 
40
  title="ReNO Image Generation",
41
- description="Enter a prompt to generate an image using ReNO."
42
  )
43
 
44
  # Launch the app
 
1
  import gradio as gr
2
  from main import main
3
  from arguments import parse_args
4
+ import os
5
 
6
+ def generate_image(prompt, model, num_iterations, learning_rate, progress = gr.Progress(track_tqdm=True)):
7
  # Set up arguments
8
  args = parse_args()
9
  args.task = "single"
10
  args.prompt = prompt
11
+ args.model = model
12
+ args.n_iters = num_iterations
13
+ args.lr = learning_rate
14
  args.cache_dir = "./HF_model_cache"
15
  args.save_dir = "./outputs"
16
  args.save_all_images = True
17
 
18
+ try:
19
+ # Run the main function
20
+ main(args)
21
 
22
+ settings = (
23
+ f"{args.model}{'_' + args.prompt if args.task == 't2i-compbench' else ''}"
24
+ f"{'_no-optim' if args.no_optim else ''}_{args.seed if args.task != 'geneval' else ''}"
25
+ f"_lr{args.lr}_gc{args.grad_clip}_iter{args.n_iters}"
26
+ f"_reg{args.reg_weight if args.enable_reg else '0'}"
27
+ f"{'_pickscore' + str(args.pickscore_weighting) if args.enable_pickscore else ''}"
28
+ f"{'_clip' + str(args.clip_weighting) if args.enable_clip else ''}"
29
+ f"{'_hps' + str(args.hps_weighting) if args.enable_hps else ''}"
30
+ f"{'_imagereward' + str(args.imagereward_weighting) if args.enable_imagereward else ''}"
31
+ f"{'_aesthetic' + str(args.aesthetic_weighting) if args.enable_aesthetic else ''}"
32
+ )
33
 
34
+ save_dir = f"{args.save_dir}/{args.task}/{settings}/{args.prompt}"
35
+
36
+ # Return the path to the generated image
37
+ image_path = f"{save_dir}/best_image.png"
38
+
39
+ if os.path.exists(image_path):
40
+ return image_path, f"Image generated successfully and saved at {image_path}"
41
+ else:
42
+ return None, "Image generation completed, but the file was not found."
43
 
44
+ except Exception as e:
45
+ return None, f"An error occurred: {str(e)}"
46
 
47
  # Create Gradio interface
48
  iface = gr.Interface(
49
  fn=generate_image,
50
+ inputs=[
51
+ gr.Textbox(label="Prompt"),
52
+ gr.Dropdown(["sd-turbo", "sdxl-turbo", "pixart", "hyper-sd"], label="Model"),
53
+ gr.Slider(minimum=10, maximum=100, step=10, value=50, label="Number of Iterations"),
54
+ gr.Slider(minimum=0.1, maximum=10.0, step=0.1, value=5.0, label="Learning Rate"),
55
+ ],
56
+ outputs=[
57
+ gr.Image(type="filepath", label="Generated Image"),
58
+ gr.Textbox(label="Status")
59
+ ],
60
  title="ReNO Image Generation",
61
+ description="Enter a prompt to generate an image using ReNO. Adjust the model and parameters as needed."
62
  )
63
 
64
  # Launch the app