nateraw commited on
Commit
fd877b6
·
1 Parent(s): d82f852

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -11
app.py CHANGED
@@ -14,18 +14,26 @@ def get_data(revision='main'):
14
  continue
15
  if path.suffix in ['.png', '.jpg', '.jpeg']:
16
  data[path.parent.name].append(file)
17
- print(data.keys())
18
- return data
 
 
 
 
 
 
 
19
 
20
  def on_refresh(data_state):
21
- data = get_data()
22
  data_state.update(dict(data))
23
  return [
24
  data_state,
25
- gr.update(choices=sorted(data_state.keys())),
26
  ]
27
 
28
- def on_submit(run, data):
 
29
  images = [(hf_hub_url(repo_id=repo_id, filename=img, repo_type='dataset'), f"Seed:\n{Path(img).stem}") for img in data[run]]
30
  prompt_config_url = hf_hub_url(
31
  repo_id=repo_id,
@@ -35,15 +43,16 @@ def on_submit(run, data):
35
  prompt_config_json = requests.get(prompt_config_url).json()
36
  return prompt_config_json, images
37
 
38
- runs = list(get_data().keys())
 
39
  with gr.Blocks() as demo:
40
- data_state = gr.State({})
41
  with gr.Column(variant="panel"):
42
  with gr.Row(variant="compact"):
43
  refresh_btn = gr.Button("Refresh").style(full_width=True)
44
 
45
  with gr.Row(variant="compact"):
46
- run = gr.Dropdown(runs) #interactive=True) # .style(container=False)
47
  btn = gr.Button("View images").style(full_width=False)
48
 
49
  with gr.Row(variant="compact"):
@@ -52,7 +61,8 @@ with gr.Blocks() as demo:
52
  label="Generated images", show_label=False, elem_id="gallery"
53
  ).style(grid=[5], height="auto")
54
 
55
- refresh_btn.click(on_refresh, data_state, [data_state, run])
56
- btn.click(on_submit, [run, data_state], [data_json, gallery])
57
 
58
- demo.launch(debug=True)
 
 
14
  continue
15
  if path.suffix in ['.png', '.jpg', '.jpeg']:
16
  data[path.parent.name].append(file)
17
+
18
+ prompts = []
19
+ for key in sorted(data.keys()):
20
+ prompt_cfg_url = hf_hub_url(repo_id=repo_id, filename=f"{key}/prompt_config.json", repo_type='dataset')
21
+ prompt_cfg = requests.get(prompt_cfg_url).json()
22
+ text = prompt_cfg.get('prompt')
23
+ prompts.append(text)
24
+
25
+ return data, prompts
26
 
27
  def on_refresh(data_state):
28
+ data, prompts = get_data()
29
  data_state.update(dict(data))
30
  return [
31
  data_state,
32
+ gr.update(choices=prompts),
33
  ]
34
 
35
+ def on_submit(run_idx, data):
36
+ run = sorted(data.keys())[run_idx]
37
  images = [(hf_hub_url(repo_id=repo_id, filename=img, repo_type='dataset'), f"Seed:\n{Path(img).stem}") for img in data[run]]
38
  prompt_config_url = hf_hub_url(
39
  repo_id=repo_id,
 
43
  prompt_config_json = requests.get(prompt_config_url).json()
44
  return prompt_config_json, images
45
 
46
+ data, prompts = get_data()
47
+ runs = sorted(data.keys())
48
  with gr.Blocks() as demo:
49
+ data_state = gr.State(data)
50
  with gr.Column(variant="panel"):
51
  with gr.Row(variant="compact"):
52
  refresh_btn = gr.Button("Refresh").style(full_width=True)
53
 
54
  with gr.Row(variant="compact"):
55
+ run_idx = gr.Dropdown(prompts, type='index') #interactive=True) # .style(container=False)
56
  btn = gr.Button("View images").style(full_width=False)
57
 
58
  with gr.Row(variant="compact"):
 
61
  label="Generated images", show_label=False, elem_id="gallery"
62
  ).style(grid=[5], height="auto")
63
 
64
+ refresh_btn.click(on_refresh, data_state, [data_state, run_idx])
65
+ btn.click(on_submit, [run_idx, data_state], [data_json, gallery])
66
 
67
+ if __name__ == '__main__':
68
+ demo.launch(debug=True)