DongfuJiang commited on
Commit
e71f261
2 Parent(s): e753a43 07bbd4d

hf_yZtruYDOvelyyMuWwddHMKzhpTqnHFhYxRMerge branch 'main' of https://huggingface.co/spaces/TIGER-Lab/GenAI-Arena

Browse files
Files changed (36) hide show
  1. .gitignore +2 -0
  2. README.md +3 -2
  3. app.py +3 -3
  4. arena_elo/edition_model_info.json +10 -0
  5. arena_elo/elo_rating/clean_battle_data.py +1 -1
  6. arena_elo/generation_model_info.json +10 -0
  7. arena_elo/results/20240428/clean_battle_image_editing.json +810 -0
  8. arena_elo/results/20240428/elo_results_image_editing.pkl +3 -0
  9. arena_elo/results/20240428/image_editing_leaderboard.csv +8 -0
  10. arena_elo/results/20240501/clean_battle_t2i_generation.json +0 -0
  11. arena_elo/results/20240501/elo_results_t2i_generation.pkl +3 -0
  12. arena_elo/results/20240501/t2i_generation_leaderboard.csv +11 -0
  13. arena_elo/results/20240516/clean_battle_image_editing.json +1578 -0
  14. arena_elo/results/20240516/elo_results_image_editing.pkl +3 -0
  15. arena_elo/results/20240516/image_editing_leaderboard.csv +10 -0
  16. arena_elo/results/20240517/clean_battle_t2i_generation.json +0 -0
  17. arena_elo/results/20240517/elo_results_t2i_generation.pkl +3 -0
  18. arena_elo/results/20240517/t2i_generation_leaderboard.csv +12 -0
  19. arena_elo/results/latest/clean_battle_image_editing.json +712 -40
  20. arena_elo/results/latest/clean_battle_t2i_generation.json +0 -0
  21. arena_elo/results/latest/elo_results_image_editing.pkl +2 -2
  22. arena_elo/results/latest/elo_results_t2i_generation.pkl +2 -2
  23. arena_elo/results/latest/image_editing_leaderboard.csv +9 -7
  24. arena_elo/results/latest/t2i_generation_leaderboard.csv +11 -9
  25. model/fetch_museum_results/__init__.py +58 -0
  26. model/fetch_museum_results/imagen_museum/__init__.py +129 -0
  27. model/model_manager.py +107 -6
  28. model/model_registry.py +25 -25
  29. model/models/__init__.py +4 -3
  30. model/models/fal_api_models.py +25 -3
  31. requirements.txt +11 -1
  32. serve/gradio_web.py +51 -8
  33. serve/gradio_web_image_editing.py +68 -12
  34. serve/gradio_web_video_generation.py +10 -9
  35. serve/utils.py +5 -2
  36. serve/vote_utils.py +451 -42
.gitignore CHANGED
@@ -1,3 +1,5 @@
 
 
1
  # Byte-compiled / optimized / DLL files
2
  __pycache__/
3
  *.py[cod]
 
1
+ checkpoints/
2
+
3
  # Byte-compiled / optimized / DLL files
4
  __pycache__/
5
  *.py[cod]
README.md CHANGED
@@ -9,8 +9,9 @@ app_file: app.py
9
  pinned: false
10
  license: mit
11
  tags:
12
- - arena
13
- - leaderboard
 
14
  ---
15
 
16
  ## Installation
 
9
  pinned: false
10
  license: mit
11
  tags:
12
+ - arena
13
+ - leaderboard
14
+ short_description: Realtime Image/Video Gen AI Arena
15
  ---
16
 
17
  ## Installation
app.py CHANGED
@@ -24,7 +24,7 @@ def build_combine_demo(models, elo_results_file, leaderboard_table_file):
24
  with gr.Tab("Generation Arena (side-by-side)", id=1):
25
  build_side_by_side_ui_named(models)
26
 
27
- with gr.Tab("Generation Direct Chat", id=2):
28
  build_single_model_ui(models, add_promotion_links=True)
29
  if elo_results_file:
30
  with gr.Tab("Generation Leaderboard", id=3):
@@ -38,7 +38,7 @@ def build_combine_demo(models, elo_results_file, leaderboard_table_file):
38
  with gr.Tab("Edition Arena (side-by-side)", id=6):
39
  build_side_by_side_ui_named_ie(models)
40
 
41
- with gr.Tab("Edition Direct Chat", id=7):
42
  build_single_model_ui_ie(models, add_promotion_links=True)
43
  if elo_results_file:
44
  with gr.Tab("Edition Leaderboard", id=8):
@@ -52,7 +52,7 @@ def build_combine_demo(models, elo_results_file, leaderboard_table_file):
52
  with gr.Tab("Video Generation Arena (side-by-side)", id=11):
53
  build_side_by_side_ui_named_vg(models)
54
 
55
- with gr.Tab("Video Generation Direct Chat", id=12):
56
  build_single_model_ui_vg(models, add_promotion_links=True)
57
  if elo_results_file and 'video_generation' in elo_results_file:
58
  with gr.Tab("Video Generation Leaderboard", id=13):
 
24
  with gr.Tab("Generation Arena (side-by-side)", id=1):
25
  build_side_by_side_ui_named(models)
26
 
27
+ with gr.Tab("Generation Playground", id=2): #Direct Chat
28
  build_single_model_ui(models, add_promotion_links=True)
29
  if elo_results_file:
30
  with gr.Tab("Generation Leaderboard", id=3):
 
38
  with gr.Tab("Edition Arena (side-by-side)", id=6):
39
  build_side_by_side_ui_named_ie(models)
40
 
41
+ with gr.Tab("Edition Playground", id=7): #Direct Chat
42
  build_single_model_ui_ie(models, add_promotion_links=True)
43
  if elo_results_file:
44
  with gr.Tab("Edition Leaderboard", id=8):
 
52
  with gr.Tab("Video Generation Arena (side-by-side)", id=11):
53
  build_side_by_side_ui_named_vg(models)
54
 
55
+ with gr.Tab("Video Generation Playground", id=12): #Direct Chat
56
  build_single_model_ui_vg(models, add_promotion_links=True)
57
  if elo_results_file and 'video_generation' in elo_results_file:
58
  with gr.Tab("Video Generation Leaderboard", id=13):
arena_elo/edition_model_info.json CHANGED
@@ -33,5 +33,15 @@
33
  "Link": "https://sde-image-editing.github.io",
34
  "License": "MIT License",
35
  "Organization": "Stanford University"
 
 
 
 
 
 
 
 
 
 
36
  }
37
  }
 
33
  "Link": "https://sde-image-editing.github.io",
34
  "License": "MIT License",
35
  "Organization": "Stanford University"
36
+ },
37
+ "CosXLEdit": {
38
+ "Link": "https://huggingface.co/spaces/multimodalart/cosxl",
39
+ "License": "cosxl-nc-community",
40
+ "Organization": "Stability AI"
41
+ },
42
+ "InfEdit": {
43
+ "Link": "https://huggingface.co/spaces/sled-umich/InfEdit",
44
+ "License": "Apache-2.0",
45
+ "Organization": "University of Michigan, University of California, Berkeley"
46
  }
47
  }
arena_elo/elo_rating/clean_battle_data.py CHANGED
@@ -251,7 +251,7 @@ def clean_battle_data(
251
  print(f"Invalid model names: {_model}")
252
  valid = False
253
  break
254
- if not (platform.lower() in ["playground", "imagenhub"] and task == "generation"):
255
  valid = False
256
  break
257
  if not valid:
 
251
  print(f"Invalid model names: {_model}")
252
  valid = False
253
  break
254
+ if not (platform.lower() in ["playground", "imagenhub", 'fal'] and (task == "generation" or task == "text2image")):
255
  valid = False
256
  break
257
  if not valid:
arena_elo/generation_model_info.json CHANGED
@@ -43,5 +43,15 @@
43
  "Link": "https://huggingface.co/stabilityai/stable-cascade",
44
  "License": "stable-cascade-nc-community (other)",
45
  "Organization": "Stability AI"
 
 
 
 
 
 
 
 
 
 
46
  }
47
  }
 
43
  "Link": "https://huggingface.co/stabilityai/stable-cascade",
44
  "License": "stable-cascade-nc-community (other)",
45
  "Organization": "Stability AI"
46
+ },
47
+ "LCM(v1.5/XL)": {
48
+ "Link": "https://fal.ai/models/fal-ai/fast-lcm-diffusion/api",
49
+ "License": "openrail++",
50
+ "Organization": "Latent Consistency"
51
+ },
52
+ "PixArtSigma": {
53
+ "Link": "https://fal.ai/models/fal-ai/pixart-sigma",
54
+ "License": "openrail++",
55
+ "Organization": "PixArt-alpha"
56
  }
57
  }
arena_elo/results/20240428/clean_battle_image_editing.json ADDED
@@ -0,0 +1,810 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "model_a": "CycleDiffusion",
4
+ "model_b": "InstructPix2Pix",
5
+ "winner": "model_b",
6
+ "judge": "arena_user_::1",
7
+ "anony": true,
8
+ "tstamp": 1707712630.872
9
+ },
10
+ {
11
+ "model_a": "CycleDiffusion",
12
+ "model_b": "InstructPix2Pix",
13
+ "winner": "model_b",
14
+ "judge": "arena_user_::1",
15
+ "anony": false,
16
+ "tstamp": 1707712699.668
17
+ },
18
+ {
19
+ "model_a": "Pix2PixZero",
20
+ "model_b": "MagicBrush",
21
+ "winner": "model_a",
22
+ "judge": "arena_user_::1",
23
+ "anony": true,
24
+ "tstamp": 1707712896.0427
25
+ },
26
+ {
27
+ "model_a": "CycleDiffusion",
28
+ "model_b": "InstructPix2Pix",
29
+ "winner": "model_b",
30
+ "judge": "arena_user_::1",
31
+ "anony": false,
32
+ "tstamp": 1707712929.7061
33
+ },
34
+ {
35
+ "model_a": "CycleDiffusion",
36
+ "model_b": "InstructPix2Pix",
37
+ "winner": "model_b",
38
+ "judge": "arena_user_::1",
39
+ "anony": true,
40
+ "tstamp": 1707713147.0445
41
+ },
42
+ {
43
+ "model_a": "CycleDiffusion",
44
+ "model_b": "PNP",
45
+ "winner": "model_b",
46
+ "judge": "arena_user_::1",
47
+ "anony": true,
48
+ "tstamp": 1707713198.9284
49
+ },
50
+ {
51
+ "model_a": "CycleDiffusion",
52
+ "model_b": "Prompt2prompt",
53
+ "winner": "model_b",
54
+ "judge": "arena_user_::1",
55
+ "anony": true,
56
+ "tstamp": 1707713210.1306
57
+ },
58
+ {
59
+ "model_a": "Prompt2prompt",
60
+ "model_b": "SDEdit",
61
+ "winner": "model_a",
62
+ "judge": "arena_user_::1",
63
+ "anony": true,
64
+ "tstamp": 1707713747.5115
65
+ },
66
+ {
67
+ "model_a": "PNP",
68
+ "model_b": "Pix2PixZero",
69
+ "winner": "model_a",
70
+ "judge": "arena_user_::1",
71
+ "anony": true,
72
+ "tstamp": 1707715613.7226
73
+ },
74
+ {
75
+ "model_a": "CycleDiffusion",
76
+ "model_b": "MagicBrush",
77
+ "winner": "model_b",
78
+ "judge": "arena_user_::1",
79
+ "anony": true,
80
+ "tstamp": 1707765708.2644
81
+ },
82
+ {
83
+ "model_a": "PNP",
84
+ "model_b": "CycleDiffusion",
85
+ "winner": "model_a",
86
+ "judge": "arena_user_::1",
87
+ "anony": true,
88
+ "tstamp": 1707765861.2742
89
+ },
90
+ {
91
+ "model_a": "PNP",
92
+ "model_b": "CycleDiffusion",
93
+ "winner": "model_a",
94
+ "judge": "arena_user_::1",
95
+ "anony": false,
96
+ "tstamp": 1707765975.0206
97
+ },
98
+ {
99
+ "model_a": "PNP",
100
+ "model_b": "CycleDiffusion",
101
+ "winner": "model_a",
102
+ "judge": "arena_user_::1",
103
+ "anony": true,
104
+ "tstamp": 1707768866.9065
105
+ },
106
+ {
107
+ "model_a": "SDEdit",
108
+ "model_b": "MagicBrush",
109
+ "winner": "model_b",
110
+ "judge": "arena_user_::1",
111
+ "anony": true,
112
+ "tstamp": 1707771673.2989
113
+ },
114
+ {
115
+ "model_a": "SDEdit",
116
+ "model_b": "MagicBrush",
117
+ "winner": "model_b",
118
+ "judge": "arena_user_::1",
119
+ "anony": true,
120
+ "tstamp": 1707784377.6617
121
+ },
122
+ {
123
+ "model_a": "SDEdit",
124
+ "model_b": "MagicBrush",
125
+ "winner": "model_b",
126
+ "judge": "arena_user_::1",
127
+ "anony": true,
128
+ "tstamp": 1707784466.8915
129
+ },
130
+ {
131
+ "model_a": "CycleDiffusion",
132
+ "model_b": "PNP",
133
+ "winner": "model_b",
134
+ "judge": "arena_user_::1",
135
+ "anony": true,
136
+ "tstamp": 1707784983.9581
137
+ },
138
+ {
139
+ "model_a": "MagicBrush",
140
+ "model_b": "SDEdit",
141
+ "winner": "model_a",
142
+ "judge": "arena_user_::1",
143
+ "anony": true,
144
+ "tstamp": 1707785277.16
145
+ },
146
+ {
147
+ "model_a": "MagicBrush",
148
+ "model_b": "SDEdit",
149
+ "winner": "model_a",
150
+ "judge": "arena_user_::1",
151
+ "anony": true,
152
+ "tstamp": 1707795299.0619
153
+ },
154
+ {
155
+ "model_a": "MagicBrush",
156
+ "model_b": "SDEdit",
157
+ "winner": "tie (bothbad)",
158
+ "judge": "arena_user_::1",
159
+ "anony": true,
160
+ "tstamp": 1707795798.752
161
+ },
162
+ {
163
+ "model_a": "SDEdit",
164
+ "model_b": "Prompt2prompt",
165
+ "winner": "model_b",
166
+ "judge": "arena_user_::1",
167
+ "anony": false,
168
+ "tstamp": 1707796435.7996
169
+ },
170
+ {
171
+ "model_a": "SDEdit",
172
+ "model_b": "CycleDiffusion",
173
+ "winner": "model_b",
174
+ "judge": "arena_user_::1",
175
+ "anony": false,
176
+ "tstamp": 1707797278.7369
177
+ },
178
+ {
179
+ "model_a": "SDEdit",
180
+ "model_b": "CycleDiffusion",
181
+ "winner": "model_a",
182
+ "judge": "arena_user_::1",
183
+ "anony": false,
184
+ "tstamp": 1707797279.6004
185
+ },
186
+ {
187
+ "model_a": "SDEdit",
188
+ "model_b": "Prompt2prompt",
189
+ "winner": "model_b",
190
+ "judge": "arena_user_::1",
191
+ "anony": true,
192
+ "tstamp": 1707805086.9739
193
+ },
194
+ {
195
+ "model_a": "PNP",
196
+ "model_b": "SDEdit",
197
+ "winner": "model_a",
198
+ "judge": "arena_user_::1",
199
+ "anony": true,
200
+ "tstamp": 1707805220.3253
201
+ },
202
+ {
203
+ "model_a": "InstructPix2Pix",
204
+ "model_b": "CycleDiffusion",
205
+ "winner": "tie (bothbad)",
206
+ "judge": "arena_user_::1",
207
+ "anony": true,
208
+ "tstamp": 1707805332.6322
209
+ },
210
+ {
211
+ "model_a": "InstructPix2Pix",
212
+ "model_b": "Prompt2prompt",
213
+ "winner": "model_b",
214
+ "judge": "arena_user_::1",
215
+ "anony": true,
216
+ "tstamp": 1707805476.0509
217
+ },
218
+ {
219
+ "model_a": "InstructPix2Pix",
220
+ "model_b": "Prompt2prompt",
221
+ "winner": "model_b",
222
+ "judge": "arena_user_::1",
223
+ "anony": true,
224
+ "tstamp": 1707818374.3438
225
+ },
226
+ {
227
+ "model_a": "PNP",
228
+ "model_b": "Prompt2prompt",
229
+ "winner": "model_b",
230
+ "judge": "arena_user_::1",
231
+ "anony": true,
232
+ "tstamp": 1707834631.9088
233
+ },
234
+ {
235
+ "model_a": "InstructPix2Pix",
236
+ "model_b": "SDEdit",
237
+ "winner": "model_a",
238
+ "judge": "arena_user_::1",
239
+ "anony": true,
240
+ "tstamp": 1707834954.0147
241
+ },
242
+ {
243
+ "model_a": "Prompt2prompt",
244
+ "model_b": "Pix2PixZero",
245
+ "winner": "tie (bothbad)",
246
+ "judge": "arena_user_::1",
247
+ "anony": true,
248
+ "tstamp": 1707835366.544
249
+ },
250
+ {
251
+ "model_a": "PNP",
252
+ "model_b": "SDEdit",
253
+ "winner": "model_a",
254
+ "judge": "arena_user_::1",
255
+ "anony": true,
256
+ "tstamp": 1707835643.6178
257
+ },
258
+ {
259
+ "model_a": "MagicBrush",
260
+ "model_b": "InstructPix2Pix",
261
+ "winner": "tie (bothbad)",
262
+ "judge": "arena_user_::1",
263
+ "anony": true,
264
+ "tstamp": 1707835789.25
265
+ },
266
+ {
267
+ "model_a": "MagicBrush",
268
+ "model_b": "PNP",
269
+ "winner": "tie (bothbad)",
270
+ "judge": "arena_user_::1",
271
+ "anony": true,
272
+ "tstamp": 1707836852.671
273
+ },
274
+ {
275
+ "model_a": "MagicBrush",
276
+ "model_b": "InstructPix2Pix",
277
+ "winner": "model_a",
278
+ "judge": "arena_user_::1",
279
+ "anony": false,
280
+ "tstamp": 1707836952.6082
281
+ },
282
+ {
283
+ "model_a": "CycleDiffusion",
284
+ "model_b": "SDEdit",
285
+ "winner": "tie (bothbad)",
286
+ "judge": "arena_user_::1",
287
+ "anony": false,
288
+ "tstamp": 1707837020.7148
289
+ },
290
+ {
291
+ "model_a": "InstructPix2Pix",
292
+ "model_b": "PNP",
293
+ "winner": "model_a",
294
+ "judge": "arena_user_::1",
295
+ "anony": true,
296
+ "tstamp": 1707837226.2259
297
+ },
298
+ {
299
+ "model_a": "Prompt2prompt",
300
+ "model_b": "Pix2PixZero",
301
+ "winner": "model_a",
302
+ "judge": "arena_user_::1",
303
+ "anony": true,
304
+ "tstamp": 1707838166.1449
305
+ },
306
+ {
307
+ "model_a": "InstructPix2Pix",
308
+ "model_b": "MagicBrush",
309
+ "winner": "tie (bothbad)",
310
+ "judge": "arena_user_::1",
311
+ "anony": true,
312
+ "tstamp": 1707838405.0013
313
+ },
314
+ {
315
+ "model_a": "MagicBrush",
316
+ "model_b": "CycleDiffusion",
317
+ "winner": "model_a",
318
+ "judge": "arena_user_::1",
319
+ "anony": true,
320
+ "tstamp": 1707839133.3126
321
+ },
322
+ {
323
+ "model_a": "Prompt2prompt",
324
+ "model_b": "InstructPix2Pix",
325
+ "winner": "model_a",
326
+ "judge": "arena_user_::1",
327
+ "anony": true,
328
+ "tstamp": 1707839484.6824
329
+ },
330
+ {
331
+ "model_a": "PNP",
332
+ "model_b": "InstructPix2Pix",
333
+ "winner": "tie (bothbad)",
334
+ "judge": "arena_user_::1",
335
+ "anony": true,
336
+ "tstamp": 1707850104.2499
337
+ },
338
+ {
339
+ "model_a": "InstructPix2Pix",
340
+ "model_b": "Pix2PixZero",
341
+ "winner": "model_a",
342
+ "judge": "arena_user_::1",
343
+ "anony": true,
344
+ "tstamp": 1707851384.7689
345
+ },
346
+ {
347
+ "model_a": "PNP",
348
+ "model_b": "MagicBrush",
349
+ "winner": "model_b",
350
+ "judge": "arena_user_::1",
351
+ "anony": true,
352
+ "tstamp": 1707851936.9466
353
+ },
354
+ {
355
+ "model_a": "CycleDiffusion",
356
+ "model_b": "MagicBrush",
357
+ "winner": "tie (bothbad)",
358
+ "judge": "arena_user_::1",
359
+ "anony": true,
360
+ "tstamp": 1707852836.3291
361
+ },
362
+ {
363
+ "model_a": "CycleDiffusion",
364
+ "model_b": "MagicBrush",
365
+ "winner": "tie (bothbad)",
366
+ "judge": "arena_user_::1",
367
+ "anony": false,
368
+ "tstamp": 1707852878.673
369
+ },
370
+ {
371
+ "model_a": "Prompt2prompt",
372
+ "model_b": "InstructPix2Pix",
373
+ "winner": "model_a",
374
+ "judge": "arena_user_::1",
375
+ "anony": true,
376
+ "tstamp": 1707853008.1359
377
+ },
378
+ {
379
+ "model_a": "InstructPix2Pix",
380
+ "model_b": "Pix2PixZero",
381
+ "winner": "model_a",
382
+ "judge": "arena_user_::1",
383
+ "anony": false,
384
+ "tstamp": 1707856807.6229
385
+ },
386
+ {
387
+ "model_a": "MagicBrush",
388
+ "model_b": "Pix2PixZero",
389
+ "winner": "tie (bothbad)",
390
+ "judge": "arena_user_::1",
391
+ "anony": false,
392
+ "tstamp": 1707863740.3507
393
+ },
394
+ {
395
+ "model_a": "MagicBrush",
396
+ "model_b": "PNP",
397
+ "winner": "model_b",
398
+ "judge": "arena_user_::1",
399
+ "anony": true,
400
+ "tstamp": 1707866312.1118
401
+ },
402
+ {
403
+ "model_a": "Pix2PixZero",
404
+ "model_b": "Prompt2prompt",
405
+ "winner": "model_b",
406
+ "judge": "arena_user_::1",
407
+ "anony": true,
408
+ "tstamp": 1707883083.3533
409
+ },
410
+ {
411
+ "model_a": "Pix2PixZero",
412
+ "model_b": "InstructPix2Pix",
413
+ "winner": "model_b",
414
+ "judge": "arena_user_::1",
415
+ "anony": true,
416
+ "tstamp": 1707883181.1397
417
+ },
418
+ {
419
+ "model_a": "Pix2PixZero",
420
+ "model_b": "Prompt2prompt",
421
+ "winner": "model_b",
422
+ "judge": "arena_user_::1",
423
+ "anony": true,
424
+ "tstamp": 1707883187.9173
425
+ },
426
+ {
427
+ "model_a": "PNP",
428
+ "model_b": "Prompt2prompt",
429
+ "winner": "model_a",
430
+ "judge": "arena_user_::1",
431
+ "anony": true,
432
+ "tstamp": 1707883507.587
433
+ },
434
+ {
435
+ "model_a": "Prompt2prompt",
436
+ "model_b": "CycleDiffusion",
437
+ "winner": "model_a",
438
+ "judge": "arena_user_::1",
439
+ "anony": true,
440
+ "tstamp": 1707883939.6125
441
+ },
442
+ {
443
+ "model_a": "Prompt2prompt",
444
+ "model_b": "MagicBrush",
445
+ "winner": "model_b",
446
+ "judge": "arena_user_::1",
447
+ "anony": true,
448
+ "tstamp": 1707892689.4407
449
+ },
450
+ {
451
+ "model_a": "MagicBrush",
452
+ "model_b": "InstructPix2Pix",
453
+ "winner": "model_b",
454
+ "judge": "arena_user_::1",
455
+ "anony": true,
456
+ "tstamp": 1707908988.749
457
+ },
458
+ {
459
+ "model_a": "Prompt2prompt",
460
+ "model_b": "InstructPix2Pix",
461
+ "winner": "model_a",
462
+ "judge": "arena_user_::1",
463
+ "anony": true,
464
+ "tstamp": 1707912639.2701
465
+ },
466
+ {
467
+ "model_a": "MagicBrush",
468
+ "model_b": "Pix2PixZero",
469
+ "winner": "model_a",
470
+ "judge": "arena_user_::1",
471
+ "anony": false,
472
+ "tstamp": 1707917685.9574
473
+ },
474
+ {
475
+ "model_a": "MagicBrush",
476
+ "model_b": "InstructPix2Pix",
477
+ "winner": "tie (bothbad)",
478
+ "judge": "arena_user_::1",
479
+ "anony": false,
480
+ "tstamp": 1707919429.336
481
+ },
482
+ {
483
+ "model_a": "InstructPix2Pix",
484
+ "model_b": "CycleDiffusion",
485
+ "winner": "model_a",
486
+ "judge": "arena_user_::1",
487
+ "anony": true,
488
+ "tstamp": 1707932651.9192
489
+ },
490
+ {
491
+ "model_a": "MagicBrush",
492
+ "model_b": "InstructPix2Pix",
493
+ "winner": "model_a",
494
+ "judge": "arena_user_::1",
495
+ "anony": true,
496
+ "tstamp": 1707932749.3107
497
+ },
498
+ {
499
+ "model_a": "Prompt2prompt",
500
+ "model_b": "PNP",
501
+ "winner": "model_a",
502
+ "judge": "arena_user_::1",
503
+ "anony": true,
504
+ "tstamp": 1707933208.5797
505
+ },
506
+ {
507
+ "model_a": "MagicBrush",
508
+ "model_b": "Pix2PixZero",
509
+ "winner": "model_a",
510
+ "judge": "arena_user_::1",
511
+ "anony": false,
512
+ "tstamp": 1707945335.6341
513
+ },
514
+ {
515
+ "model_a": "MagicBrush",
516
+ "model_b": "PNP",
517
+ "winner": "model_a",
518
+ "judge": "arena_user_::1",
519
+ "anony": false,
520
+ "tstamp": 1708031168.6838
521
+ },
522
+ {
523
+ "model_a": "Pix2PixZero",
524
+ "model_b": "PNP",
525
+ "winner": "model_b",
526
+ "judge": "arena_user_::1",
527
+ "anony": false,
528
+ "tstamp": 1708038931.5388
529
+ },
530
+ {
531
+ "model_a": "Pix2PixZero",
532
+ "model_b": "CycleDiffusion",
533
+ "winner": "tie (bothbad)",
534
+ "judge": "arena_user_::1",
535
+ "anony": true,
536
+ "tstamp": 1708057382.78
537
+ },
538
+ {
539
+ "model_a": "PNP",
540
+ "model_b": "InstructPix2Pix",
541
+ "winner": "model_b",
542
+ "judge": "arena_user_::1",
543
+ "anony": true,
544
+ "tstamp": 1708093689.8237
545
+ },
546
+ {
547
+ "model_a": "MagicBrush",
548
+ "model_b": "PNP",
549
+ "winner": "model_b",
550
+ "judge": "arena_user_::1",
551
+ "anony": true,
552
+ "tstamp": 1708093910.4683
553
+ },
554
+ {
555
+ "model_a": "Pix2PixZero",
556
+ "model_b": "Prompt2prompt",
557
+ "winner": "model_b",
558
+ "judge": "arena_user_::1",
559
+ "anony": false,
560
+ "tstamp": 1708095090.8232
561
+ },
562
+ {
563
+ "model_a": "Pix2PixZero",
564
+ "model_b": "Prompt2prompt",
565
+ "winner": "model_a",
566
+ "judge": "arena_user_::1",
567
+ "anony": false,
568
+ "tstamp": 1708095305.4665
569
+ },
570
+ {
571
+ "model_a": "InstructPix2Pix",
572
+ "model_b": "Prompt2prompt",
573
+ "winner": "model_b",
574
+ "judge": "arena_user_::1",
575
+ "anony": true,
576
+ "tstamp": 1708140553.1694
577
+ },
578
+ {
579
+ "model_a": "MagicBrush",
580
+ "model_b": "Prompt2prompt",
581
+ "winner": "model_a",
582
+ "judge": "arena_user_::1",
583
+ "anony": true,
584
+ "tstamp": 1708145512.3656
585
+ },
586
+ {
587
+ "model_a": "Pix2PixZero",
588
+ "model_b": "Prompt2prompt",
589
+ "winner": "tie (bothbad)",
590
+ "judge": "arena_user_::1",
591
+ "anony": true,
592
+ "tstamp": 1708145724.4127
593
+ },
594
+ {
595
+ "model_a": "Pix2PixZero",
596
+ "model_b": "PNP",
597
+ "winner": "model_b",
598
+ "judge": "arena_user_::1",
599
+ "anony": true,
600
+ "tstamp": 1708146846.5098
601
+ },
602
+ {
603
+ "model_a": "PNP",
604
+ "model_b": "MagicBrush",
605
+ "winner": "model_a",
606
+ "judge": "arena_user_::1",
607
+ "anony": true,
608
+ "tstamp": 1708189738.4864
609
+ },
610
+ {
611
+ "model_a": "Prompt2prompt",
612
+ "model_b": "InstructPix2Pix",
613
+ "winner": "model_b",
614
+ "judge": "arena_user_::1",
615
+ "anony": true,
616
+ "tstamp": 1708235874.9246
617
+ },
618
+ {
619
+ "model_a": "Pix2PixZero",
620
+ "model_b": "PNP",
621
+ "winner": "model_b",
622
+ "judge": "arena_user_::1",
623
+ "anony": false,
624
+ "tstamp": 1708257619.7115
625
+ },
626
+ {
627
+ "model_a": "MagicBrush",
628
+ "model_b": "Pix2PixZero",
629
+ "winner": "tie (bothbad)",
630
+ "judge": "arena_user_::1",
631
+ "anony": true,
632
+ "tstamp": 1708341265.7655
633
+ },
634
+ {
635
+ "model_a": "MagicBrush",
636
+ "model_b": "InstructPix2Pix",
637
+ "winner": "model_b",
638
+ "judge": "arena_user_::1",
639
+ "anony": true,
640
+ "tstamp": 1708350183.3086
641
+ },
642
+ {
643
+ "model_a": "MagicBrush",
644
+ "model_b": "Pix2PixZero",
645
+ "winner": "tie (bothbad)",
646
+ "judge": "arena_user_::1",
647
+ "anony": true,
648
+ "tstamp": 1708399707.1681
649
+ },
650
+ {
651
+ "model_a": "PNP",
652
+ "model_b": "MagicBrush",
653
+ "winner": "model_a",
654
+ "judge": "arena_user_::1",
655
+ "anony": true,
656
+ "tstamp": 1708441502.4707
657
+ },
658
+ {
659
+ "model_a": "InstructPix2Pix",
660
+ "model_b": "MagicBrush",
661
+ "winner": "model_a",
662
+ "judge": "arena_user_::1",
663
+ "anony": true,
664
+ "tstamp": 1708441716.8195
665
+ },
666
+ {
667
+ "model_a": "InstructPix2Pix",
668
+ "model_b": "MagicBrush",
669
+ "winner": "model_b",
670
+ "judge": "arena_user_::1",
671
+ "anony": false,
672
+ "tstamp": 1708546759.2009
673
+ },
674
+ {
675
+ "model_a": "InstructPix2Pix",
676
+ "model_b": "MagicBrush",
677
+ "winner": "model_a",
678
+ "judge": "arena_user_::1",
679
+ "anony": false,
680
+ "tstamp": 1708546805.4892
681
+ },
682
+ {
683
+ "model_a": "Pix2PixZero",
684
+ "model_b": "CycleDiffusion",
685
+ "winner": "tie (bothbad)",
686
+ "judge": "arena_user_::1",
687
+ "anony": true,
688
+ "tstamp": 1708547082.7124
689
+ },
690
+ {
691
+ "model_a": "InstructPix2Pix",
692
+ "model_b": "MagicBrush",
693
+ "winner": "model_b",
694
+ "judge": "arena_user_::1",
695
+ "anony": false,
696
+ "tstamp": 1708547166.9685
697
+ },
698
+ {
699
+ "model_a": "InstructPix2Pix",
700
+ "model_b": "MagicBrush",
701
+ "winner": "model_b",
702
+ "judge": "arena_user_::1",
703
+ "anony": false,
704
+ "tstamp": 1708547293.7107
705
+ },
706
+ {
707
+ "model_a": "CycleDiffusion",
708
+ "model_b": "PNP",
709
+ "winner": "tie (bothbad)",
710
+ "judge": "arena_user_::1",
711
+ "anony": true,
712
+ "tstamp": 1708575046.0529
713
+ },
714
+ {
715
+ "model_a": "CycleDiffusion",
716
+ "model_b": "MagicBrush",
717
+ "winner": "tie (bothbad)",
718
+ "judge": "arena_user_::1",
719
+ "anony": true,
720
+ "tstamp": 1708615466.9264
721
+ },
722
+ {
723
+ "model_a": "CycleDiffusion",
724
+ "model_b": "MagicBrush",
725
+ "winner": "model_b",
726
+ "judge": "arena_user_::1",
727
+ "anony": false,
728
+ "tstamp": 1708615516.3341
729
+ },
730
+ {
731
+ "model_a": "InstructPix2Pix",
732
+ "model_b": "PNP",
733
+ "winner": "model_b",
734
+ "judge": "arena_user_::1",
735
+ "anony": false,
736
+ "tstamp": 1709205399.0098
737
+ },
738
+ {
739
+ "model_a": "InstructPix2Pix",
740
+ "model_b": "PNP",
741
+ "winner": "model_b",
742
+ "judge": "arena_user_::1",
743
+ "anony": false,
744
+ "tstamp": 1709205767.8923
745
+ },
746
+ {
747
+ "model_a": "PNP",
748
+ "model_b": "InstructPix2Pix",
749
+ "winner": "model_b",
750
+ "judge": "arena_user_::1",
751
+ "anony": true,
752
+ "tstamp": 1709443700.05
753
+ },
754
+ {
755
+ "model_a": "MagicBrush",
756
+ "model_b": "Pix2PixZero",
757
+ "winner": "model_a",
758
+ "judge": "arena_user_::1",
759
+ "anony": true,
760
+ "tstamp": 1709702898.9291
761
+ },
762
+ {
763
+ "model_a": "CycleDiffusion",
764
+ "model_b": "Prompt2prompt",
765
+ "winner": "tie (bothbad)",
766
+ "judge": "arena_user_::1",
767
+ "anony": true,
768
+ "tstamp": 1710091925.1861
769
+ },
770
+ {
771
+ "model_a": "MagicBrush",
772
+ "model_b": "InstructPix2Pix",
773
+ "winner": "tie (bothbad)",
774
+ "judge": "arena_user_::1",
775
+ "anony": true,
776
+ "tstamp": 1710517781.1525
777
+ },
778
+ {
779
+ "model_a": "MagicBrush",
780
+ "model_b": "InstructPix2Pix",
781
+ "winner": "tie (bothbad)",
782
+ "judge": "arena_user_::1",
783
+ "anony": false,
784
+ "tstamp": 1710517859.2942
785
+ },
786
+ {
787
+ "model_a": "Pix2PixZero",
788
+ "model_b": "CycleDiffusion",
789
+ "winner": "tie (bothbad)",
790
+ "judge": "arena_user_::1",
791
+ "anony": true,
792
+ "tstamp": 1710535672.9791
793
+ },
794
+ {
795
+ "model_a": "InfEdit",
796
+ "model_b": "MagicBrush",
797
+ "winner": "model_a",
798
+ "judge": "arena_user_10.16.25.191",
799
+ "anony": false,
800
+ "tstamp": 1714359818.6646
801
+ },
802
+ {
803
+ "model_a": "InstructPix2Pix",
804
+ "model_b": "Prompt2prompt",
805
+ "winner": "tie (bothbad)",
806
+ "judge": "arena_user_10.16.25.191",
807
+ "anony": true,
808
+ "tstamp": 1714363016.9972
809
+ }
810
+ ]
arena_elo/results/20240428/elo_results_image_editing.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c1b4f1daab3429c7656eb8b3b2128a127480fa8212b17a1a98207884d7ce7a9f
3
+ size 58442
arena_elo/results/20240428/image_editing_leaderboard.csv ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ Prompt2prompt,Prompt2prompt,1224.5951620965877,1133.887231157847,Apache-2.0,"Google, Tel Aviv University",https://prompt-to-prompt.github.io
3
+ InstructPix2Pix,InstructPix2Pix,1162.3591990023222,1059.7394666236296,"Copyright 2023 Timothy Brooks, Aleksander Holynski, Alexei A. Efros","University of California, Berkeley",https://www.timothybrooks.com/instruct-pix2pix
4
+ PNP,PNP,1142.872221219748,1117.461082043853,-,Weizmann Institute of Science,https://github.com/MichalGeyer/plug-and-play
5
+ MagicBrush,MagicBrush,1053.6353139288728,1055.6074426532264,CC-BY-4.0,"The Ohio State University, University of Waterloo",https://osu-nlp-group.github.io/MagicBrush
6
+ Pix2PixZero,Pix2PixZero,918.4266240422415,853.535635519584,MIT License,"Carnegie Mellon University, Adobe Research",https://pix2pixzero.github.io
7
+ CycleDiffusion,CycleDiffusion,865.2495984976465,775.6226309361784,X11,Carnegie Mellon University,https://github.com/ChenWu98/cycle-diffusion
8
+ SDEdit,SDEdit,632.8618812125814,680.2047869803968,MIT License,Stanford University,https://sde-image-editing.github.io
arena_elo/results/20240501/clean_battle_t2i_generation.json ADDED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/20240501/elo_results_t2i_generation.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9b79d128ba01570bc59c5f48e1c0640f2541817ce1a77abb3e16131884288b1a
3
+ size 65313
arena_elo/results/20240501/t2i_generation_leaderboard.csv ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ PlayGround V2.5,PlayGround V2.5,1157.785440865029,1197.7936802344343,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
+ StableCascade,StableCascade,1116.6696847615349,1116.9442071854512,stable-cascade-nc-community (other),Stability AI,https://huggingface.co/stabilityai/stable-cascade
4
+ PlayGround V2,PlayGround V2,1110.1291971452683,1120.6591618464581,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
5
+ PixArtAlpha,PixArtAlpha,1042.1316579959862,1040.3305680293547,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
6
+ SDXLLightning,SDXLLightning,1036.0784815928241,1056.600050803737,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
7
+ SDXL,SDXL,987.5686859787551,1003.0595102032345,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
8
+ PixArtSigma,PixArtSigma,948.0067582557859,961.4040676622378,N/A,N/A,N/A
9
+ SDXLTurbo,SDXLTurbo,931.094996526404,945.5610964234802,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
10
+ OpenJourney,OpenJourney,855.7449360962327,860.1159058283633,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
11
+ LCM,LCM,814.7901607821794,840.5627577743975,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7
arena_elo/results/20240516/clean_battle_image_editing.json ADDED
@@ -0,0 +1,1578 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "model_a": "CycleDiffusion",
4
+ "model_b": "InstructPix2Pix",
5
+ "winner": "model_b",
6
+ "judge": "arena_user_::1",
7
+ "anony": true,
8
+ "tstamp": 1707712630.872
9
+ },
10
+ {
11
+ "model_a": "CycleDiffusion",
12
+ "model_b": "InstructPix2Pix",
13
+ "winner": "model_b",
14
+ "judge": "arena_user_::1",
15
+ "anony": false,
16
+ "tstamp": 1707712699.668
17
+ },
18
+ {
19
+ "model_a": "Pix2PixZero",
20
+ "model_b": "MagicBrush",
21
+ "winner": "model_a",
22
+ "judge": "arena_user_::1",
23
+ "anony": true,
24
+ "tstamp": 1707712896.0427
25
+ },
26
+ {
27
+ "model_a": "CycleDiffusion",
28
+ "model_b": "InstructPix2Pix",
29
+ "winner": "model_b",
30
+ "judge": "arena_user_::1",
31
+ "anony": false,
32
+ "tstamp": 1707712929.7061
33
+ },
34
+ {
35
+ "model_a": "CycleDiffusion",
36
+ "model_b": "InstructPix2Pix",
37
+ "winner": "model_b",
38
+ "judge": "arena_user_::1",
39
+ "anony": true,
40
+ "tstamp": 1707713147.0445
41
+ },
42
+ {
43
+ "model_a": "CycleDiffusion",
44
+ "model_b": "PNP",
45
+ "winner": "model_b",
46
+ "judge": "arena_user_::1",
47
+ "anony": true,
48
+ "tstamp": 1707713198.9284
49
+ },
50
+ {
51
+ "model_a": "CycleDiffusion",
52
+ "model_b": "Prompt2prompt",
53
+ "winner": "model_b",
54
+ "judge": "arena_user_::1",
55
+ "anony": true,
56
+ "tstamp": 1707713210.1306
57
+ },
58
+ {
59
+ "model_a": "Prompt2prompt",
60
+ "model_b": "SDEdit",
61
+ "winner": "model_a",
62
+ "judge": "arena_user_::1",
63
+ "anony": true,
64
+ "tstamp": 1707713747.5115
65
+ },
66
+ {
67
+ "model_a": "PNP",
68
+ "model_b": "Pix2PixZero",
69
+ "winner": "model_a",
70
+ "judge": "arena_user_::1",
71
+ "anony": true,
72
+ "tstamp": 1707715613.7226
73
+ },
74
+ {
75
+ "model_a": "CycleDiffusion",
76
+ "model_b": "MagicBrush",
77
+ "winner": "model_b",
78
+ "judge": "arena_user_::1",
79
+ "anony": true,
80
+ "tstamp": 1707765708.2644
81
+ },
82
+ {
83
+ "model_a": "PNP",
84
+ "model_b": "CycleDiffusion",
85
+ "winner": "model_a",
86
+ "judge": "arena_user_::1",
87
+ "anony": true,
88
+ "tstamp": 1707765861.2742
89
+ },
90
+ {
91
+ "model_a": "PNP",
92
+ "model_b": "CycleDiffusion",
93
+ "winner": "model_a",
94
+ "judge": "arena_user_::1",
95
+ "anony": false,
96
+ "tstamp": 1707765975.0206
97
+ },
98
+ {
99
+ "model_a": "PNP",
100
+ "model_b": "CycleDiffusion",
101
+ "winner": "model_a",
102
+ "judge": "arena_user_::1",
103
+ "anony": true,
104
+ "tstamp": 1707768866.9065
105
+ },
106
+ {
107
+ "model_a": "SDEdit",
108
+ "model_b": "MagicBrush",
109
+ "winner": "model_b",
110
+ "judge": "arena_user_::1",
111
+ "anony": true,
112
+ "tstamp": 1707771673.2989
113
+ },
114
+ {
115
+ "model_a": "SDEdit",
116
+ "model_b": "MagicBrush",
117
+ "winner": "model_b",
118
+ "judge": "arena_user_::1",
119
+ "anony": true,
120
+ "tstamp": 1707784377.6617
121
+ },
122
+ {
123
+ "model_a": "SDEdit",
124
+ "model_b": "MagicBrush",
125
+ "winner": "model_b",
126
+ "judge": "arena_user_::1",
127
+ "anony": true,
128
+ "tstamp": 1707784466.8915
129
+ },
130
+ {
131
+ "model_a": "CycleDiffusion",
132
+ "model_b": "PNP",
133
+ "winner": "model_b",
134
+ "judge": "arena_user_::1",
135
+ "anony": true,
136
+ "tstamp": 1707784983.9581
137
+ },
138
+ {
139
+ "model_a": "MagicBrush",
140
+ "model_b": "SDEdit",
141
+ "winner": "model_a",
142
+ "judge": "arena_user_::1",
143
+ "anony": true,
144
+ "tstamp": 1707785277.16
145
+ },
146
+ {
147
+ "model_a": "MagicBrush",
148
+ "model_b": "SDEdit",
149
+ "winner": "model_a",
150
+ "judge": "arena_user_::1",
151
+ "anony": true,
152
+ "tstamp": 1707795299.0619
153
+ },
154
+ {
155
+ "model_a": "MagicBrush",
156
+ "model_b": "SDEdit",
157
+ "winner": "tie (bothbad)",
158
+ "judge": "arena_user_::1",
159
+ "anony": true,
160
+ "tstamp": 1707795798.752
161
+ },
162
+ {
163
+ "model_a": "SDEdit",
164
+ "model_b": "Prompt2prompt",
165
+ "winner": "model_b",
166
+ "judge": "arena_user_::1",
167
+ "anony": false,
168
+ "tstamp": 1707796435.7996
169
+ },
170
+ {
171
+ "model_a": "SDEdit",
172
+ "model_b": "CycleDiffusion",
173
+ "winner": "model_b",
174
+ "judge": "arena_user_::1",
175
+ "anony": false,
176
+ "tstamp": 1707797278.7369
177
+ },
178
+ {
179
+ "model_a": "SDEdit",
180
+ "model_b": "CycleDiffusion",
181
+ "winner": "model_a",
182
+ "judge": "arena_user_::1",
183
+ "anony": false,
184
+ "tstamp": 1707797279.6004
185
+ },
186
+ {
187
+ "model_a": "SDEdit",
188
+ "model_b": "Prompt2prompt",
189
+ "winner": "model_b",
190
+ "judge": "arena_user_::1",
191
+ "anony": true,
192
+ "tstamp": 1707805086.9739
193
+ },
194
+ {
195
+ "model_a": "PNP",
196
+ "model_b": "SDEdit",
197
+ "winner": "model_a",
198
+ "judge": "arena_user_::1",
199
+ "anony": true,
200
+ "tstamp": 1707805220.3253
201
+ },
202
+ {
203
+ "model_a": "InstructPix2Pix",
204
+ "model_b": "CycleDiffusion",
205
+ "winner": "tie (bothbad)",
206
+ "judge": "arena_user_::1",
207
+ "anony": true,
208
+ "tstamp": 1707805332.6322
209
+ },
210
+ {
211
+ "model_a": "InstructPix2Pix",
212
+ "model_b": "Prompt2prompt",
213
+ "winner": "model_b",
214
+ "judge": "arena_user_::1",
215
+ "anony": true,
216
+ "tstamp": 1707805476.0509
217
+ },
218
+ {
219
+ "model_a": "InstructPix2Pix",
220
+ "model_b": "Prompt2prompt",
221
+ "winner": "model_b",
222
+ "judge": "arena_user_::1",
223
+ "anony": true,
224
+ "tstamp": 1707818374.3438
225
+ },
226
+ {
227
+ "model_a": "PNP",
228
+ "model_b": "Prompt2prompt",
229
+ "winner": "model_b",
230
+ "judge": "arena_user_::1",
231
+ "anony": true,
232
+ "tstamp": 1707834631.9088
233
+ },
234
+ {
235
+ "model_a": "InstructPix2Pix",
236
+ "model_b": "SDEdit",
237
+ "winner": "model_a",
238
+ "judge": "arena_user_::1",
239
+ "anony": true,
240
+ "tstamp": 1707834954.0147
241
+ },
242
+ {
243
+ "model_a": "Prompt2prompt",
244
+ "model_b": "Pix2PixZero",
245
+ "winner": "tie (bothbad)",
246
+ "judge": "arena_user_::1",
247
+ "anony": true,
248
+ "tstamp": 1707835366.544
249
+ },
250
+ {
251
+ "model_a": "PNP",
252
+ "model_b": "SDEdit",
253
+ "winner": "model_a",
254
+ "judge": "arena_user_::1",
255
+ "anony": true,
256
+ "tstamp": 1707835643.6178
257
+ },
258
+ {
259
+ "model_a": "MagicBrush",
260
+ "model_b": "InstructPix2Pix",
261
+ "winner": "tie (bothbad)",
262
+ "judge": "arena_user_::1",
263
+ "anony": true,
264
+ "tstamp": 1707835789.25
265
+ },
266
+ {
267
+ "model_a": "MagicBrush",
268
+ "model_b": "PNP",
269
+ "winner": "tie (bothbad)",
270
+ "judge": "arena_user_::1",
271
+ "anony": true,
272
+ "tstamp": 1707836852.671
273
+ },
274
+ {
275
+ "model_a": "MagicBrush",
276
+ "model_b": "InstructPix2Pix",
277
+ "winner": "model_a",
278
+ "judge": "arena_user_::1",
279
+ "anony": false,
280
+ "tstamp": 1707836952.6082
281
+ },
282
+ {
283
+ "model_a": "CycleDiffusion",
284
+ "model_b": "SDEdit",
285
+ "winner": "tie (bothbad)",
286
+ "judge": "arena_user_::1",
287
+ "anony": false,
288
+ "tstamp": 1707837020.7148
289
+ },
290
+ {
291
+ "model_a": "InstructPix2Pix",
292
+ "model_b": "PNP",
293
+ "winner": "model_a",
294
+ "judge": "arena_user_::1",
295
+ "anony": true,
296
+ "tstamp": 1707837226.2259
297
+ },
298
+ {
299
+ "model_a": "Prompt2prompt",
300
+ "model_b": "Pix2PixZero",
301
+ "winner": "model_a",
302
+ "judge": "arena_user_::1",
303
+ "anony": true,
304
+ "tstamp": 1707838166.1449
305
+ },
306
+ {
307
+ "model_a": "InstructPix2Pix",
308
+ "model_b": "MagicBrush",
309
+ "winner": "tie (bothbad)",
310
+ "judge": "arena_user_::1",
311
+ "anony": true,
312
+ "tstamp": 1707838405.0013
313
+ },
314
+ {
315
+ "model_a": "MagicBrush",
316
+ "model_b": "CycleDiffusion",
317
+ "winner": "model_a",
318
+ "judge": "arena_user_::1",
319
+ "anony": true,
320
+ "tstamp": 1707839133.3126
321
+ },
322
+ {
323
+ "model_a": "Prompt2prompt",
324
+ "model_b": "InstructPix2Pix",
325
+ "winner": "model_a",
326
+ "judge": "arena_user_::1",
327
+ "anony": true,
328
+ "tstamp": 1707839484.6824
329
+ },
330
+ {
331
+ "model_a": "PNP",
332
+ "model_b": "InstructPix2Pix",
333
+ "winner": "tie (bothbad)",
334
+ "judge": "arena_user_::1",
335
+ "anony": true,
336
+ "tstamp": 1707850104.2499
337
+ },
338
+ {
339
+ "model_a": "InstructPix2Pix",
340
+ "model_b": "Pix2PixZero",
341
+ "winner": "model_a",
342
+ "judge": "arena_user_::1",
343
+ "anony": true,
344
+ "tstamp": 1707851384.7689
345
+ },
346
+ {
347
+ "model_a": "PNP",
348
+ "model_b": "MagicBrush",
349
+ "winner": "model_b",
350
+ "judge": "arena_user_::1",
351
+ "anony": true,
352
+ "tstamp": 1707851936.9466
353
+ },
354
+ {
355
+ "model_a": "CycleDiffusion",
356
+ "model_b": "MagicBrush",
357
+ "winner": "tie (bothbad)",
358
+ "judge": "arena_user_::1",
359
+ "anony": true,
360
+ "tstamp": 1707852836.3291
361
+ },
362
+ {
363
+ "model_a": "CycleDiffusion",
364
+ "model_b": "MagicBrush",
365
+ "winner": "tie (bothbad)",
366
+ "judge": "arena_user_::1",
367
+ "anony": false,
368
+ "tstamp": 1707852878.673
369
+ },
370
+ {
371
+ "model_a": "Prompt2prompt",
372
+ "model_b": "InstructPix2Pix",
373
+ "winner": "model_a",
374
+ "judge": "arena_user_::1",
375
+ "anony": true,
376
+ "tstamp": 1707853008.1359
377
+ },
378
+ {
379
+ "model_a": "InstructPix2Pix",
380
+ "model_b": "Pix2PixZero",
381
+ "winner": "model_a",
382
+ "judge": "arena_user_::1",
383
+ "anony": false,
384
+ "tstamp": 1707856807.6229
385
+ },
386
+ {
387
+ "model_a": "MagicBrush",
388
+ "model_b": "Pix2PixZero",
389
+ "winner": "tie (bothbad)",
390
+ "judge": "arena_user_::1",
391
+ "anony": false,
392
+ "tstamp": 1707863740.3507
393
+ },
394
+ {
395
+ "model_a": "MagicBrush",
396
+ "model_b": "PNP",
397
+ "winner": "model_b",
398
+ "judge": "arena_user_::1",
399
+ "anony": true,
400
+ "tstamp": 1707866312.1118
401
+ },
402
+ {
403
+ "model_a": "Pix2PixZero",
404
+ "model_b": "Prompt2prompt",
405
+ "winner": "model_b",
406
+ "judge": "arena_user_::1",
407
+ "anony": true,
408
+ "tstamp": 1707883083.3533
409
+ },
410
+ {
411
+ "model_a": "Pix2PixZero",
412
+ "model_b": "InstructPix2Pix",
413
+ "winner": "model_b",
414
+ "judge": "arena_user_::1",
415
+ "anony": true,
416
+ "tstamp": 1707883181.1397
417
+ },
418
+ {
419
+ "model_a": "Pix2PixZero",
420
+ "model_b": "Prompt2prompt",
421
+ "winner": "model_b",
422
+ "judge": "arena_user_::1",
423
+ "anony": true,
424
+ "tstamp": 1707883187.9173
425
+ },
426
+ {
427
+ "model_a": "PNP",
428
+ "model_b": "Prompt2prompt",
429
+ "winner": "model_a",
430
+ "judge": "arena_user_::1",
431
+ "anony": true,
432
+ "tstamp": 1707883507.587
433
+ },
434
+ {
435
+ "model_a": "Prompt2prompt",
436
+ "model_b": "CycleDiffusion",
437
+ "winner": "model_a",
438
+ "judge": "arena_user_::1",
439
+ "anony": true,
440
+ "tstamp": 1707883939.6125
441
+ },
442
+ {
443
+ "model_a": "Prompt2prompt",
444
+ "model_b": "MagicBrush",
445
+ "winner": "model_b",
446
+ "judge": "arena_user_::1",
447
+ "anony": true,
448
+ "tstamp": 1707892689.4407
449
+ },
450
+ {
451
+ "model_a": "MagicBrush",
452
+ "model_b": "InstructPix2Pix",
453
+ "winner": "model_b",
454
+ "judge": "arena_user_::1",
455
+ "anony": true,
456
+ "tstamp": 1707908988.749
457
+ },
458
+ {
459
+ "model_a": "Prompt2prompt",
460
+ "model_b": "InstructPix2Pix",
461
+ "winner": "model_a",
462
+ "judge": "arena_user_::1",
463
+ "anony": true,
464
+ "tstamp": 1707912639.2701
465
+ },
466
+ {
467
+ "model_a": "MagicBrush",
468
+ "model_b": "Pix2PixZero",
469
+ "winner": "model_a",
470
+ "judge": "arena_user_::1",
471
+ "anony": false,
472
+ "tstamp": 1707917685.9574
473
+ },
474
+ {
475
+ "model_a": "MagicBrush",
476
+ "model_b": "InstructPix2Pix",
477
+ "winner": "tie (bothbad)",
478
+ "judge": "arena_user_::1",
479
+ "anony": false,
480
+ "tstamp": 1707919429.336
481
+ },
482
+ {
483
+ "model_a": "InstructPix2Pix",
484
+ "model_b": "CycleDiffusion",
485
+ "winner": "model_a",
486
+ "judge": "arena_user_::1",
487
+ "anony": true,
488
+ "tstamp": 1707932651.9192
489
+ },
490
+ {
491
+ "model_a": "MagicBrush",
492
+ "model_b": "InstructPix2Pix",
493
+ "winner": "model_a",
494
+ "judge": "arena_user_::1",
495
+ "anony": true,
496
+ "tstamp": 1707932749.3107
497
+ },
498
+ {
499
+ "model_a": "Prompt2prompt",
500
+ "model_b": "PNP",
501
+ "winner": "model_a",
502
+ "judge": "arena_user_::1",
503
+ "anony": true,
504
+ "tstamp": 1707933208.5797
505
+ },
506
+ {
507
+ "model_a": "MagicBrush",
508
+ "model_b": "Pix2PixZero",
509
+ "winner": "model_a",
510
+ "judge": "arena_user_::1",
511
+ "anony": false,
512
+ "tstamp": 1707945335.6341
513
+ },
514
+ {
515
+ "model_a": "MagicBrush",
516
+ "model_b": "PNP",
517
+ "winner": "model_a",
518
+ "judge": "arena_user_::1",
519
+ "anony": false,
520
+ "tstamp": 1708031168.6838
521
+ },
522
+ {
523
+ "model_a": "Pix2PixZero",
524
+ "model_b": "PNP",
525
+ "winner": "model_b",
526
+ "judge": "arena_user_::1",
527
+ "anony": false,
528
+ "tstamp": 1708038931.5388
529
+ },
530
+ {
531
+ "model_a": "Pix2PixZero",
532
+ "model_b": "CycleDiffusion",
533
+ "winner": "tie (bothbad)",
534
+ "judge": "arena_user_::1",
535
+ "anony": true,
536
+ "tstamp": 1708057382.78
537
+ },
538
+ {
539
+ "model_a": "PNP",
540
+ "model_b": "InstructPix2Pix",
541
+ "winner": "model_b",
542
+ "judge": "arena_user_::1",
543
+ "anony": true,
544
+ "tstamp": 1708093689.8237
545
+ },
546
+ {
547
+ "model_a": "MagicBrush",
548
+ "model_b": "PNP",
549
+ "winner": "model_b",
550
+ "judge": "arena_user_::1",
551
+ "anony": true,
552
+ "tstamp": 1708093910.4683
553
+ },
554
+ {
555
+ "model_a": "Pix2PixZero",
556
+ "model_b": "Prompt2prompt",
557
+ "winner": "model_b",
558
+ "judge": "arena_user_::1",
559
+ "anony": false,
560
+ "tstamp": 1708095090.8232
561
+ },
562
+ {
563
+ "model_a": "Pix2PixZero",
564
+ "model_b": "Prompt2prompt",
565
+ "winner": "model_a",
566
+ "judge": "arena_user_::1",
567
+ "anony": false,
568
+ "tstamp": 1708095305.4665
569
+ },
570
+ {
571
+ "model_a": "InstructPix2Pix",
572
+ "model_b": "Prompt2prompt",
573
+ "winner": "model_b",
574
+ "judge": "arena_user_::1",
575
+ "anony": true,
576
+ "tstamp": 1708140553.1694
577
+ },
578
+ {
579
+ "model_a": "MagicBrush",
580
+ "model_b": "Prompt2prompt",
581
+ "winner": "model_a",
582
+ "judge": "arena_user_::1",
583
+ "anony": true,
584
+ "tstamp": 1708145512.3656
585
+ },
586
+ {
587
+ "model_a": "Pix2PixZero",
588
+ "model_b": "Prompt2prompt",
589
+ "winner": "tie (bothbad)",
590
+ "judge": "arena_user_::1",
591
+ "anony": true,
592
+ "tstamp": 1708145724.4127
593
+ },
594
+ {
595
+ "model_a": "Pix2PixZero",
596
+ "model_b": "PNP",
597
+ "winner": "model_b",
598
+ "judge": "arena_user_::1",
599
+ "anony": true,
600
+ "tstamp": 1708146846.5098
601
+ },
602
+ {
603
+ "model_a": "PNP",
604
+ "model_b": "MagicBrush",
605
+ "winner": "model_a",
606
+ "judge": "arena_user_::1",
607
+ "anony": true,
608
+ "tstamp": 1708189738.4864
609
+ },
610
+ {
611
+ "model_a": "Prompt2prompt",
612
+ "model_b": "InstructPix2Pix",
613
+ "winner": "model_b",
614
+ "judge": "arena_user_::1",
615
+ "anony": true,
616
+ "tstamp": 1708235874.9246
617
+ },
618
+ {
619
+ "model_a": "Pix2PixZero",
620
+ "model_b": "PNP",
621
+ "winner": "model_b",
622
+ "judge": "arena_user_::1",
623
+ "anony": false,
624
+ "tstamp": 1708257619.7115
625
+ },
626
+ {
627
+ "model_a": "MagicBrush",
628
+ "model_b": "Pix2PixZero",
629
+ "winner": "tie (bothbad)",
630
+ "judge": "arena_user_::1",
631
+ "anony": true,
632
+ "tstamp": 1708341265.7655
633
+ },
634
+ {
635
+ "model_a": "MagicBrush",
636
+ "model_b": "InstructPix2Pix",
637
+ "winner": "model_b",
638
+ "judge": "arena_user_::1",
639
+ "anony": true,
640
+ "tstamp": 1708350183.3086
641
+ },
642
+ {
643
+ "model_a": "MagicBrush",
644
+ "model_b": "Pix2PixZero",
645
+ "winner": "tie (bothbad)",
646
+ "judge": "arena_user_::1",
647
+ "anony": true,
648
+ "tstamp": 1708399707.1681
649
+ },
650
+ {
651
+ "model_a": "PNP",
652
+ "model_b": "MagicBrush",
653
+ "winner": "model_a",
654
+ "judge": "arena_user_::1",
655
+ "anony": true,
656
+ "tstamp": 1708441502.4707
657
+ },
658
+ {
659
+ "model_a": "InstructPix2Pix",
660
+ "model_b": "MagicBrush",
661
+ "winner": "model_a",
662
+ "judge": "arena_user_::1",
663
+ "anony": true,
664
+ "tstamp": 1708441716.8195
665
+ },
666
+ {
667
+ "model_a": "InstructPix2Pix",
668
+ "model_b": "MagicBrush",
669
+ "winner": "model_b",
670
+ "judge": "arena_user_::1",
671
+ "anony": false,
672
+ "tstamp": 1708546759.2009
673
+ },
674
+ {
675
+ "model_a": "InstructPix2Pix",
676
+ "model_b": "MagicBrush",
677
+ "winner": "model_a",
678
+ "judge": "arena_user_::1",
679
+ "anony": false,
680
+ "tstamp": 1708546805.4892
681
+ },
682
+ {
683
+ "model_a": "Pix2PixZero",
684
+ "model_b": "CycleDiffusion",
685
+ "winner": "tie (bothbad)",
686
+ "judge": "arena_user_::1",
687
+ "anony": true,
688
+ "tstamp": 1708547082.7124
689
+ },
690
+ {
691
+ "model_a": "InstructPix2Pix",
692
+ "model_b": "MagicBrush",
693
+ "winner": "model_b",
694
+ "judge": "arena_user_::1",
695
+ "anony": false,
696
+ "tstamp": 1708547166.9685
697
+ },
698
+ {
699
+ "model_a": "InstructPix2Pix",
700
+ "model_b": "MagicBrush",
701
+ "winner": "model_b",
702
+ "judge": "arena_user_::1",
703
+ "anony": false,
704
+ "tstamp": 1708547293.7107
705
+ },
706
+ {
707
+ "model_a": "CycleDiffusion",
708
+ "model_b": "PNP",
709
+ "winner": "tie (bothbad)",
710
+ "judge": "arena_user_::1",
711
+ "anony": true,
712
+ "tstamp": 1708575046.0529
713
+ },
714
+ {
715
+ "model_a": "CycleDiffusion",
716
+ "model_b": "MagicBrush",
717
+ "winner": "tie (bothbad)",
718
+ "judge": "arena_user_::1",
719
+ "anony": true,
720
+ "tstamp": 1708615466.9264
721
+ },
722
+ {
723
+ "model_a": "CycleDiffusion",
724
+ "model_b": "MagicBrush",
725
+ "winner": "model_b",
726
+ "judge": "arena_user_::1",
727
+ "anony": false,
728
+ "tstamp": 1708615516.3341
729
+ },
730
+ {
731
+ "model_a": "InstructPix2Pix",
732
+ "model_b": "PNP",
733
+ "winner": "model_b",
734
+ "judge": "arena_user_::1",
735
+ "anony": false,
736
+ "tstamp": 1709205399.0098
737
+ },
738
+ {
739
+ "model_a": "InstructPix2Pix",
740
+ "model_b": "PNP",
741
+ "winner": "model_b",
742
+ "judge": "arena_user_::1",
743
+ "anony": false,
744
+ "tstamp": 1709205767.8923
745
+ },
746
+ {
747
+ "model_a": "PNP",
748
+ "model_b": "InstructPix2Pix",
749
+ "winner": "model_b",
750
+ "judge": "arena_user_::1",
751
+ "anony": true,
752
+ "tstamp": 1709443700.05
753
+ },
754
+ {
755
+ "model_a": "MagicBrush",
756
+ "model_b": "Pix2PixZero",
757
+ "winner": "model_a",
758
+ "judge": "arena_user_::1",
759
+ "anony": true,
760
+ "tstamp": 1709702898.9291
761
+ },
762
+ {
763
+ "model_a": "CycleDiffusion",
764
+ "model_b": "Prompt2prompt",
765
+ "winner": "tie (bothbad)",
766
+ "judge": "arena_user_::1",
767
+ "anony": true,
768
+ "tstamp": 1710091925.1861
769
+ },
770
+ {
771
+ "model_a": "MagicBrush",
772
+ "model_b": "InstructPix2Pix",
773
+ "winner": "tie (bothbad)",
774
+ "judge": "arena_user_::1",
775
+ "anony": true,
776
+ "tstamp": 1710517781.1525
777
+ },
778
+ {
779
+ "model_a": "MagicBrush",
780
+ "model_b": "InstructPix2Pix",
781
+ "winner": "tie (bothbad)",
782
+ "judge": "arena_user_::1",
783
+ "anony": false,
784
+ "tstamp": 1710517859.2942
785
+ },
786
+ {
787
+ "model_a": "Pix2PixZero",
788
+ "model_b": "CycleDiffusion",
789
+ "winner": "tie (bothbad)",
790
+ "judge": "arena_user_::1",
791
+ "anony": true,
792
+ "tstamp": 1710535672.9791
793
+ },
794
+ {
795
+ "model_a": "InfEdit",
796
+ "model_b": "MagicBrush",
797
+ "winner": "model_a",
798
+ "judge": "arena_user_10.16.25.191",
799
+ "anony": false,
800
+ "tstamp": 1714359818.6646
801
+ },
802
+ {
803
+ "model_a": "InstructPix2Pix",
804
+ "model_b": "Prompt2prompt",
805
+ "winner": "tie (bothbad)",
806
+ "judge": "arena_user_10.16.25.191",
807
+ "anony": true,
808
+ "tstamp": 1714363016.9972
809
+ },
810
+ {
811
+ "model_a": "InfEdit",
812
+ "model_b": "CosXLEdit",
813
+ "winner": "model_a",
814
+ "judge": "arena_user_10.16.25.191",
815
+ "anony": true,
816
+ "tstamp": 1714715956.3416
817
+ },
818
+ {
819
+ "model_a": "Pix2PixZero",
820
+ "model_b": "Prompt2prompt",
821
+ "winner": "tie (bothbad)",
822
+ "judge": "arena_user_10.16.2.201",
823
+ "anony": false,
824
+ "tstamp": 1714759928.3804
825
+ },
826
+ {
827
+ "model_a": "PNP",
828
+ "model_b": "InstructPix2Pix",
829
+ "winner": "model_a",
830
+ "judge": "arena_user_10.16.17.217",
831
+ "anony": true,
832
+ "tstamp": 1715246275.0118
833
+ },
834
+ {
835
+ "model_a": "SDEdit",
836
+ "model_b": "CosXLEdit",
837
+ "winner": "tie (bothbad)",
838
+ "judge": "arena_user_10.16.15.199",
839
+ "anony": true,
840
+ "tstamp": 1715247590.2235
841
+ },
842
+ {
843
+ "model_a": "CycleDiffusion",
844
+ "model_b": "CosXLEdit",
845
+ "winner": "model_b",
846
+ "judge": "arena_user_10.16.41.118",
847
+ "anony": false,
848
+ "tstamp": 1715406266.2562
849
+ },
850
+ {
851
+ "model_a": "CycleDiffusion",
852
+ "model_b": "CosXLEdit",
853
+ "winner": "model_a",
854
+ "judge": "arena_user_10.16.41.118",
855
+ "anony": false,
856
+ "tstamp": 1715406354.5284
857
+ },
858
+ {
859
+ "model_a": "CycleDiffusion",
860
+ "model_b": "CosXLEdit",
861
+ "winner": "model_b",
862
+ "judge": "arena_user_10.16.2.201",
863
+ "anony": false,
864
+ "tstamp": 1715406371.8227
865
+ },
866
+ {
867
+ "model_a": "CycleDiffusion",
868
+ "model_b": "CosXLEdit",
869
+ "winner": "model_b",
870
+ "judge": "arena_user_10.16.41.118",
871
+ "anony": false,
872
+ "tstamp": 1715406418.5066
873
+ },
874
+ {
875
+ "model_a": "CycleDiffusion",
876
+ "model_b": "CosXLEdit",
877
+ "winner": "model_b",
878
+ "judge": "arena_user_10.16.25.191",
879
+ "anony": false,
880
+ "tstamp": 1715406449.9401
881
+ },
882
+ {
883
+ "model_a": "CycleDiffusion",
884
+ "model_b": "CosXLEdit",
885
+ "winner": "model_b",
886
+ "judge": "arena_user_10.16.41.118",
887
+ "anony": false,
888
+ "tstamp": 1715406466.5778
889
+ },
890
+ {
891
+ "model_a": "InfEdit",
892
+ "model_b": "CycleDiffusion",
893
+ "winner": "model_a",
894
+ "judge": "arena_user_10.16.2.201",
895
+ "anony": true,
896
+ "tstamp": 1715620708.6361
897
+ },
898
+ {
899
+ "model_a": "Prompt2prompt",
900
+ "model_b": "CosXLEdit",
901
+ "winner": "model_a",
902
+ "judge": "arena_user_10.16.41.118",
903
+ "anony": false,
904
+ "tstamp": 1715621013.5373
905
+ },
906
+ {
907
+ "model_a": "MagicBrush",
908
+ "model_b": "CycleDiffusion",
909
+ "winner": "tie (bothbad)",
910
+ "judge": "arena_user_10.16.2.201",
911
+ "anony": true,
912
+ "tstamp": 1715661224.0507
913
+ },
914
+ {
915
+ "model_a": "SDEdit",
916
+ "model_b": "PNP",
917
+ "winner": "tie (bothbad)",
918
+ "judge": "arena_user_10.16.41.118",
919
+ "anony": true,
920
+ "tstamp": 1715661259.6143
921
+ },
922
+ {
923
+ "model_a": "Pix2PixZero",
924
+ "model_b": "Prompt2prompt",
925
+ "winner": "tie (bothbad)",
926
+ "judge": "arena_user_10.16.41.118",
927
+ "anony": true,
928
+ "tstamp": 1715661288.6018
929
+ },
930
+ {
931
+ "model_a": "InstructPix2Pix",
932
+ "model_b": "Prompt2prompt",
933
+ "winner": "model_b",
934
+ "judge": "arena_user_10.16.25.191",
935
+ "anony": true,
936
+ "tstamp": 1715661310.3621
937
+ },
938
+ {
939
+ "model_a": "CosXLEdit",
940
+ "model_b": "InstructPix2Pix",
941
+ "winner": "tie (bothbad)",
942
+ "judge": "arena_user_10.16.25.191",
943
+ "anony": true,
944
+ "tstamp": 1715718742.1258
945
+ },
946
+ {
947
+ "model_a": "MagicBrush",
948
+ "model_b": "PNP",
949
+ "winner": "model_a",
950
+ "judge": "arena_user_10.16.2.201",
951
+ "anony": true,
952
+ "tstamp": 1715718773.1054
953
+ },
954
+ {
955
+ "model_a": "SDEdit",
956
+ "model_b": "CosXLEdit",
957
+ "winner": "tie (bothbad)",
958
+ "judge": "arena_user_10.16.2.201",
959
+ "anony": true,
960
+ "tstamp": 1715718785.2832
961
+ },
962
+ {
963
+ "model_a": "InstructPix2Pix",
964
+ "model_b": "SDEdit",
965
+ "winner": "tie (bothbad)",
966
+ "judge": "arena_user_10.16.2.201",
967
+ "anony": true,
968
+ "tstamp": 1715718804.143
969
+ },
970
+ {
971
+ "model_a": "InfEdit",
972
+ "model_b": "CosXLEdit",
973
+ "winner": "model_b",
974
+ "judge": "arena_user_10.16.25.191",
975
+ "anony": true,
976
+ "tstamp": 1715718826.0248
977
+ },
978
+ {
979
+ "model_a": "InfEdit",
980
+ "model_b": "Prompt2prompt",
981
+ "winner": "model_a",
982
+ "judge": "arena_user_10.16.2.201",
983
+ "anony": true,
984
+ "tstamp": 1715718869.0041
985
+ },
986
+ {
987
+ "model_a": "InfEdit",
988
+ "model_b": "CosXLEdit",
989
+ "winner": "model_b",
990
+ "judge": "arena_user_10.16.2.201",
991
+ "anony": true,
992
+ "tstamp": 1715718904.9307
993
+ },
994
+ {
995
+ "model_a": "Prompt2prompt",
996
+ "model_b": "Pix2PixZero",
997
+ "winner": "model_a",
998
+ "judge": "arena_user_10.16.25.191",
999
+ "anony": true,
1000
+ "tstamp": 1715718933.1272
1001
+ },
1002
+ {
1003
+ "model_a": "Pix2PixZero",
1004
+ "model_b": "MagicBrush",
1005
+ "winner": "tie (bothbad)",
1006
+ "judge": "arena_user_10.16.2.201",
1007
+ "anony": true,
1008
+ "tstamp": 1715718954.8497
1009
+ },
1010
+ {
1011
+ "model_a": "MagicBrush",
1012
+ "model_b": "PNP",
1013
+ "winner": "model_b",
1014
+ "judge": "arena_user_10.16.25.191",
1015
+ "anony": true,
1016
+ "tstamp": 1715718966.8633
1017
+ },
1018
+ {
1019
+ "model_a": "CycleDiffusion",
1020
+ "model_b": "Prompt2prompt",
1021
+ "winner": "tie (bothbad)",
1022
+ "judge": "arena_user_10.16.25.191",
1023
+ "anony": true,
1024
+ "tstamp": 1715719000.6673
1025
+ },
1026
+ {
1027
+ "model_a": "MagicBrush",
1028
+ "model_b": "Pix2PixZero",
1029
+ "winner": "tie (bothbad)",
1030
+ "judge": "arena_user_10.16.25.191",
1031
+ "anony": true,
1032
+ "tstamp": 1715719019.5495
1033
+ },
1034
+ {
1035
+ "model_a": "InfEdit",
1036
+ "model_b": "Prompt2prompt",
1037
+ "winner": "model_a",
1038
+ "judge": "arena_user_10.16.25.191",
1039
+ "anony": true,
1040
+ "tstamp": 1715719035.903
1041
+ },
1042
+ {
1043
+ "model_a": "MagicBrush",
1044
+ "model_b": "Pix2PixZero",
1045
+ "winner": "model_a",
1046
+ "judge": "arena_user_10.16.25.191",
1047
+ "anony": true,
1048
+ "tstamp": 1715719046.925
1049
+ },
1050
+ {
1051
+ "model_a": "CycleDiffusion",
1052
+ "model_b": "CosXLEdit",
1053
+ "winner": "tie (bothbad)",
1054
+ "judge": "arena_user_10.16.2.201",
1055
+ "anony": true,
1056
+ "tstamp": 1715719059.6291
1057
+ },
1058
+ {
1059
+ "model_a": "Prompt2prompt",
1060
+ "model_b": "SDEdit",
1061
+ "winner": "tie (bothbad)",
1062
+ "judge": "arena_user_10.16.15.199",
1063
+ "anony": true,
1064
+ "tstamp": 1715719076.6727
1065
+ },
1066
+ {
1067
+ "model_a": "MagicBrush",
1068
+ "model_b": "PNP",
1069
+ "winner": "model_a",
1070
+ "judge": "arena_user_10.16.25.191",
1071
+ "anony": true,
1072
+ "tstamp": 1715719086.7836
1073
+ },
1074
+ {
1075
+ "model_a": "CycleDiffusion",
1076
+ "model_b": "MagicBrush",
1077
+ "winner": "model_b",
1078
+ "judge": "arena_user_10.16.25.191",
1079
+ "anony": true,
1080
+ "tstamp": 1715719109.8071
1081
+ },
1082
+ {
1083
+ "model_a": "Prompt2prompt",
1084
+ "model_b": "InstructPix2Pix",
1085
+ "winner": "model_b",
1086
+ "judge": "arena_user_10.16.25.191",
1087
+ "anony": true,
1088
+ "tstamp": 1715719122.8237
1089
+ },
1090
+ {
1091
+ "model_a": "MagicBrush",
1092
+ "model_b": "SDEdit",
1093
+ "winner": "model_a",
1094
+ "judge": "arena_user_10.16.15.199",
1095
+ "anony": true,
1096
+ "tstamp": 1715719134.1345
1097
+ },
1098
+ {
1099
+ "model_a": "SDEdit",
1100
+ "model_b": "CycleDiffusion",
1101
+ "winner": "tie (bothbad)",
1102
+ "judge": "arena_user_10.16.17.217",
1103
+ "anony": true,
1104
+ "tstamp": 1715719153.4359
1105
+ },
1106
+ {
1107
+ "model_a": "Pix2PixZero",
1108
+ "model_b": "MagicBrush",
1109
+ "winner": "tie (bothbad)",
1110
+ "judge": "arena_user_10.16.17.217",
1111
+ "anony": true,
1112
+ "tstamp": 1715719160.5285
1113
+ },
1114
+ {
1115
+ "model_a": "MagicBrush",
1116
+ "model_b": "InstructPix2Pix",
1117
+ "winner": "model_b",
1118
+ "judge": "arena_user_10.16.15.199",
1119
+ "anony": true,
1120
+ "tstamp": 1715719171.4473
1121
+ },
1122
+ {
1123
+ "model_a": "InstructPix2Pix",
1124
+ "model_b": "SDEdit",
1125
+ "winner": "tie (bothbad)",
1126
+ "judge": "arena_user_10.16.2.201",
1127
+ "anony": true,
1128
+ "tstamp": 1715719184.6227
1129
+ },
1130
+ {
1131
+ "model_a": "CosXLEdit",
1132
+ "model_b": "MagicBrush",
1133
+ "winner": "model_a",
1134
+ "judge": "arena_user_10.16.2.201",
1135
+ "anony": true,
1136
+ "tstamp": 1715719210.0429
1137
+ },
1138
+ {
1139
+ "model_a": "CycleDiffusion",
1140
+ "model_b": "MagicBrush",
1141
+ "winner": "model_b",
1142
+ "judge": "arena_user_10.16.41.118",
1143
+ "anony": true,
1144
+ "tstamp": 1715719219.6447
1145
+ },
1146
+ {
1147
+ "model_a": "PNP",
1148
+ "model_b": "Pix2PixZero",
1149
+ "winner": "tie (bothbad)",
1150
+ "judge": "arena_user_10.16.41.118",
1151
+ "anony": true,
1152
+ "tstamp": 1715719237.7036
1153
+ },
1154
+ {
1155
+ "model_a": "PNP",
1156
+ "model_b": "CycleDiffusion",
1157
+ "winner": "tie (bothbad)",
1158
+ "judge": "arena_user_10.16.25.191",
1159
+ "anony": true,
1160
+ "tstamp": 1715719249.4321
1161
+ },
1162
+ {
1163
+ "model_a": "Prompt2prompt",
1164
+ "model_b": "Pix2PixZero",
1165
+ "winner": "model_a",
1166
+ "judge": "arena_user_10.16.2.201",
1167
+ "anony": true,
1168
+ "tstamp": 1715719257.5877
1169
+ },
1170
+ {
1171
+ "model_a": "CosXLEdit",
1172
+ "model_b": "Pix2PixZero",
1173
+ "winner": "tie (bothbad)",
1174
+ "judge": "arena_user_10.16.25.191",
1175
+ "anony": true,
1176
+ "tstamp": 1715719273.7637
1177
+ },
1178
+ {
1179
+ "model_a": "PNP",
1180
+ "model_b": "CosXLEdit",
1181
+ "winner": "model_b",
1182
+ "judge": "arena_user_10.16.17.217",
1183
+ "anony": true,
1184
+ "tstamp": 1715719288.4629
1185
+ },
1186
+ {
1187
+ "model_a": "Pix2PixZero",
1188
+ "model_b": "PNP",
1189
+ "winner": "model_b",
1190
+ "judge": "arena_user_10.16.41.118",
1191
+ "anony": true,
1192
+ "tstamp": 1715719299.1712
1193
+ },
1194
+ {
1195
+ "model_a": "PNP",
1196
+ "model_b": "MagicBrush",
1197
+ "winner": "model_b",
1198
+ "judge": "arena_user_10.16.2.201",
1199
+ "anony": true,
1200
+ "tstamp": 1715719306.5928
1201
+ },
1202
+ {
1203
+ "model_a": "InstructPix2Pix",
1204
+ "model_b": "PNP",
1205
+ "winner": "tie (bothbad)",
1206
+ "judge": "arena_user_10.16.15.199",
1207
+ "anony": true,
1208
+ "tstamp": 1715719356.0694
1209
+ },
1210
+ {
1211
+ "model_a": "Prompt2prompt",
1212
+ "model_b": "CosXLEdit",
1213
+ "winner": "model_a",
1214
+ "judge": "arena_user_10.16.25.191",
1215
+ "anony": true,
1216
+ "tstamp": 1715719368.0491
1217
+ },
1218
+ {
1219
+ "model_a": "Prompt2prompt",
1220
+ "model_b": "CycleDiffusion",
1221
+ "winner": "tie (bothbad)",
1222
+ "judge": "arena_user_10.16.41.118",
1223
+ "anony": true,
1224
+ "tstamp": 1715719379.185
1225
+ },
1226
+ {
1227
+ "model_a": "CycleDiffusion",
1228
+ "model_b": "Prompt2prompt",
1229
+ "winner": "tie (bothbad)",
1230
+ "judge": "arena_user_10.16.2.201",
1231
+ "anony": true,
1232
+ "tstamp": 1715719389.0771
1233
+ },
1234
+ {
1235
+ "model_a": "Pix2PixZero",
1236
+ "model_b": "MagicBrush",
1237
+ "winner": "model_b",
1238
+ "judge": "arena_user_10.16.17.217",
1239
+ "anony": true,
1240
+ "tstamp": 1715719397.7162
1241
+ },
1242
+ {
1243
+ "model_a": "PNP",
1244
+ "model_b": "InstructPix2Pix",
1245
+ "winner": "tie (bothbad)",
1246
+ "judge": "arena_user_10.16.2.201",
1247
+ "anony": true,
1248
+ "tstamp": 1715719406.4165
1249
+ },
1250
+ {
1251
+ "model_a": "Pix2PixZero",
1252
+ "model_b": "PNP",
1253
+ "winner": "model_b",
1254
+ "judge": "arena_user_10.16.25.191",
1255
+ "anony": true,
1256
+ "tstamp": 1715719429.1002
1257
+ },
1258
+ {
1259
+ "model_a": "CosXLEdit",
1260
+ "model_b": "MagicBrush",
1261
+ "winner": "model_a",
1262
+ "judge": "arena_user_10.16.2.201",
1263
+ "anony": true,
1264
+ "tstamp": 1715719435.4694
1265
+ },
1266
+ {
1267
+ "model_a": "PNP",
1268
+ "model_b": "SDEdit",
1269
+ "winner": "tie (bothbad)",
1270
+ "judge": "arena_user_10.16.2.201",
1271
+ "anony": true,
1272
+ "tstamp": 1715719454.4526
1273
+ },
1274
+ {
1275
+ "model_a": "InfEdit",
1276
+ "model_b": "PNP",
1277
+ "winner": "tie (bothbad)",
1278
+ "judge": "arena_user_10.16.17.217",
1279
+ "anony": true,
1280
+ "tstamp": 1715719470.154
1281
+ },
1282
+ {
1283
+ "model_a": "MagicBrush",
1284
+ "model_b": "PNP",
1285
+ "winner": "model_a",
1286
+ "judge": "arena_user_10.16.41.118",
1287
+ "anony": true,
1288
+ "tstamp": 1715719482.3114
1289
+ },
1290
+ {
1291
+ "model_a": "SDEdit",
1292
+ "model_b": "PNP",
1293
+ "winner": "tie",
1294
+ "judge": "arena_user_10.16.2.201",
1295
+ "anony": true,
1296
+ "tstamp": 1715719499.9643
1297
+ },
1298
+ {
1299
+ "model_a": "InstructPix2Pix",
1300
+ "model_b": "MagicBrush",
1301
+ "winner": "model_b",
1302
+ "judge": "arena_user_10.16.2.201",
1303
+ "anony": true,
1304
+ "tstamp": 1715719513.7317
1305
+ },
1306
+ {
1307
+ "model_a": "InfEdit",
1308
+ "model_b": "PNP",
1309
+ "winner": "model_a",
1310
+ "judge": "arena_user_10.16.15.199",
1311
+ "anony": true,
1312
+ "tstamp": 1715719527.69
1313
+ },
1314
+ {
1315
+ "model_a": "Prompt2prompt",
1316
+ "model_b": "MagicBrush",
1317
+ "winner": "tie (bothbad)",
1318
+ "judge": "arena_user_10.16.41.118",
1319
+ "anony": true,
1320
+ "tstamp": 1715719542.751
1321
+ },
1322
+ {
1323
+ "model_a": "Pix2PixZero",
1324
+ "model_b": "InfEdit",
1325
+ "winner": "tie (bothbad)",
1326
+ "judge": "arena_user_10.16.15.199",
1327
+ "anony": true,
1328
+ "tstamp": 1715719560.9912
1329
+ },
1330
+ {
1331
+ "model_a": "PNP",
1332
+ "model_b": "Pix2PixZero",
1333
+ "winner": "tie (bothbad)",
1334
+ "judge": "arena_user_10.16.2.201",
1335
+ "anony": true,
1336
+ "tstamp": 1715719575.3291
1337
+ },
1338
+ {
1339
+ "model_a": "PNP",
1340
+ "model_b": "CosXLEdit",
1341
+ "winner": "model_b",
1342
+ "judge": "arena_user_10.16.17.217",
1343
+ "anony": true,
1344
+ "tstamp": 1715719581.9552
1345
+ },
1346
+ {
1347
+ "model_a": "Pix2PixZero",
1348
+ "model_b": "Prompt2prompt",
1349
+ "winner": "tie (bothbad)",
1350
+ "judge": "arena_user_10.16.25.191",
1351
+ "anony": true,
1352
+ "tstamp": 1715719591.9907
1353
+ },
1354
+ {
1355
+ "model_a": "CosXLEdit",
1356
+ "model_b": "SDEdit",
1357
+ "winner": "model_a",
1358
+ "judge": "arena_user_10.16.2.201",
1359
+ "anony": true,
1360
+ "tstamp": 1715719601.8819
1361
+ },
1362
+ {
1363
+ "model_a": "InfEdit",
1364
+ "model_b": "MagicBrush",
1365
+ "winner": "model_b",
1366
+ "judge": "arena_user_10.16.41.118",
1367
+ "anony": true,
1368
+ "tstamp": 1715719612.1837
1369
+ },
1370
+ {
1371
+ "model_a": "SDEdit",
1372
+ "model_b": "InstructPix2Pix",
1373
+ "winner": "tie (bothbad)",
1374
+ "judge": "arena_user_10.16.2.201",
1375
+ "anony": true,
1376
+ "tstamp": 1715719620.469
1377
+ },
1378
+ {
1379
+ "model_a": "InstructPix2Pix",
1380
+ "model_b": "MagicBrush",
1381
+ "winner": "tie (bothbad)",
1382
+ "judge": "arena_user_10.16.41.118",
1383
+ "anony": true,
1384
+ "tstamp": 1715719627.34
1385
+ },
1386
+ {
1387
+ "model_a": "MagicBrush",
1388
+ "model_b": "Prompt2prompt",
1389
+ "winner": "model_a",
1390
+ "judge": "arena_user_10.16.2.201",
1391
+ "anony": true,
1392
+ "tstamp": 1715719632.694
1393
+ },
1394
+ {
1395
+ "model_a": "Prompt2prompt",
1396
+ "model_b": "SDEdit",
1397
+ "winner": "tie (bothbad)",
1398
+ "judge": "arena_user_10.16.41.118",
1399
+ "anony": true,
1400
+ "tstamp": 1715719652.2038
1401
+ },
1402
+ {
1403
+ "model_a": "SDEdit",
1404
+ "model_b": "Prompt2prompt",
1405
+ "winner": "tie (bothbad)",
1406
+ "judge": "arena_user_10.16.25.191",
1407
+ "anony": true,
1408
+ "tstamp": 1715719661.8855
1409
+ },
1410
+ {
1411
+ "model_a": "CosXLEdit",
1412
+ "model_b": "Prompt2prompt",
1413
+ "winner": "tie (bothbad)",
1414
+ "judge": "arena_user_10.16.2.201",
1415
+ "anony": true,
1416
+ "tstamp": 1715719677.2949
1417
+ },
1418
+ {
1419
+ "model_a": "MagicBrush",
1420
+ "model_b": "Prompt2prompt",
1421
+ "winner": "model_a",
1422
+ "judge": "arena_user_10.16.2.201",
1423
+ "anony": true,
1424
+ "tstamp": 1715719687.3022
1425
+ },
1426
+ {
1427
+ "model_a": "SDEdit",
1428
+ "model_b": "Prompt2prompt",
1429
+ "winner": "model_b",
1430
+ "judge": "arena_user_10.16.2.201",
1431
+ "anony": true,
1432
+ "tstamp": 1715719699.47
1433
+ },
1434
+ {
1435
+ "model_a": "Pix2PixZero",
1436
+ "model_b": "InfEdit",
1437
+ "winner": "model_b",
1438
+ "judge": "arena_user_10.16.2.201",
1439
+ "anony": true,
1440
+ "tstamp": 1715719706.2375
1441
+ },
1442
+ {
1443
+ "model_a": "CosXLEdit",
1444
+ "model_b": "Prompt2prompt",
1445
+ "winner": "model_a",
1446
+ "judge": "arena_user_10.16.17.217",
1447
+ "anony": true,
1448
+ "tstamp": 1715719717.3564
1449
+ },
1450
+ {
1451
+ "model_a": "InstructPix2Pix",
1452
+ "model_b": "CosXLEdit",
1453
+ "winner": "tie (bothbad)",
1454
+ "judge": "arena_user_10.16.25.191",
1455
+ "anony": true,
1456
+ "tstamp": 1715719722.5542
1457
+ },
1458
+ {
1459
+ "model_a": "InfEdit",
1460
+ "model_b": "InstructPix2Pix",
1461
+ "winner": "tie (bothbad)",
1462
+ "judge": "arena_user_10.16.41.118",
1463
+ "anony": true,
1464
+ "tstamp": 1715719728.5417
1465
+ },
1466
+ {
1467
+ "model_a": "MagicBrush",
1468
+ "model_b": "SDEdit",
1469
+ "winner": "model_a",
1470
+ "judge": "arena_user_10.16.2.201",
1471
+ "anony": true,
1472
+ "tstamp": 1715719737.2385
1473
+ },
1474
+ {
1475
+ "model_a": "MagicBrush",
1476
+ "model_b": "Pix2PixZero",
1477
+ "winner": "tie (bothbad)",
1478
+ "judge": "arena_user_10.16.15.199",
1479
+ "anony": true,
1480
+ "tstamp": 1715815138.5243
1481
+ },
1482
+ {
1483
+ "model_a": "CosXLEdit",
1484
+ "model_b": "Prompt2prompt",
1485
+ "winner": "model_b",
1486
+ "judge": "arena_user_10.16.17.217",
1487
+ "anony": true,
1488
+ "tstamp": 1715815152.0033
1489
+ },
1490
+ {
1491
+ "model_a": "Pix2PixZero",
1492
+ "model_b": "Prompt2prompt",
1493
+ "winner": "tie (bothbad)",
1494
+ "judge": "arena_user_10.16.41.118",
1495
+ "anony": true,
1496
+ "tstamp": 1715815169.0475
1497
+ },
1498
+ {
1499
+ "model_a": "InstructPix2Pix",
1500
+ "model_b": "SDEdit",
1501
+ "winner": "model_b",
1502
+ "judge": "arena_user_10.16.41.118",
1503
+ "anony": true,
1504
+ "tstamp": 1715815187.1917
1505
+ },
1506
+ {
1507
+ "model_a": "InstructPix2Pix",
1508
+ "model_b": "Pix2PixZero",
1509
+ "winner": "tie (bothbad)",
1510
+ "judge": "arena_user_10.16.2.201",
1511
+ "anony": true,
1512
+ "tstamp": 1715815197.5233
1513
+ },
1514
+ {
1515
+ "model_a": "Pix2PixZero",
1516
+ "model_b": "SDEdit",
1517
+ "winner": "tie (bothbad)",
1518
+ "judge": "arena_user_10.16.2.201",
1519
+ "anony": true,
1520
+ "tstamp": 1715815209.8285
1521
+ },
1522
+ {
1523
+ "model_a": "CycleDiffusion",
1524
+ "model_b": "MagicBrush",
1525
+ "winner": "model_b",
1526
+ "judge": "arena_user_10.16.2.201",
1527
+ "anony": true,
1528
+ "tstamp": 1715815228.6736
1529
+ },
1530
+ {
1531
+ "model_a": "InfEdit",
1532
+ "model_b": "Pix2PixZero",
1533
+ "winner": "tie (bothbad)",
1534
+ "judge": "arena_user_10.16.2.201",
1535
+ "anony": true,
1536
+ "tstamp": 1715815236.3935
1537
+ },
1538
+ {
1539
+ "model_a": "SDEdit",
1540
+ "model_b": "PNP",
1541
+ "winner": "tie (bothbad)",
1542
+ "judge": "arena_user_10.16.25.191",
1543
+ "anony": true,
1544
+ "tstamp": 1715815265.9705
1545
+ },
1546
+ {
1547
+ "model_a": "MagicBrush",
1548
+ "model_b": "SDEdit",
1549
+ "winner": "tie (bothbad)",
1550
+ "judge": "arena_user_10.16.15.199",
1551
+ "anony": true,
1552
+ "tstamp": 1715815278.5019
1553
+ },
1554
+ {
1555
+ "model_a": "CycleDiffusion",
1556
+ "model_b": "CosXLEdit",
1557
+ "winner": "tie (bothbad)",
1558
+ "judge": "arena_user_10.16.15.199",
1559
+ "anony": true,
1560
+ "tstamp": 1715815294.5978
1561
+ },
1562
+ {
1563
+ "model_a": "MagicBrush",
1564
+ "model_b": "InfEdit",
1565
+ "winner": "model_a",
1566
+ "judge": "arena_user_10.16.17.217",
1567
+ "anony": true,
1568
+ "tstamp": 1715815325.4468
1569
+ },
1570
+ {
1571
+ "model_a": "MagicBrush",
1572
+ "model_b": "Pix2PixZero",
1573
+ "winner": "model_a",
1574
+ "judge": "arena_user_10.16.41.118",
1575
+ "anony": true,
1576
+ "tstamp": 1715913098.6617
1577
+ }
1578
+ ]
arena_elo/results/20240516/elo_results_image_editing.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:837f11fd6cda1fe2d6a5cc1c239a207725ad0157b16282303cb684427ddc7e9d
3
+ size 62484
arena_elo/results/20240516/image_editing_leaderboard.csv ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ CosXLEdit,CosXLEdit,1097.63559213644,1085.7285800995926,cosxl-nc-community,Stability AI,https://huggingface.co/spaces/multimodalart/cosxl
3
+ MagicBrush,MagicBrush,1075.1489922450316,1086.8819832924794,CC-BY-4.0,"The Ohio State University, University of Waterloo",https://osu-nlp-group.github.io/MagicBrush
4
+ InfEdit,InfEdit,1065.4719519196174,1090.684638162955,Apache-2.0,"University of Michigan, University of California, Berkeley",https://huggingface.co/spaces/sled-umich/InfEdit
5
+ Prompt2prompt,Prompt2prompt,1063.1432047252297,1060.8146250689238,Apache-2.0,"Google, Tel Aviv University",https://prompt-to-prompt.github.io
6
+ InstructPix2Pix,InstructPix2Pix,1043.9312648233226,1028.7932718869638,"Copyright 2023 Timothy Brooks, Aleksander Holynski, Alexei A. Efros","University of California, Berkeley",https://www.timothybrooks.com/instruct-pix2pix
7
+ PNP,PNP,1022.4342554377677,1043.322342347598,-,Weizmann Institute of Science,https://github.com/MichalGeyer/plug-and-play
8
+ Pix2PixZero,Pix2PixZero,891.2979039265506,886.7359371585381,MIT License,"Carnegie Mellon University, Adobe Research",https://pix2pixzero.github.io
9
+ SDEdit,SDEdit,890.443823405714,880.5508125882768,MIT License,Stanford University,https://sde-image-editing.github.io
10
+ CycleDiffusion,CycleDiffusion,850.4930113803264,836.4878093946726,X11,Carnegie Mellon University,https://github.com/ChenWu98/cycle-diffusion
arena_elo/results/20240517/clean_battle_t2i_generation.json ADDED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/20240517/elo_results_t2i_generation.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:93808a9ce2f497109d0fc708e4055b6463a692502ef541ff28352f52b612916d
3
+ size 68172
arena_elo/results/20240517/t2i_generation_leaderboard.csv ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ PlayGround V2.5,PlayGround V2.5,1136.9514432133128,1081.5838551712898,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
+ PlayGround V2,PlayGround V2,1099.4286233187172,1042.590911846903,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
4
+ SDXLLightning,SDXLLightning,1062.4565867132737,1004.4096880141087,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
5
+ StableCascade,StableCascade,1061.93020315328,1006.1117357811837,stable-cascade-nc-community (other),Stability AI,https://huggingface.co/stabilityai/stable-cascade
6
+ PixArtAlpha,PixArtAlpha,1051.847602698194,981.1247821885942,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
7
+ PixArtSigma,PixArtSigma,1049.8339911951734,989.7640320919886,openrail++,PixArt-alpha,https://fal.ai/models/fal-ai/pixart-sigma
8
+ SDXL,SDXL,999.6167439144875,941.9623909945509,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
9
+ SDXLTurbo,SDXLTurbo,933.468824554199,875.8124778188443,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
10
+ LCM(v1.5/XL),LCM(v1.5/XL),929.425577747465,865.7356218313212,openrail++,Latent Consistency,https://fal.ai/models/fal-ai/fast-lcm-diffusion/api
11
+ OpenJourney,OpenJourney,857.2709081764949,793.4952273226107,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
12
+ LCM,LCM,817.7694953154022,773.4948395309905,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7
arena_elo/results/latest/clean_battle_image_editing.json CHANGED
@@ -791,77 +791,285 @@
791
  "anony": true,
792
  "tstamp": 1710535672.9791
793
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
794
  {
795
  "model_a": "CycleDiffusion",
796
- "model_b": "Pix2PixZero",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
797
  "winner": "model_b",
798
  "judge": "arena_user_10.16.25.191",
799
- "anony": true,
800
- "tstamp": 1711610477.1213
801
  },
802
  {
803
  "model_a": "CycleDiffusion",
804
- "model_b": "Pix2PixZero",
805
  "winner": "model_b",
806
- "judge": "arena_user_10.16.7.189",
 
 
 
 
 
 
 
 
807
  "anony": true,
808
- "tstamp": 1711629129.3894
809
  },
810
  {
811
- "model_a": "InstructPix2Pix",
 
 
 
 
 
 
 
 
812
  "model_b": "CycleDiffusion",
813
- "winner": "model_b",
814
- "judge": "arena_user_10.16.7.189",
815
  "anony": true,
816
- "tstamp": 1711629705.2246
817
  },
818
  {
819
- "model_a": "CycleDiffusion",
820
- "model_b": "Pix2PixZero",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
821
  "winner": "model_b",
822
  "judge": "arena_user_10.16.25.191",
823
  "anony": true,
824
- "tstamp": 1711630362.5575
 
 
 
 
 
 
 
 
825
  },
826
  {
827
  "model_a": "MagicBrush",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
828
  "model_b": "SDEdit",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
829
  "winner": "model_a",
830
- "judge": "arena_user_127.0.0.1",
831
  "anony": true,
832
- "tstamp": 1711631112.5207
833
  },
834
  {
835
  "model_a": "Pix2PixZero",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
836
  "model_b": "Prompt2prompt",
837
- "winner": "model_a",
838
- "judge": "arena_user_10.16.41.118",
839
  "anony": true,
840
- "tstamp": 1711631690.5127
841
  },
842
  {
843
  "model_a": "MagicBrush",
844
- "model_b": "InstructPix2Pix",
 
 
 
 
 
 
 
 
845
  "winner": "model_a",
846
- "judge": "arena_user_127.0.0.1",
847
  "anony": true,
848
- "tstamp": 1711633200.2923
849
  },
850
  {
851
  "model_a": "MagicBrush",
852
- "model_b": "InstructPix2Pix",
853
  "winner": "model_a",
854
- "judge": "arena_user_127.0.0.1",
855
  "anony": true,
856
- "tstamp": 1711633594.9922
857
  },
858
  {
859
- "model_a": "MagicBrush",
 
 
 
 
 
 
 
 
860
  "model_b": "SDEdit",
 
 
 
 
 
 
 
 
861
  "winner": "model_a",
862
- "judge": "arena_user_10.16.7.189",
863
  "anony": true,
864
- "tstamp": 1711635443.3071
865
  },
866
  {
867
  "model_a": "CycleDiffusion",
@@ -869,38 +1077,502 @@
869
  "winner": "model_b",
870
  "judge": "arena_user_10.16.25.191",
871
  "anony": true,
872
- "tstamp": 1711635899.3088
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
873
  },
874
  {
875
  "model_a": "SDEdit",
 
 
 
 
 
 
 
 
876
  "model_b": "MagicBrush",
 
 
 
 
 
 
 
 
877
  "winner": "model_b",
878
- "judge": "arena_user_10.16.41.118",
879
  "anony": true,
880
- "tstamp": 1711639015.428
881
  },
882
  {
883
  "model_a": "InstructPix2Pix",
 
 
 
 
 
 
 
 
884
  "model_b": "MagicBrush",
885
- "winner": "model_b",
886
- "judge": "arena_user_10.16.7.189",
887
  "anony": true,
888
- "tstamp": 1711646372.1201
889
  },
890
  {
891
- "model_a": "Pix2PixZero",
892
- "model_b": "Prompt2prompt",
893
  "winner": "model_b",
894
- "judge": "arena_user_10.16.17.217",
895
  "anony": true,
896
- "tstamp": 1712873850.0636
897
  },
898
  {
899
- "model_a": "MagicBrush",
900
- "model_b": "SDEdit",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
901
  "winner": "tie (bothbad)",
902
  "judge": "arena_user_10.16.25.191",
903
  "anony": true,
904
- "tstamp": 1712876598.7667
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
905
  }
906
  ]
 
791
  "anony": true,
792
  "tstamp": 1710535672.9791
793
  },
794
+ {
795
+ "model_a": "InfEdit",
796
+ "model_b": "MagicBrush",
797
+ "winner": "model_a",
798
+ "judge": "arena_user_10.16.25.191",
799
+ "anony": false,
800
+ "tstamp": 1714359818.6646
801
+ },
802
+ {
803
+ "model_a": "InstructPix2Pix",
804
+ "model_b": "Prompt2prompt",
805
+ "winner": "tie (bothbad)",
806
+ "judge": "arena_user_10.16.25.191",
807
+ "anony": true,
808
+ "tstamp": 1714363016.9972
809
+ },
810
+ {
811
+ "model_a": "InfEdit",
812
+ "model_b": "CosXLEdit",
813
+ "winner": "model_a",
814
+ "judge": "arena_user_10.16.25.191",
815
+ "anony": true,
816
+ "tstamp": 1714715956.3416
817
+ },
818
+ {
819
+ "model_a": "Pix2PixZero",
820
+ "model_b": "Prompt2prompt",
821
+ "winner": "tie (bothbad)",
822
+ "judge": "arena_user_10.16.2.201",
823
+ "anony": false,
824
+ "tstamp": 1714759928.3804
825
+ },
826
+ {
827
+ "model_a": "PNP",
828
+ "model_b": "InstructPix2Pix",
829
+ "winner": "model_a",
830
+ "judge": "arena_user_10.16.17.217",
831
+ "anony": true,
832
+ "tstamp": 1715246275.0118
833
+ },
834
+ {
835
+ "model_a": "SDEdit",
836
+ "model_b": "CosXLEdit",
837
+ "winner": "tie (bothbad)",
838
+ "judge": "arena_user_10.16.15.199",
839
+ "anony": true,
840
+ "tstamp": 1715247590.2235
841
+ },
842
  {
843
  "model_a": "CycleDiffusion",
844
+ "model_b": "CosXLEdit",
845
+ "winner": "model_b",
846
+ "judge": "arena_user_10.16.41.118",
847
+ "anony": false,
848
+ "tstamp": 1715406266.2562
849
+ },
850
+ {
851
+ "model_a": "CycleDiffusion",
852
+ "model_b": "CosXLEdit",
853
+ "winner": "model_a",
854
+ "judge": "arena_user_10.16.41.118",
855
+ "anony": false,
856
+ "tstamp": 1715406354.5284
857
+ },
858
+ {
859
+ "model_a": "CycleDiffusion",
860
+ "model_b": "CosXLEdit",
861
+ "winner": "model_b",
862
+ "judge": "arena_user_10.16.2.201",
863
+ "anony": false,
864
+ "tstamp": 1715406371.8227
865
+ },
866
+ {
867
+ "model_a": "CycleDiffusion",
868
+ "model_b": "CosXLEdit",
869
+ "winner": "model_b",
870
+ "judge": "arena_user_10.16.41.118",
871
+ "anony": false,
872
+ "tstamp": 1715406418.5066
873
+ },
874
+ {
875
+ "model_a": "CycleDiffusion",
876
+ "model_b": "CosXLEdit",
877
  "winner": "model_b",
878
  "judge": "arena_user_10.16.25.191",
879
+ "anony": false,
880
+ "tstamp": 1715406449.9401
881
  },
882
  {
883
  "model_a": "CycleDiffusion",
884
+ "model_b": "CosXLEdit",
885
  "winner": "model_b",
886
+ "judge": "arena_user_10.16.41.118",
887
+ "anony": false,
888
+ "tstamp": 1715406466.5778
889
+ },
890
+ {
891
+ "model_a": "InfEdit",
892
+ "model_b": "CycleDiffusion",
893
+ "winner": "model_a",
894
+ "judge": "arena_user_10.16.2.201",
895
  "anony": true,
896
+ "tstamp": 1715620708.6361
897
  },
898
  {
899
+ "model_a": "Prompt2prompt",
900
+ "model_b": "CosXLEdit",
901
+ "winner": "model_a",
902
+ "judge": "arena_user_10.16.41.118",
903
+ "anony": false,
904
+ "tstamp": 1715621013.5373
905
+ },
906
+ {
907
+ "model_a": "MagicBrush",
908
  "model_b": "CycleDiffusion",
909
+ "winner": "tie (bothbad)",
910
+ "judge": "arena_user_10.16.2.201",
911
  "anony": true,
912
+ "tstamp": 1715661224.0507
913
  },
914
  {
915
+ "model_a": "SDEdit",
916
+ "model_b": "PNP",
917
+ "winner": "tie (bothbad)",
918
+ "judge": "arena_user_10.16.41.118",
919
+ "anony": true,
920
+ "tstamp": 1715661259.6143
921
+ },
922
+ {
923
+ "model_a": "Pix2PixZero",
924
+ "model_b": "Prompt2prompt",
925
+ "winner": "tie (bothbad)",
926
+ "judge": "arena_user_10.16.41.118",
927
+ "anony": true,
928
+ "tstamp": 1715661288.6018
929
+ },
930
+ {
931
+ "model_a": "InstructPix2Pix",
932
+ "model_b": "Prompt2prompt",
933
  "winner": "model_b",
934
  "judge": "arena_user_10.16.25.191",
935
  "anony": true,
936
+ "tstamp": 1715661310.3621
937
+ },
938
+ {
939
+ "model_a": "CosXLEdit",
940
+ "model_b": "InstructPix2Pix",
941
+ "winner": "tie (bothbad)",
942
+ "judge": "arena_user_10.16.25.191",
943
+ "anony": true,
944
+ "tstamp": 1715718742.1258
945
  },
946
  {
947
  "model_a": "MagicBrush",
948
+ "model_b": "PNP",
949
+ "winner": "model_a",
950
+ "judge": "arena_user_10.16.2.201",
951
+ "anony": true,
952
+ "tstamp": 1715718773.1054
953
+ },
954
+ {
955
+ "model_a": "SDEdit",
956
+ "model_b": "CosXLEdit",
957
+ "winner": "tie (bothbad)",
958
+ "judge": "arena_user_10.16.2.201",
959
+ "anony": true,
960
+ "tstamp": 1715718785.2832
961
+ },
962
+ {
963
+ "model_a": "InstructPix2Pix",
964
  "model_b": "SDEdit",
965
+ "winner": "tie (bothbad)",
966
+ "judge": "arena_user_10.16.2.201",
967
+ "anony": true,
968
+ "tstamp": 1715718804.143
969
+ },
970
+ {
971
+ "model_a": "InfEdit",
972
+ "model_b": "CosXLEdit",
973
+ "winner": "model_b",
974
+ "judge": "arena_user_10.16.25.191",
975
+ "anony": true,
976
+ "tstamp": 1715718826.0248
977
+ },
978
+ {
979
+ "model_a": "InfEdit",
980
+ "model_b": "Prompt2prompt",
981
+ "winner": "model_a",
982
+ "judge": "arena_user_10.16.2.201",
983
+ "anony": true,
984
+ "tstamp": 1715718869.0041
985
+ },
986
+ {
987
+ "model_a": "InfEdit",
988
+ "model_b": "CosXLEdit",
989
+ "winner": "model_b",
990
+ "judge": "arena_user_10.16.2.201",
991
+ "anony": true,
992
+ "tstamp": 1715718904.9307
993
+ },
994
+ {
995
+ "model_a": "Prompt2prompt",
996
+ "model_b": "Pix2PixZero",
997
  "winner": "model_a",
998
+ "judge": "arena_user_10.16.25.191",
999
  "anony": true,
1000
+ "tstamp": 1715718933.1272
1001
  },
1002
  {
1003
  "model_a": "Pix2PixZero",
1004
+ "model_b": "MagicBrush",
1005
+ "winner": "tie (bothbad)",
1006
+ "judge": "arena_user_10.16.2.201",
1007
+ "anony": true,
1008
+ "tstamp": 1715718954.8497
1009
+ },
1010
+ {
1011
+ "model_a": "MagicBrush",
1012
+ "model_b": "PNP",
1013
+ "winner": "model_b",
1014
+ "judge": "arena_user_10.16.25.191",
1015
+ "anony": true,
1016
+ "tstamp": 1715718966.8633
1017
+ },
1018
+ {
1019
+ "model_a": "CycleDiffusion",
1020
  "model_b": "Prompt2prompt",
1021
+ "winner": "tie (bothbad)",
1022
+ "judge": "arena_user_10.16.25.191",
1023
  "anony": true,
1024
+ "tstamp": 1715719000.6673
1025
  },
1026
  {
1027
  "model_a": "MagicBrush",
1028
+ "model_b": "Pix2PixZero",
1029
+ "winner": "tie (bothbad)",
1030
+ "judge": "arena_user_10.16.25.191",
1031
+ "anony": true,
1032
+ "tstamp": 1715719019.5495
1033
+ },
1034
+ {
1035
+ "model_a": "InfEdit",
1036
+ "model_b": "Prompt2prompt",
1037
  "winner": "model_a",
1038
+ "judge": "arena_user_10.16.25.191",
1039
  "anony": true,
1040
+ "tstamp": 1715719035.903
1041
  },
1042
  {
1043
  "model_a": "MagicBrush",
1044
+ "model_b": "Pix2PixZero",
1045
  "winner": "model_a",
1046
+ "judge": "arena_user_10.16.25.191",
1047
  "anony": true,
1048
+ "tstamp": 1715719046.925
1049
  },
1050
  {
1051
+ "model_a": "CycleDiffusion",
1052
+ "model_b": "CosXLEdit",
1053
+ "winner": "tie (bothbad)",
1054
+ "judge": "arena_user_10.16.2.201",
1055
+ "anony": true,
1056
+ "tstamp": 1715719059.6291
1057
+ },
1058
+ {
1059
+ "model_a": "Prompt2prompt",
1060
  "model_b": "SDEdit",
1061
+ "winner": "tie (bothbad)",
1062
+ "judge": "arena_user_10.16.15.199",
1063
+ "anony": true,
1064
+ "tstamp": 1715719076.6727
1065
+ },
1066
+ {
1067
+ "model_a": "MagicBrush",
1068
+ "model_b": "PNP",
1069
  "winner": "model_a",
1070
+ "judge": "arena_user_10.16.25.191",
1071
  "anony": true,
1072
+ "tstamp": 1715719086.7836
1073
  },
1074
  {
1075
  "model_a": "CycleDiffusion",
 
1077
  "winner": "model_b",
1078
  "judge": "arena_user_10.16.25.191",
1079
  "anony": true,
1080
+ "tstamp": 1715719109.8071
1081
+ },
1082
+ {
1083
+ "model_a": "Prompt2prompt",
1084
+ "model_b": "InstructPix2Pix",
1085
+ "winner": "model_b",
1086
+ "judge": "arena_user_10.16.25.191",
1087
+ "anony": true,
1088
+ "tstamp": 1715719122.8237
1089
+ },
1090
+ {
1091
+ "model_a": "MagicBrush",
1092
+ "model_b": "SDEdit",
1093
+ "winner": "model_a",
1094
+ "judge": "arena_user_10.16.15.199",
1095
+ "anony": true,
1096
+ "tstamp": 1715719134.1345
1097
  },
1098
  {
1099
  "model_a": "SDEdit",
1100
+ "model_b": "CycleDiffusion",
1101
+ "winner": "tie (bothbad)",
1102
+ "judge": "arena_user_10.16.17.217",
1103
+ "anony": true,
1104
+ "tstamp": 1715719153.4359
1105
+ },
1106
+ {
1107
+ "model_a": "Pix2PixZero",
1108
  "model_b": "MagicBrush",
1109
+ "winner": "tie (bothbad)",
1110
+ "judge": "arena_user_10.16.17.217",
1111
+ "anony": true,
1112
+ "tstamp": 1715719160.5285
1113
+ },
1114
+ {
1115
+ "model_a": "MagicBrush",
1116
+ "model_b": "InstructPix2Pix",
1117
  "winner": "model_b",
1118
+ "judge": "arena_user_10.16.15.199",
1119
  "anony": true,
1120
+ "tstamp": 1715719171.4473
1121
  },
1122
  {
1123
  "model_a": "InstructPix2Pix",
1124
+ "model_b": "SDEdit",
1125
+ "winner": "tie (bothbad)",
1126
+ "judge": "arena_user_10.16.2.201",
1127
+ "anony": true,
1128
+ "tstamp": 1715719184.6227
1129
+ },
1130
+ {
1131
+ "model_a": "CosXLEdit",
1132
  "model_b": "MagicBrush",
1133
+ "winner": "model_a",
1134
+ "judge": "arena_user_10.16.2.201",
1135
  "anony": true,
1136
+ "tstamp": 1715719210.0429
1137
  },
1138
  {
1139
+ "model_a": "CycleDiffusion",
1140
+ "model_b": "MagicBrush",
1141
  "winner": "model_b",
1142
+ "judge": "arena_user_10.16.41.118",
1143
  "anony": true,
1144
+ "tstamp": 1715719219.6447
1145
  },
1146
  {
1147
+ "model_a": "PNP",
1148
+ "model_b": "Pix2PixZero",
1149
+ "winner": "tie (bothbad)",
1150
+ "judge": "arena_user_10.16.41.118",
1151
+ "anony": true,
1152
+ "tstamp": 1715719237.7036
1153
+ },
1154
+ {
1155
+ "model_a": "PNP",
1156
+ "model_b": "CycleDiffusion",
1157
+ "winner": "tie (bothbad)",
1158
+ "judge": "arena_user_10.16.25.191",
1159
+ "anony": true,
1160
+ "tstamp": 1715719249.4321
1161
+ },
1162
+ {
1163
+ "model_a": "Prompt2prompt",
1164
+ "model_b": "Pix2PixZero",
1165
+ "winner": "model_a",
1166
+ "judge": "arena_user_10.16.2.201",
1167
+ "anony": true,
1168
+ "tstamp": 1715719257.5877
1169
+ },
1170
+ {
1171
+ "model_a": "CosXLEdit",
1172
+ "model_b": "Pix2PixZero",
1173
  "winner": "tie (bothbad)",
1174
  "judge": "arena_user_10.16.25.191",
1175
  "anony": true,
1176
+ "tstamp": 1715719273.7637
1177
+ },
1178
+ {
1179
+ "model_a": "PNP",
1180
+ "model_b": "CosXLEdit",
1181
+ "winner": "model_b",
1182
+ "judge": "arena_user_10.16.17.217",
1183
+ "anony": true,
1184
+ "tstamp": 1715719288.4629
1185
+ },
1186
+ {
1187
+ "model_a": "Pix2PixZero",
1188
+ "model_b": "PNP",
1189
+ "winner": "model_b",
1190
+ "judge": "arena_user_10.16.41.118",
1191
+ "anony": true,
1192
+ "tstamp": 1715719299.1712
1193
+ },
1194
+ {
1195
+ "model_a": "PNP",
1196
+ "model_b": "MagicBrush",
1197
+ "winner": "model_b",
1198
+ "judge": "arena_user_10.16.2.201",
1199
+ "anony": true,
1200
+ "tstamp": 1715719306.5928
1201
+ },
1202
+ {
1203
+ "model_a": "InstructPix2Pix",
1204
+ "model_b": "PNP",
1205
+ "winner": "tie (bothbad)",
1206
+ "judge": "arena_user_10.16.15.199",
1207
+ "anony": true,
1208
+ "tstamp": 1715719356.0694
1209
+ },
1210
+ {
1211
+ "model_a": "Prompt2prompt",
1212
+ "model_b": "CosXLEdit",
1213
+ "winner": "model_a",
1214
+ "judge": "arena_user_10.16.25.191",
1215
+ "anony": true,
1216
+ "tstamp": 1715719368.0491
1217
+ },
1218
+ {
1219
+ "model_a": "Prompt2prompt",
1220
+ "model_b": "CycleDiffusion",
1221
+ "winner": "tie (bothbad)",
1222
+ "judge": "arena_user_10.16.41.118",
1223
+ "anony": true,
1224
+ "tstamp": 1715719379.185
1225
+ },
1226
+ {
1227
+ "model_a": "CycleDiffusion",
1228
+ "model_b": "Prompt2prompt",
1229
+ "winner": "tie (bothbad)",
1230
+ "judge": "arena_user_10.16.2.201",
1231
+ "anony": true,
1232
+ "tstamp": 1715719389.0771
1233
+ },
1234
+ {
1235
+ "model_a": "Pix2PixZero",
1236
+ "model_b": "MagicBrush",
1237
+ "winner": "model_b",
1238
+ "judge": "arena_user_10.16.17.217",
1239
+ "anony": true,
1240
+ "tstamp": 1715719397.7162
1241
+ },
1242
+ {
1243
+ "model_a": "PNP",
1244
+ "model_b": "InstructPix2Pix",
1245
+ "winner": "tie (bothbad)",
1246
+ "judge": "arena_user_10.16.2.201",
1247
+ "anony": true,
1248
+ "tstamp": 1715719406.4165
1249
+ },
1250
+ {
1251
+ "model_a": "Pix2PixZero",
1252
+ "model_b": "PNP",
1253
+ "winner": "model_b",
1254
+ "judge": "arena_user_10.16.25.191",
1255
+ "anony": true,
1256
+ "tstamp": 1715719429.1002
1257
+ },
1258
+ {
1259
+ "model_a": "CosXLEdit",
1260
+ "model_b": "MagicBrush",
1261
+ "winner": "model_a",
1262
+ "judge": "arena_user_10.16.2.201",
1263
+ "anony": true,
1264
+ "tstamp": 1715719435.4694
1265
+ },
1266
+ {
1267
+ "model_a": "PNP",
1268
+ "model_b": "SDEdit",
1269
+ "winner": "tie (bothbad)",
1270
+ "judge": "arena_user_10.16.2.201",
1271
+ "anony": true,
1272
+ "tstamp": 1715719454.4526
1273
+ },
1274
+ {
1275
+ "model_a": "InfEdit",
1276
+ "model_b": "PNP",
1277
+ "winner": "tie (bothbad)",
1278
+ "judge": "arena_user_10.16.17.217",
1279
+ "anony": true,
1280
+ "tstamp": 1715719470.154
1281
+ },
1282
+ {
1283
+ "model_a": "MagicBrush",
1284
+ "model_b": "PNP",
1285
+ "winner": "model_a",
1286
+ "judge": "arena_user_10.16.41.118",
1287
+ "anony": true,
1288
+ "tstamp": 1715719482.3114
1289
+ },
1290
+ {
1291
+ "model_a": "SDEdit",
1292
+ "model_b": "PNP",
1293
+ "winner": "tie",
1294
+ "judge": "arena_user_10.16.2.201",
1295
+ "anony": true,
1296
+ "tstamp": 1715719499.9643
1297
+ },
1298
+ {
1299
+ "model_a": "InstructPix2Pix",
1300
+ "model_b": "MagicBrush",
1301
+ "winner": "model_b",
1302
+ "judge": "arena_user_10.16.2.201",
1303
+ "anony": true,
1304
+ "tstamp": 1715719513.7317
1305
+ },
1306
+ {
1307
+ "model_a": "InfEdit",
1308
+ "model_b": "PNP",
1309
+ "winner": "model_a",
1310
+ "judge": "arena_user_10.16.15.199",
1311
+ "anony": true,
1312
+ "tstamp": 1715719527.69
1313
+ },
1314
+ {
1315
+ "model_a": "Prompt2prompt",
1316
+ "model_b": "MagicBrush",
1317
+ "winner": "tie (bothbad)",
1318
+ "judge": "arena_user_10.16.41.118",
1319
+ "anony": true,
1320
+ "tstamp": 1715719542.751
1321
+ },
1322
+ {
1323
+ "model_a": "Pix2PixZero",
1324
+ "model_b": "InfEdit",
1325
+ "winner": "tie (bothbad)",
1326
+ "judge": "arena_user_10.16.15.199",
1327
+ "anony": true,
1328
+ "tstamp": 1715719560.9912
1329
+ },
1330
+ {
1331
+ "model_a": "PNP",
1332
+ "model_b": "Pix2PixZero",
1333
+ "winner": "tie (bothbad)",
1334
+ "judge": "arena_user_10.16.2.201",
1335
+ "anony": true,
1336
+ "tstamp": 1715719575.3291
1337
+ },
1338
+ {
1339
+ "model_a": "PNP",
1340
+ "model_b": "CosXLEdit",
1341
+ "winner": "model_b",
1342
+ "judge": "arena_user_10.16.17.217",
1343
+ "anony": true,
1344
+ "tstamp": 1715719581.9552
1345
+ },
1346
+ {
1347
+ "model_a": "Pix2PixZero",
1348
+ "model_b": "Prompt2prompt",
1349
+ "winner": "tie (bothbad)",
1350
+ "judge": "arena_user_10.16.25.191",
1351
+ "anony": true,
1352
+ "tstamp": 1715719591.9907
1353
+ },
1354
+ {
1355
+ "model_a": "CosXLEdit",
1356
+ "model_b": "SDEdit",
1357
+ "winner": "model_a",
1358
+ "judge": "arena_user_10.16.2.201",
1359
+ "anony": true,
1360
+ "tstamp": 1715719601.8819
1361
+ },
1362
+ {
1363
+ "model_a": "InfEdit",
1364
+ "model_b": "MagicBrush",
1365
+ "winner": "model_b",
1366
+ "judge": "arena_user_10.16.41.118",
1367
+ "anony": true,
1368
+ "tstamp": 1715719612.1837
1369
+ },
1370
+ {
1371
+ "model_a": "SDEdit",
1372
+ "model_b": "InstructPix2Pix",
1373
+ "winner": "tie (bothbad)",
1374
+ "judge": "arena_user_10.16.2.201",
1375
+ "anony": true,
1376
+ "tstamp": 1715719620.469
1377
+ },
1378
+ {
1379
+ "model_a": "InstructPix2Pix",
1380
+ "model_b": "MagicBrush",
1381
+ "winner": "tie (bothbad)",
1382
+ "judge": "arena_user_10.16.41.118",
1383
+ "anony": true,
1384
+ "tstamp": 1715719627.34
1385
+ },
1386
+ {
1387
+ "model_a": "MagicBrush",
1388
+ "model_b": "Prompt2prompt",
1389
+ "winner": "model_a",
1390
+ "judge": "arena_user_10.16.2.201",
1391
+ "anony": true,
1392
+ "tstamp": 1715719632.694
1393
+ },
1394
+ {
1395
+ "model_a": "Prompt2prompt",
1396
+ "model_b": "SDEdit",
1397
+ "winner": "tie (bothbad)",
1398
+ "judge": "arena_user_10.16.41.118",
1399
+ "anony": true,
1400
+ "tstamp": 1715719652.2038
1401
+ },
1402
+ {
1403
+ "model_a": "SDEdit",
1404
+ "model_b": "Prompt2prompt",
1405
+ "winner": "tie (bothbad)",
1406
+ "judge": "arena_user_10.16.25.191",
1407
+ "anony": true,
1408
+ "tstamp": 1715719661.8855
1409
+ },
1410
+ {
1411
+ "model_a": "CosXLEdit",
1412
+ "model_b": "Prompt2prompt",
1413
+ "winner": "tie (bothbad)",
1414
+ "judge": "arena_user_10.16.2.201",
1415
+ "anony": true,
1416
+ "tstamp": 1715719677.2949
1417
+ },
1418
+ {
1419
+ "model_a": "MagicBrush",
1420
+ "model_b": "Prompt2prompt",
1421
+ "winner": "model_a",
1422
+ "judge": "arena_user_10.16.2.201",
1423
+ "anony": true,
1424
+ "tstamp": 1715719687.3022
1425
+ },
1426
+ {
1427
+ "model_a": "SDEdit",
1428
+ "model_b": "Prompt2prompt",
1429
+ "winner": "model_b",
1430
+ "judge": "arena_user_10.16.2.201",
1431
+ "anony": true,
1432
+ "tstamp": 1715719699.47
1433
+ },
1434
+ {
1435
+ "model_a": "Pix2PixZero",
1436
+ "model_b": "InfEdit",
1437
+ "winner": "model_b",
1438
+ "judge": "arena_user_10.16.2.201",
1439
+ "anony": true,
1440
+ "tstamp": 1715719706.2375
1441
+ },
1442
+ {
1443
+ "model_a": "CosXLEdit",
1444
+ "model_b": "Prompt2prompt",
1445
+ "winner": "model_a",
1446
+ "judge": "arena_user_10.16.17.217",
1447
+ "anony": true,
1448
+ "tstamp": 1715719717.3564
1449
+ },
1450
+ {
1451
+ "model_a": "InstructPix2Pix",
1452
+ "model_b": "CosXLEdit",
1453
+ "winner": "tie (bothbad)",
1454
+ "judge": "arena_user_10.16.25.191",
1455
+ "anony": true,
1456
+ "tstamp": 1715719722.5542
1457
+ },
1458
+ {
1459
+ "model_a": "InfEdit",
1460
+ "model_b": "InstructPix2Pix",
1461
+ "winner": "tie (bothbad)",
1462
+ "judge": "arena_user_10.16.41.118",
1463
+ "anony": true,
1464
+ "tstamp": 1715719728.5417
1465
+ },
1466
+ {
1467
+ "model_a": "MagicBrush",
1468
+ "model_b": "SDEdit",
1469
+ "winner": "model_a",
1470
+ "judge": "arena_user_10.16.2.201",
1471
+ "anony": true,
1472
+ "tstamp": 1715719737.2385
1473
+ },
1474
+ {
1475
+ "model_a": "MagicBrush",
1476
+ "model_b": "Pix2PixZero",
1477
+ "winner": "tie (bothbad)",
1478
+ "judge": "arena_user_10.16.15.199",
1479
+ "anony": true,
1480
+ "tstamp": 1715815138.5243
1481
+ },
1482
+ {
1483
+ "model_a": "CosXLEdit",
1484
+ "model_b": "Prompt2prompt",
1485
+ "winner": "model_b",
1486
+ "judge": "arena_user_10.16.17.217",
1487
+ "anony": true,
1488
+ "tstamp": 1715815152.0033
1489
+ },
1490
+ {
1491
+ "model_a": "Pix2PixZero",
1492
+ "model_b": "Prompt2prompt",
1493
+ "winner": "tie (bothbad)",
1494
+ "judge": "arena_user_10.16.41.118",
1495
+ "anony": true,
1496
+ "tstamp": 1715815169.0475
1497
+ },
1498
+ {
1499
+ "model_a": "InstructPix2Pix",
1500
+ "model_b": "SDEdit",
1501
+ "winner": "model_b",
1502
+ "judge": "arena_user_10.16.41.118",
1503
+ "anony": true,
1504
+ "tstamp": 1715815187.1917
1505
+ },
1506
+ {
1507
+ "model_a": "InstructPix2Pix",
1508
+ "model_b": "Pix2PixZero",
1509
+ "winner": "tie (bothbad)",
1510
+ "judge": "arena_user_10.16.2.201",
1511
+ "anony": true,
1512
+ "tstamp": 1715815197.5233
1513
+ },
1514
+ {
1515
+ "model_a": "Pix2PixZero",
1516
+ "model_b": "SDEdit",
1517
+ "winner": "tie (bothbad)",
1518
+ "judge": "arena_user_10.16.2.201",
1519
+ "anony": true,
1520
+ "tstamp": 1715815209.8285
1521
+ },
1522
+ {
1523
+ "model_a": "CycleDiffusion",
1524
+ "model_b": "MagicBrush",
1525
+ "winner": "model_b",
1526
+ "judge": "arena_user_10.16.2.201",
1527
+ "anony": true,
1528
+ "tstamp": 1715815228.6736
1529
+ },
1530
+ {
1531
+ "model_a": "InfEdit",
1532
+ "model_b": "Pix2PixZero",
1533
+ "winner": "tie (bothbad)",
1534
+ "judge": "arena_user_10.16.2.201",
1535
+ "anony": true,
1536
+ "tstamp": 1715815236.3935
1537
+ },
1538
+ {
1539
+ "model_a": "SDEdit",
1540
+ "model_b": "PNP",
1541
+ "winner": "tie (bothbad)",
1542
+ "judge": "arena_user_10.16.25.191",
1543
+ "anony": true,
1544
+ "tstamp": 1715815265.9705
1545
+ },
1546
+ {
1547
+ "model_a": "MagicBrush",
1548
+ "model_b": "SDEdit",
1549
+ "winner": "tie (bothbad)",
1550
+ "judge": "arena_user_10.16.15.199",
1551
+ "anony": true,
1552
+ "tstamp": 1715815278.5019
1553
+ },
1554
+ {
1555
+ "model_a": "CycleDiffusion",
1556
+ "model_b": "CosXLEdit",
1557
+ "winner": "tie (bothbad)",
1558
+ "judge": "arena_user_10.16.15.199",
1559
+ "anony": true,
1560
+ "tstamp": 1715815294.5978
1561
+ },
1562
+ {
1563
+ "model_a": "MagicBrush",
1564
+ "model_b": "InfEdit",
1565
+ "winner": "model_a",
1566
+ "judge": "arena_user_10.16.17.217",
1567
+ "anony": true,
1568
+ "tstamp": 1715815325.4468
1569
+ },
1570
+ {
1571
+ "model_a": "MagicBrush",
1572
+ "model_b": "Pix2PixZero",
1573
+ "winner": "model_a",
1574
+ "judge": "arena_user_10.16.41.118",
1575
+ "anony": true,
1576
+ "tstamp": 1715913098.6617
1577
  }
1578
  ]
arena_elo/results/latest/clean_battle_t2i_generation.json CHANGED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/latest/elo_results_image_editing.pkl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:d66a54af51d2ecf89f461dbb4e15090d084638596952d3541ce369798a525ff3
3
- size 57096
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:837f11fd6cda1fe2d6a5cc1c239a207725ad0157b16282303cb684427ddc7e9d
3
+ size 62484
arena_elo/results/latest/elo_results_t2i_generation.pkl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:caf98f560387fa9d6b8c233e9915807adad62315cfdd6d4a5e7c9fda30140eb8
3
- size 62422
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:93808a9ce2f497109d0fc708e4055b6463a692502ef541ff28352f52b612916d
3
+ size 68172
arena_elo/results/latest/image_editing_leaderboard.csv CHANGED
@@ -1,8 +1,10 @@
1
  key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
- Prompt2prompt,Prompt2prompt,1188.219371435949,1160.9021011448333,Apache-2.0,"Google, Tel Aviv University",https://prompt-to-prompt.github.io
3
- PNP,PNP,1133.8594830307645,1160.2784411172045,-,Weizmann Institute of Science,https://github.com/MichalGeyer/plug-and-play
4
- InstructPix2Pix,InstructPix2Pix,1086.6617653998492,1065.4343032662,"Copyright 2023 Timothy Brooks, Aleksander Holynski, Alexei A. Efros","University of California, Berkeley",https://www.timothybrooks.com/instruct-pix2pix
5
- MagicBrush,MagicBrush,1084.8708678670623,1120.3917913590851,CC-BY-4.0,"The Ohio State University, University of Waterloo",https://osu-nlp-group.github.io/MagicBrush
6
- Pix2PixZero,Pix2PixZero,983.9050014855375,949.5286840298457,MIT License,"Carnegie Mellon University, Adobe Research",https://pix2pixzero.github.io
7
- CycleDiffusion,CycleDiffusion,847.634435323394,811.6166545238106,X11,Carnegie Mellon University,https://github.com/ChenWu98/cycle-diffusion
8
- SDEdit,SDEdit,674.8490754574439,731.8480245590208,MIT License,Stanford University,https://sde-image-editing.github.io
 
 
 
1
  key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ CosXLEdit,CosXLEdit,1097.63559213644,1085.7285800995926,cosxl-nc-community,Stability AI,https://huggingface.co/spaces/multimodalart/cosxl
3
+ MagicBrush,MagicBrush,1075.1489922450316,1086.8819832924794,CC-BY-4.0,"The Ohio State University, University of Waterloo",https://osu-nlp-group.github.io/MagicBrush
4
+ InfEdit,InfEdit,1065.4719519196174,1090.684638162955,Apache-2.0,"University of Michigan, University of California, Berkeley",https://huggingface.co/spaces/sled-umich/InfEdit
5
+ Prompt2prompt,Prompt2prompt,1063.1432047252297,1060.8146250689238,Apache-2.0,"Google, Tel Aviv University",https://prompt-to-prompt.github.io
6
+ InstructPix2Pix,InstructPix2Pix,1043.9312648233226,1028.7932718869638,"Copyright 2023 Timothy Brooks, Aleksander Holynski, Alexei A. Efros","University of California, Berkeley",https://www.timothybrooks.com/instruct-pix2pix
7
+ PNP,PNP,1022.4342554377677,1043.322342347598,-,Weizmann Institute of Science,https://github.com/MichalGeyer/plug-and-play
8
+ Pix2PixZero,Pix2PixZero,891.2979039265506,886.7359371585381,MIT License,"Carnegie Mellon University, Adobe Research",https://pix2pixzero.github.io
9
+ SDEdit,SDEdit,890.443823405714,880.5508125882768,MIT License,Stanford University,https://sde-image-editing.github.io
10
+ CycleDiffusion,CycleDiffusion,850.4930113803264,836.4878093946726,X11,Carnegie Mellon University,https://github.com/ChenWu98/cycle-diffusion
arena_elo/results/latest/t2i_generation_leaderboard.csv CHANGED
@@ -1,10 +1,12 @@
1
  key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
- PlayGround V2,PlayGround V2,1096.7894880225679,1099.8051043857877,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
3
- PlayGround V2.5,PlayGround V2.5,1087.8676967844767,1102.012177335679,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
4
- StableCascade,StableCascade,1055.9173326915914,1059.3764815279687,stable-cascade-nc-community (other),Stability AI,https://huggingface.co/stabilityai/stable-cascade
5
- PixArtAlpha,PixArtAlpha,1033.9990481857885,1022.7034421485712,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
6
- SDXLLightning,SDXLLightning,1033.7993884424232,1038.4887196068619,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
7
- SDXL,SDXL,1001.9345229118052,1000.9893451213411,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
8
- SDXLTurbo,SDXLTurbo,954.8868434684313,951.3491425503697,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
9
- OpenJourney,OpenJourney,888.3709717134242,873.7483257587076,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
10
- LCM,LCM,846.4347077794937,852.2372365264126,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7
 
 
 
1
  key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ PlayGround V2.5,PlayGround V2.5,1136.9514432133128,1081.5838551712898,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
+ PlayGround V2,PlayGround V2,1099.4286233187172,1042.590911846903,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
4
+ SDXLLightning,SDXLLightning,1062.4565867132737,1004.4096880141087,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
5
+ StableCascade,StableCascade,1061.93020315328,1006.1117357811837,stable-cascade-nc-community (other),Stability AI,https://huggingface.co/stabilityai/stable-cascade
6
+ PixArtAlpha,PixArtAlpha,1051.847602698194,981.1247821885942,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
7
+ PixArtSigma,PixArtSigma,1049.8339911951734,989.7640320919886,openrail++,PixArt-alpha,https://fal.ai/models/fal-ai/pixart-sigma
8
+ SDXL,SDXL,999.6167439144875,941.9623909945509,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
9
+ SDXLTurbo,SDXLTurbo,933.468824554199,875.8124778188443,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
10
+ LCM(v1.5/XL),LCM(v1.5/XL),929.425577747465,865.7356218313212,openrail++,Latent Consistency,https://fal.ai/models/fal-ai/fast-lcm-diffusion/api
11
+ OpenJourney,OpenJourney,857.2709081764949,793.4952273226107,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
12
+ LCM,LCM,817.7694953154022,773.4948395309905,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7
model/fetch_museum_results/__init__.py ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from .imagen_museum import TASK_DICT, DOMAIN
2
+ from .imagen_museum import fetch_indexes
3
+ import random
4
+
5
+ ARENA_TO_IG_MUSEUM = {"LCM(v1.5/XL)":"LCM",
6
+ "PlayGroundV2.5": "PlayGroundV2_5"}
7
+
8
+ def draw2_from_imagen_museum(task, model_name1, model_name2):
9
+ task_name = TASK_DICT[task]
10
+ model_name1 = ARENA_TO_IG_MUSEUM[model_name1] if model_name1 in ARENA_TO_IG_MUSEUM else model_name1
11
+ model_name2 = ARENA_TO_IG_MUSEUM[model_name2] if model_name2 in ARENA_TO_IG_MUSEUM else model_name2
12
+
13
+ domain = DOMAIN
14
+ baselink = domain + task_name
15
+
16
+ matched_results = fetch_indexes(baselink)
17
+ r = random.Random()
18
+ uid, value = r.choice(list(matched_results.items()))
19
+ image_link_1 = baselink + "/" + model_name1 + "/" + uid
20
+ image_link_2 = baselink + "/" + model_name2 + "/" + uid
21
+
22
+ if task == "t2i": # Image Gen
23
+ prompt = value['prompt']
24
+ return [[image_link_1, image_link_2], [prompt]]
25
+ if task == "tie": # Image Edit
26
+ instruction = value['instruction']
27
+ input_caption = value['source_global_caption']
28
+ output_caption = value['target_global_caption']
29
+ source_image_link = baselink + "/" + "input" + "/" + uid
30
+ return [[source_image_link, image_link_1, image_link_2], [input_caption, output_caption, instruction]]
31
+ else:
32
+ raise ValueError("Task not supported")
33
+
34
+ def draw_from_imagen_museum(task, model_name):
35
+ task_name = TASK_DICT[task]
36
+ model_name = ARENA_TO_IG_MUSEUM[model_name] if model_name in ARENA_TO_IG_MUSEUM else model_name
37
+
38
+ domain = DOMAIN
39
+ baselink = domain + task_name
40
+
41
+ matched_results = fetch_indexes(baselink)
42
+ r = random.Random()
43
+ uid, value = r.choice(list(matched_results.items()))
44
+ model = model_name
45
+ image_link = baselink + "/" + model + "/" + uid
46
+ print(image_link)
47
+
48
+ if task == "t2i": # Image Gen
49
+ prompt = value['prompt']
50
+ return [image_link, prompt]
51
+ if task == "tie": # Image Edit
52
+ instruction = value['instruction']
53
+ input_caption = value['source_global_caption']
54
+ output_caption = value['target_global_caption']
55
+ source_image_link = baselink + "/" + "input" + "/" + uid
56
+ return [[source_image_link, image_link], [input_caption, output_caption, instruction]]
57
+ else:
58
+ raise ValueError("Task not supported")
model/fetch_museum_results/imagen_museum/__init__.py ADDED
@@ -0,0 +1,129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import csv
2
+ import requests
3
+ from io import StringIO
4
+ from typing import Union, Optional, Tuple
5
+ from PIL import Image
6
+ import random
7
+
8
+ __version__ = "0.0.1_GenAI_Arena"
9
+
10
+ DOMAIN = "https://chromaica.github.io/Museum/"
11
+
12
+ TASK_DICT = {
13
+ "t2i": "ImagenHub_Text-Guided_IG",
14
+ "tie": "ImagenHub_Text-Guided_IE",
15
+ "mie": "ImagenHub_Control-Guided_IG",
16
+ "cig": "ImagenHub_Control-Guided_IE",
17
+ "msdig": "ImagenHub_Multi-Concept_IC",
18
+ "sdig": "ImagenHub_Subject-Driven_IG",
19
+ "sdie": "ImagenHub_Subject-Driven_IE"
20
+ }
21
+
22
+ t2i_models= [
23
+ "SD",
24
+ "SDXL",
25
+ "OpenJourney",
26
+ "DeepFloydIF",
27
+ "DALLE2"
28
+ ]
29
+
30
+ mie_models = [
31
+ "Glide",
32
+ "SDInpaint",
33
+ "BlendedDiffusion",
34
+ "SDXLInpaint"
35
+ ]
36
+
37
+ tie_models = [
38
+ "DiffEdit",
39
+ "MagicBrush",
40
+ "InstructPix2Pix",
41
+ "Prompt2prompt",
42
+ "Text2Live",
43
+ "SDEdit",
44
+ "CycleDiffusion",
45
+ "Pix2PixZero"
46
+ ]
47
+
48
+ sdig_models = [
49
+ "DreamBooth",
50
+ "DreamBoothLora",
51
+ "TextualInversion",
52
+ "BLIPDiffusion_Gen"
53
+ ]
54
+
55
+ sdie_models = [
56
+ "PhotoSwap",
57
+ "DreamEdit",
58
+ "BLIPDiffusion_Edit"
59
+ ]
60
+
61
+ msdig_models = [
62
+ "DreamBooth",
63
+ "CustomDiffusion",
64
+ "TextualInversion"
65
+ ]
66
+
67
+ cig_models = [
68
+ "ControlNet",
69
+ "UniControl"
70
+ ]
71
+
72
+ def fetch_csv_keys(url):
73
+ """
74
+ Fetches a CSV file from a given URL and parses it into a list of keys,
75
+ ignoring the header line.
76
+ """
77
+ response = requests.get(url)
78
+ response.raise_for_status() # Ensure we notice bad responses
79
+
80
+ # Use StringIO to turn the fetched text data into a file-like object
81
+ csv_file = StringIO(response.text)
82
+
83
+ # Create a CSV reader
84
+ csv_reader = csv.reader(csv_file)
85
+
86
+ # Skip the header
87
+ next(csv_reader, None)
88
+
89
+ # Return the list of keys
90
+ return [row[0] for row in csv_reader if row]
91
+
92
+ def fetch_json_data(url):
93
+ """
94
+ Fetches JSON data from a given URL.
95
+ """
96
+ response = requests.get(url)
97
+ response.raise_for_status()
98
+ return response.json()
99
+
100
+ def fetch_data_and_match(csv_url, json_url):
101
+ """
102
+ Fetches a list of keys from a CSV and then fetches JSON data and matches the keys to the JSON.
103
+ """
104
+ # Fetch keys from CSV
105
+ keys = fetch_csv_keys(csv_url)
106
+
107
+ # Fetch JSON data
108
+ json_data = fetch_json_data(json_url)
109
+
110
+ # Extract relevant data using keys
111
+ matched_data = {key: json_data.get(key) for key in keys if key in json_data}
112
+
113
+ return matched_data
114
+
115
+ def fetch_indexes(baselink):
116
+ matched_results = fetch_data_and_match(baselink+"/dataset_lookup.csv", baselink+"/dataset_lookup.json")
117
+ return matched_results
118
+
119
+ if __name__ == "__main__":
120
+ domain = "https://chromaica.github.io/Museum/"
121
+ baselink = domain + "ImagenHub_Text-Guided_IE"
122
+ matched_results = fetch_indexes(baselink)
123
+ for uid, value in matched_results.items():
124
+ print(uid)
125
+ model = "CycleDiffusion"
126
+ image_link = baselink + "/" + model + "/" + uid
127
+ print(image_link)
128
+ instruction = value['instruction']
129
+ print(instruction)
model/model_manager.py CHANGED
@@ -6,6 +6,7 @@ import io, base64, json
6
  import spaces
7
  from PIL import Image
8
  from .models import IMAGE_GENERATION_MODELS, IMAGE_EDITION_MODELS, VIDEO_GENERATION_MODELS, load_pipeline
 
9
 
10
  class ModelManager:
11
  def __init__(self):
@@ -28,6 +29,20 @@ class ModelManager:
28
  result = pipe(prompt=prompt)
29
  return result
30
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  def generate_image_ig_parallel_anony(self, prompt, model_A, model_B):
32
  if model_A == "" and model_B == "":
33
  model_names = random.sample([model for model in self.model_ig_list], 2)
@@ -35,23 +50,59 @@ class ModelManager:
35
  model_names = [model_A, model_B]
36
 
37
  with concurrent.futures.ThreadPoolExecutor() as executor:
38
- futures = [executor.submit(self.generate_image_ig, prompt, model) for model in model_names]
 
39
  results = [future.result() for future in futures]
40
  return results[0], results[1], model_names[0], model_names[1]
41
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  def generate_image_ig_parallel(self, prompt, model_A, model_B):
43
  model_names = [model_A, model_B]
44
  with concurrent.futures.ThreadPoolExecutor() as executor:
45
- futures = [executor.submit(self.generate_image_ig, prompt, model) for model in model_names]
 
46
  results = [future.result() for future in futures]
47
  return results[0], results[1]
48
 
49
- @spaces.GPU(duration=150)
 
 
 
 
 
 
 
 
 
 
50
  def generate_image_ie(self, textbox_source, textbox_target, textbox_instruct, source_image, model_name):
51
  pipe = self.load_model_pipe(model_name)
52
  result = pipe(src_image = source_image, src_prompt = textbox_source, target_prompt = textbox_target, instruct_prompt = textbox_instruct)
53
  return result
54
 
 
 
 
 
 
 
 
 
 
55
  def generate_image_ie_parallel(self, textbox_source, textbox_target, textbox_instruct, source_image, model_A, model_B):
56
  model_names = [model_A, model_B]
57
  with concurrent.futures.ThreadPoolExecutor() as executor:
@@ -61,6 +112,18 @@ class ModelManager:
61
  results = [future.result() for future in futures]
62
  return results[0], results[1]
63
 
 
 
 
 
 
 
 
 
 
 
 
 
64
  def generate_image_ie_parallel_anony(self, textbox_source, textbox_target, textbox_instruct, source_image, model_A, model_B):
65
  if model_A == "" and model_B == "":
66
  model_names = random.sample([model for model in self.model_ie_list], 2)
@@ -71,12 +134,35 @@ class ModelManager:
71
  results = [future.result() for future in futures]
72
  return results[0], results[1], model_names[0], model_names[1]
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  @spaces.GPU(duration=150)
75
  def generate_video_vg(self, prompt, model_name):
76
  pipe = self.load_model_pipe(model_name)
77
  result = pipe(prompt=prompt)
78
  return result
79
 
 
 
 
 
 
 
 
 
80
  def generate_video_vg_parallel_anony(self, prompt, model_A, model_B):
81
  if model_A == "" and model_B == "":
82
  model_names = random.sample([model for model in self.model_vg_list], 2)
@@ -84,13 +170,28 @@ class ModelManager:
84
  model_names = [model_A, model_B]
85
 
86
  with concurrent.futures.ThreadPoolExecutor() as executor:
87
- futures = [executor.submit(self.generate_video_vg, prompt, model) for model in model_names]
 
88
  results = [future.result() for future in futures]
89
  return results[0], results[1], model_names[0], model_names[1]
90
 
 
 
 
 
 
 
 
 
91
  def generate_video_vg_parallel(self, prompt, model_A, model_B):
92
  model_names = [model_A, model_B]
93
  with concurrent.futures.ThreadPoolExecutor() as executor:
94
- futures = [executor.submit(self.generate_video_vg, prompt, model) for model in model_names]
 
95
  results = [future.result() for future in futures]
96
- return results[0], results[1]
 
 
 
 
 
 
6
  import spaces
7
  from PIL import Image
8
  from .models import IMAGE_GENERATION_MODELS, IMAGE_EDITION_MODELS, VIDEO_GENERATION_MODELS, load_pipeline
9
+ from .fetch_museum_results import draw_from_imagen_museum, draw2_from_imagen_museum
10
 
11
  class ModelManager:
12
  def __init__(self):
 
29
  result = pipe(prompt=prompt)
30
  return result
31
 
32
+ def generate_image_ig_api(self, prompt, model_name):
33
+ pipe = self.load_model_pipe(model_name)
34
+ result = pipe(prompt=prompt)
35
+ return result
36
+
37
+ def generate_image_ig_museum(self, model_name):
38
+ model_name = model_name.split('_')[1]
39
+ result_list = draw_from_imagen_museum("t2i", model_name)
40
+ image_link = result_list[0]
41
+ prompt = result_list[1]
42
+
43
+ return image_link, prompt
44
+
45
+
46
  def generate_image_ig_parallel_anony(self, prompt, model_A, model_B):
47
  if model_A == "" and model_B == "":
48
  model_names = random.sample([model for model in self.model_ig_list], 2)
 
50
  model_names = [model_A, model_B]
51
 
52
  with concurrent.futures.ThreadPoolExecutor() as executor:
53
+ futures = [executor.submit(self.generate_image_ig, prompt, model) if model.startswith("imagenhub")
54
+ else executor.submit(self.generate_image_ig_api, prompt, model) for model in model_names]
55
  results = [future.result() for future in futures]
56
  return results[0], results[1], model_names[0], model_names[1]
57
 
58
+ def generate_image_ig_museum_parallel_anony(self, model_A, model_B):
59
+ if model_A == "" and model_B == "":
60
+ model_names = random.sample([model for model in self.model_ig_list], 2)
61
+ else:
62
+ model_names = [model_A, model_B]
63
+
64
+ with concurrent.futures.ThreadPoolExecutor() as executor:
65
+ model_1 = model_names[0].split('_')[1]
66
+ model_2 = model_names[1].split('_')[1]
67
+ result_list = draw2_from_imagen_museum("t2i", model_1, model_2)
68
+ image_links = result_list[0]
69
+ prompt_list = result_list[1]
70
+
71
+ return image_links[0], image_links[1], model_names[0], model_names[1], prompt_list[0]
72
+
73
  def generate_image_ig_parallel(self, prompt, model_A, model_B):
74
  model_names = [model_A, model_B]
75
  with concurrent.futures.ThreadPoolExecutor() as executor:
76
+ futures = [executor.submit(self.generate_image_ig, prompt, model) if model.startswith("imagenhub")
77
+ else executor.submit(self.generate_image_ig_api, prompt, model) for model in model_names]
78
  results = [future.result() for future in futures]
79
  return results[0], results[1]
80
 
81
+ def generate_image_ig_museum_parallel(self, model_A, model_B):
82
+ with concurrent.futures.ThreadPoolExecutor() as executor:
83
+ model_1 = model_A.split('_')[1]
84
+ model_2 = model_B.split('_')[1]
85
+ result_list = draw2_from_imagen_museum("t2i", model_1, model_2)
86
+ image_links = result_list[0]
87
+ prompt_list = result_list[1]
88
+ return image_links[0], image_links[1], prompt_list[0]
89
+
90
+
91
+ @spaces.GPU(duration=200)
92
  def generate_image_ie(self, textbox_source, textbox_target, textbox_instruct, source_image, model_name):
93
  pipe = self.load_model_pipe(model_name)
94
  result = pipe(src_image = source_image, src_prompt = textbox_source, target_prompt = textbox_target, instruct_prompt = textbox_instruct)
95
  return result
96
 
97
+ def generate_image_ie_museum(self, model_name):
98
+ model_name = model_name.split('_')[1]
99
+ result_list = draw_from_imagen_museum("tie", model_name)
100
+ image_links = result_list[0]
101
+ prompt_list = result_list[1]
102
+ # image_links = [src, model]
103
+ # prompt_list = [source_caption, target_caption, instruction]
104
+ return image_links[0], image_links[1], prompt_list[0], prompt_list[1], prompt_list[2]
105
+
106
  def generate_image_ie_parallel(self, textbox_source, textbox_target, textbox_instruct, source_image, model_A, model_B):
107
  model_names = [model_A, model_B]
108
  with concurrent.futures.ThreadPoolExecutor() as executor:
 
112
  results = [future.result() for future in futures]
113
  return results[0], results[1]
114
 
115
+ def generate_image_ie_museum_parallel(self, model_A, model_B):
116
+ model_names = [model_A, model_B]
117
+ with concurrent.futures.ThreadPoolExecutor() as executor:
118
+ model_1 = model_names[0].split('_')[1]
119
+ model_2 = model_names[1].split('_')[1]
120
+ result_list = draw2_from_imagen_museum("tie", model_1, model_2)
121
+ image_links = result_list[0]
122
+ prompt_list = result_list[1]
123
+ # image_links = [src, model_A, model_B]
124
+ # prompt_list = [source_caption, target_caption, instruction]
125
+ return image_links[0], image_links[1], image_links[2], prompt_list[0], prompt_list[1], prompt_list[2]
126
+
127
  def generate_image_ie_parallel_anony(self, textbox_source, textbox_target, textbox_instruct, source_image, model_A, model_B):
128
  if model_A == "" and model_B == "":
129
  model_names = random.sample([model for model in self.model_ie_list], 2)
 
134
  results = [future.result() for future in futures]
135
  return results[0], results[1], model_names[0], model_names[1]
136
 
137
+ def generate_image_ie_museum_parallel_anony(self, model_A, model_B):
138
+ if model_A == "" and model_B == "":
139
+ model_names = random.sample([model for model in self.model_ie_list], 2)
140
+ else:
141
+ model_names = [model_A, model_B]
142
+ with concurrent.futures.ThreadPoolExecutor() as executor:
143
+ model_1 = model_names[0].split('_')[1]
144
+ model_2 = model_names[1].split('_')[1]
145
+ result_list = draw2_from_imagen_museum("tie", model_1, model_2)
146
+ image_links = result_list[0]
147
+ prompt_list = result_list[1]
148
+ # image_links = [src, model_A, model_B]
149
+ # prompt_list = [source_caption, target_caption, instruction]
150
+ return image_links[0], image_links[1], image_links[2], prompt_list[0], prompt_list[1], prompt_list[2], model_names[0], model_names[1]
151
+
152
  @spaces.GPU(duration=150)
153
  def generate_video_vg(self, prompt, model_name):
154
  pipe = self.load_model_pipe(model_name)
155
  result = pipe(prompt=prompt)
156
  return result
157
 
158
+ def generate_video_vg_api(self, prompt, model_name):
159
+ pipe = self.load_model_pipe(model_name)
160
+ result = pipe(prompt=prompt)
161
+ return result
162
+
163
+ def generate_video_vg_museum(self, model_name):
164
+ raise NotImplementedError
165
+
166
  def generate_video_vg_parallel_anony(self, prompt, model_A, model_B):
167
  if model_A == "" and model_B == "":
168
  model_names = random.sample([model for model in self.model_vg_list], 2)
 
170
  model_names = [model_A, model_B]
171
 
172
  with concurrent.futures.ThreadPoolExecutor() as executor:
173
+ futures = [executor.submit(self.generate_video_vg, prompt, model) if model.startswith("videogenhub")
174
+ else executor.submit(self.generate_video_vg_api, prompt, model) for model in model_names]
175
  results = [future.result() for future in futures]
176
  return results[0], results[1], model_names[0], model_names[1]
177
 
178
+ def generate_video_vg_museum_parallel_anony(self, model_A, model_B):
179
+ if model_A == "" and model_B == "":
180
+ model_names = random.sample([model for model in self.model_vg_list], 2)
181
+ else:
182
+ model_names = [model_A, model_B]
183
+
184
+ raise NotImplementedError
185
+
186
  def generate_video_vg_parallel(self, prompt, model_A, model_B):
187
  model_names = [model_A, model_B]
188
  with concurrent.futures.ThreadPoolExecutor() as executor:
189
+ futures = [executor.submit(self.generate_video_vg, prompt, model) if model.startswith("videogenhub")
190
+ else executor.submit(self.generate_video_vg_api, prompt, model) for model in model_names]
191
  results = [future.result() for future in futures]
192
+ return results[0], results[1]
193
+
194
+ def generate_video_vg_museum_parallel(self, model_A, model_B):
195
+ model_names = [model_A, model_B]
196
+
197
+ raise NotImplementedError
model/model_registry.py CHANGED
@@ -46,21 +46,28 @@ def get_model_description_md(model_list):
46
  # regist image generation models
47
 
48
  register_model_info(
49
- ["imagenhub_LCM_generation"],
50
  "LCM",
51
  "https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7",
52
  "Latent Consistency Models.",
53
  )
54
 
55
  register_model_info(
56
- ["imagenhub_PlayGroundV2_generation"],
 
 
 
 
 
 
 
57
  "Playground v2",
58
  "https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic",
59
  "Playground v2 – 1024px Aesthetic Model",
60
  )
61
 
62
  register_model_info(
63
- ["imagenhub_PlayGroundV2.5_generation"],
64
  "Playground v2.5",
65
  "https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic",
66
  "Playground v2.5 is the state-of-the-art open-source model in aesthetic quality",
@@ -74,14 +81,14 @@ register_model_info(
74
  )
75
 
76
  register_model_info(
77
- ["imagenhub_SDXLTurbo_generation"],
78
  "SDXLTurbo",
79
  "https://huggingface.co/stabilityai/sdxl-turbo",
80
  "SDXL-Turbo is a fast generative text-to-image model.",
81
  )
82
 
83
  register_model_info(
84
- ["imagenhub_SDXL_generation"],
85
  "SDXL",
86
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0",
87
  "SDXL is a Latent Diffusion Model that uses two fixed, pretrained text encoders.",
@@ -95,14 +102,21 @@ register_model_info(
95
  )
96
 
97
  register_model_info(
98
- ["imagenhub_SDXLLightning_generation"],
 
 
 
 
 
 
 
99
  "SDXL-Lightning",
100
  "https://huggingface.co/ByteDance/SDXL-Lightning",
101
  "SDXL-Lightning is a lightning-fast text-to-image generation model.",
102
  )
103
 
104
  register_model_info(
105
- ["imagenhub_StableCascade_generation"],
106
  "StableCascade",
107
  "https://huggingface.co/stabilityai/stable-cascade",
108
  "StableCascade is built upon the Würstchen architecture and working at a much smaller latent space.",
@@ -130,12 +144,6 @@ register_model_info(
130
  "Image Editing with Cross-Attention Control.",
131
  )
132
 
133
- # register_model_info(
134
- # ["imagenhub_SDEdit_edition"],
135
- # "SDEdit",
136
- # "",
137
- # "xxx",
138
- # )
139
 
140
  register_model_info(
141
  ["imagenhub_InstructPix2Pix_edition"],
@@ -215,17 +223,9 @@ register_model_info(
215
  )
216
 
217
  register_model_info(
218
- ["videogenhub_CogVideo_generation"],
219
- "CogVideo",
220
- "https://arxiv.org/abs/2205.15868",
221
- "Text-to-Video Generation via Transformers",
222
  )
223
 
224
-
225
- models = ['imagenhub_LCM_generation','imagenhub_SDXLTurbo_generation','imagenhub_SDXL_generation',
226
- 'imagenhub_OpenJourney_generation','imagenhub_PixArtAlpha_generation','imagenhub_SDXLLightning_generation',
227
- 'imagenhub_StableCascade_generation','imagenhub_PlaygroundV2_generation', 'fal_Playground-v25_generation', 'fal_stable-cascade_text2image',
228
- 'imagenhub_CycleDiffusion_edition', 'imagenhub_Pix2PixZero_edition', 'imagenhub_Prompt2prompt_edition',
229
- 'imagenhub_SDEdit_edition', 'imagenhub_InstructPix2Pix_edition', 'imagenhub_MagicBrush_edition', 'imagenhub_PNP_edition', 'imagenhub_InfEdit_edition', 'imagenhub_CosXLEdit_edition',
230
- "fal_AnimateDiffTurbo_text2video", "fal_AnimateDiff_text2video",
231
- "videogenhub_LaVie_generation", "videogenhub_VideoCrafter2_generation", "videogenhub_ModelScope_generation", "videogenhub_CogVideo_generation"]
 
46
  # regist image generation models
47
 
48
  register_model_info(
49
+ ["imagenhub_LCM_generation", "fal_LCM_text2image"],
50
  "LCM",
51
  "https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7",
52
  "Latent Consistency Models.",
53
  )
54
 
55
  register_model_info(
56
+ ["fal_LCM(v1.5/XL)_text2image"],
57
+ "LCM(v1.5/XL)",
58
+ "https://fal.ai/models/fast-lcm-diffusion-turbo",
59
+ "Latent Consistency Models (v1.5/XL)",
60
+ )
61
+
62
+ register_model_info(
63
+ ["imagenhub_PlayGroundV2_generation", 'playground_PlayGroundV2_generation'],
64
  "Playground v2",
65
  "https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic",
66
  "Playground v2 – 1024px Aesthetic Model",
67
  )
68
 
69
  register_model_info(
70
+ ["imagenhub_PlayGroundV2.5_generation", 'playground_PlayGroundV2.5_generation'],
71
  "Playground v2.5",
72
  "https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic",
73
  "Playground v2.5 is the state-of-the-art open-source model in aesthetic quality",
 
81
  )
82
 
83
  register_model_info(
84
+ ["imagenhub_SDXLTurbo_generation", "fal_SDXLTurbo_text2image"],
85
  "SDXLTurbo",
86
  "https://huggingface.co/stabilityai/sdxl-turbo",
87
  "SDXL-Turbo is a fast generative text-to-image model.",
88
  )
89
 
90
  register_model_info(
91
+ ["imagenhub_SDXL_generation", "fal_SDXL_text2image"],
92
  "SDXL",
93
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0",
94
  "SDXL is a Latent Diffusion Model that uses two fixed, pretrained text encoders.",
 
102
  )
103
 
104
  register_model_info(
105
+ ["imagenhub_PixArtSigma_generation", "fal_PixArtSigma_text2image"],
106
+ "PixArtSigma",
107
+ "https://github.com/PixArt-alpha/PixArt-sigma",
108
+ "Improved version of Pixart-α.",
109
+ )
110
+
111
+ register_model_info(
112
+ ["imagenhub_SDXLLightning_generation", "fal_SDXLLightning_text2image"],
113
  "SDXL-Lightning",
114
  "https://huggingface.co/ByteDance/SDXL-Lightning",
115
  "SDXL-Lightning is a lightning-fast text-to-image generation model.",
116
  )
117
 
118
  register_model_info(
119
+ ["imagenhub_StableCascade_generation", "fal_StableCascade_text2image"],
120
  "StableCascade",
121
  "https://huggingface.co/stabilityai/stable-cascade",
122
  "StableCascade is built upon the Würstchen architecture and working at a much smaller latent space.",
 
144
  "Image Editing with Cross-Attention Control.",
145
  )
146
 
 
 
 
 
 
 
147
 
148
  register_model_info(
149
  ["imagenhub_InstructPix2Pix_edition"],
 
223
  )
224
 
225
  register_model_info(
226
+ ["videogenhub_OpenSora_generation"],
227
+ "OpenSora",
228
+ "https://github.com/hpcaitech/Open-Sora",
229
+ "A community-driven opensource implementation of Sora.",
230
  )
231
 
 
 
 
 
 
 
 
 
model/models/__init__.py CHANGED
@@ -3,8 +3,9 @@ from .playground_api import load_playground_model
3
  from .fal_api_models import load_fal_model
4
  from .videogenhub_models import load_videogenhub_model
5
 
6
- IMAGE_GENERATION_MODELS = ['imagenhub_LCM_generation','imagenhub_SDXLTurbo_generation','imagenhub_SDXL_generation', 'imagenhub_PixArtAlpha_generation',
7
- 'imagenhub_OpenJourney_generation','imagenhub_SDXLLightning_generation', 'imagenhub_StableCascade_generation',
 
8
  'playground_PlayGroundV2_generation', 'playground_PlayGroundV2.5_generation']
9
  IMAGE_EDITION_MODELS = ['imagenhub_CycleDiffusion_edition', 'imagenhub_Pix2PixZero_edition', 'imagenhub_Prompt2prompt_edition',
10
  'imagenhub_SDEdit_edition', 'imagenhub_InstructPix2Pix_edition',
@@ -13,7 +14,7 @@ IMAGE_EDITION_MODELS = ['imagenhub_CycleDiffusion_edition', 'imagenhub_Pix2PixZe
13
  VIDEO_GENERATION_MODELS = ['fal_AnimateDiff_text2video',
14
  'fal_AnimateDiffTurbo_text2video',
15
  'videogenhub_LaVie_generation', 'videogenhub_VideoCrafter2_generation',
16
- 'videogenhub_ModelScope_generation', 'videogenhub_CogVideo_generation']
17
 
18
 
19
  def load_pipeline(model_name):
 
3
  from .fal_api_models import load_fal_model
4
  from .videogenhub_models import load_videogenhub_model
5
 
6
+
7
+ IMAGE_GENERATION_MODELS = ['fal_LCM(v1.5/XL)_text2image','fal_SDXLTurbo_text2image','fal_SDXL_text2image', 'imagenhub_PixArtAlpha_generation', 'fal_PixArtSigma_text2image',
8
+ 'imagenhub_OpenJourney_generation','fal_SDXLLightning_text2image', 'fal_StableCascade_text2image',
9
  'playground_PlayGroundV2_generation', 'playground_PlayGroundV2.5_generation']
10
  IMAGE_EDITION_MODELS = ['imagenhub_CycleDiffusion_edition', 'imagenhub_Pix2PixZero_edition', 'imagenhub_Prompt2prompt_edition',
11
  'imagenhub_SDEdit_edition', 'imagenhub_InstructPix2Pix_edition',
 
14
  VIDEO_GENERATION_MODELS = ['fal_AnimateDiff_text2video',
15
  'fal_AnimateDiffTurbo_text2video',
16
  'videogenhub_LaVie_generation', 'videogenhub_VideoCrafter2_generation',
17
+ 'videogenhub_ModelScope_generation', 'videogenhub_OpenSora_generation']
18
 
19
 
20
  def load_pipeline(model_name):
model/models/fal_api_models.py CHANGED
@@ -3,7 +3,10 @@ from PIL import Image
3
  import requests
4
  import io
5
  import os
 
6
 
 
 
7
 
8
  class FalModel():
9
  def __init__(self, model_name, model_type):
@@ -12,10 +15,24 @@ class FalModel():
12
  os.environ['FAL_KEY'] = os.environ['FalAPI']
13
 
14
  def __call__(self, *args, **kwargs):
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  if self.model_type == "text2image":
16
  assert "prompt" in kwargs, "prompt is required for text2image model"
17
  handler = fal_client.submit(
18
- f"fal-ai/{self.model_name}",
19
  arguments={
20
  "prompt": kwargs["prompt"]
21
  },
@@ -25,9 +42,14 @@ class FalModel():
25
  print('Request in progress')
26
  print(event.logs)
27
  result = handler.get()
 
28
  result_url = result['images'][0]['url']
29
- response = requests.get(result_url)
30
- result = Image.open(io.BytesIO(response.content))
 
 
 
 
31
  return result
32
  elif self.model_type == "image2image":
33
  raise NotImplementedError("image2image model is not implemented yet")
 
3
  import requests
4
  import io
5
  import os
6
+ import base64
7
 
8
+ FAL_MODEl_NAME_MAP = {"SDXL": "fast-sdxl", "SDXLTurbo": "fast-turbo-diffusion", "SDXLLightning": "fast-lightning-sdxl",
9
+ "LCM(v1.5/XL)": "fast-lcm-diffusion", "PixArtSigma": "pixart-sigma", "StableCascade": "stable-cascade"}
10
 
11
  class FalModel():
12
  def __init__(self, model_name, model_type):
 
15
  os.environ['FAL_KEY'] = os.environ['FalAPI']
16
 
17
  def __call__(self, *args, **kwargs):
18
+ def decode_data_url(data_url):
19
+ # Find the start of the Base64 encoded data
20
+ base64_start = data_url.find(",") + 1
21
+ if base64_start == 0:
22
+ raise ValueError("Invalid data URL provided")
23
+
24
+ # Extract the Base64 encoded data
25
+ base64_string = data_url[base64_start:]
26
+
27
+ # Decode the Base64 string
28
+ decoded_bytes = base64.b64decode(base64_string)
29
+
30
+ return decoded_bytes
31
+
32
  if self.model_type == "text2image":
33
  assert "prompt" in kwargs, "prompt is required for text2image model"
34
  handler = fal_client.submit(
35
+ f"fal-ai/{FAL_MODEl_NAME_MAP[self.model_name]}",
36
  arguments={
37
  "prompt": kwargs["prompt"]
38
  },
 
42
  print('Request in progress')
43
  print(event.logs)
44
  result = handler.get()
45
+ print(result)
46
  result_url = result['images'][0]['url']
47
+ if self.model_name in ["SDXLTurbo", "LCM(v1.5/XL)"]:
48
+ result_url = io.BytesIO(decode_data_url(result_url))
49
+ result = Image.open(result_url)
50
+ else:
51
+ response = requests.get(result_url)
52
+ result = Image.open(io.BytesIO(response.content))
53
  return result
54
  elif self.model_type == "image2image":
55
  raise NotImplementedError("image2image model is not implemented yet")
requirements.txt CHANGED
@@ -57,5 +57,15 @@ open-clip-torch-any-py3
57
  modelscope
58
  protobuf==3.20.*
59
  rotary_embedding_torch
60
- natsort
61
  av
 
 
 
 
 
 
 
 
 
 
 
 
57
  modelscope
58
  protobuf==3.20.*
59
  rotary_embedding_torch
 
60
  av
61
+ natsort
62
+ colossalai
63
+ mmengine
64
+ pre-commit
65
+ pyav
66
+ pyarrow
67
+ tensorboard
68
+ timm
69
+ pandarallel
70
+ wandb
71
+
serve/gradio_web.py CHANGED
@@ -9,8 +9,11 @@ from .vote_utils import (
9
  bothbad_vote_last_response_igm as bothbad_vote_last_response,
10
  share_click_igm as share_click,
11
  generate_ig,
 
12
  generate_igm,
 
13
  generate_igm_annoy,
 
14
  share_js
15
  )
16
  from functools import partial
@@ -37,6 +40,7 @@ Find out who is the 🥇conditional image generation models! More models are goi
37
  state0 = gr.State()
38
  state1 = gr.State()
39
  gen_func = partial(generate_igm_annoy, models.generate_image_ig_parallel_anony)
 
40
 
41
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
42
 
@@ -52,7 +56,7 @@ Find out who is the 🥇conditional image generation models! More models are goi
52
 
53
  with gr.Row():
54
  with gr.Column():
55
- model_selector_left =gr.Markdown("", visible=False)
56
  with gr.Column():
57
  model_selector_right = gr.Markdown("", visible=False)
58
  with gr.Row():
@@ -78,13 +82,14 @@ Find out who is the 🥇conditional image generation models! More models are goi
78
  elem_id="input_box",
79
  )
80
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
81
 
82
  with gr.Row():
83
  clear_btn = gr.Button(value="🎲 New Round", interactive=False)
84
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
85
  # share_btn = gr.Button(value="📷 Share")
86
 
87
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
88
 
89
  dummy_img_output = gr.Image(width=512, visible=False)
90
  gr.Examples(
@@ -117,6 +122,16 @@ Find out who is the 🥇conditional image generation models! More models are goi
117
  inputs=None,
118
  outputs=btn_list
119
  )
 
 
 
 
 
 
 
 
 
 
120
 
121
  clear_btn.click(
122
  clear_history_side_by_side_anony,
@@ -187,7 +202,9 @@ def build_side_by_side_ui_named(models):
187
 
188
  state0 = gr.State()
189
  state1 = gr.State()
 
190
  gen_func = partial(generate_igm, models.generate_image_ig_parallel)
 
191
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
192
 
193
  with gr.Group(elem_id="share-region-named"):
@@ -199,6 +216,7 @@ def build_side_by_side_ui_named(models):
199
  interactive=True,
200
  show_label=False,
201
  container=False,
 
202
  )
203
  with gr.Column():
204
  model_selector_right = gr.Dropdown(
@@ -207,6 +225,7 @@ def build_side_by_side_ui_named(models):
207
  interactive=True,
208
  show_label=False,
209
  container=False,
 
210
  )
211
  with gr.Row():
212
  with gr.Accordion("🔍 Expand to see all model descriptions", open=False):
@@ -237,13 +256,14 @@ def build_side_by_side_ui_named(models):
237
  elem_id="input_box"
238
  )
239
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
240
 
241
  with gr.Row():
242
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
243
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
244
  # share_btn = gr.Button(value="📷 Share")
245
 
246
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
247
 
248
  dummy_img_output = gr.Image(width=512, visible=False)
249
  gr.Examples(
@@ -253,8 +273,8 @@ def build_side_by_side_ui_named(models):
253
  ["A futuristic hopeful busy city, purple and green color scheme", os.path.join("./examples", "city.jpg")]],
254
  inputs = [textbox, dummy_img_output])
255
 
256
- model_selector_left.change(clear_history_side_by_side, inputs=None, outputs=[state0, state1, textbox, chatbot_left, chatbot_right], api_name="model_selector_left_side_by_side")
257
- model_selector_right.change(clear_history_side_by_side, inputs=None, outputs=[state0, state1, textbox, chatbot_left, chatbot_right], api_name="model_selector_right_side_by_side")
258
 
259
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
260
 
@@ -279,6 +299,16 @@ def build_side_by_side_ui_named(models):
279
  inputs=None,
280
  outputs=btn_list
281
  )
 
 
 
 
 
 
 
 
 
 
282
  regenerate_btn.click(
283
  gen_func,
284
  inputs=[state0, state1, textbox, model_selector_left, model_selector_right],
@@ -347,6 +377,7 @@ def build_single_model_ui(models, add_promotion_links=False):
347
 
348
  state = gr.State()
349
  gen_func = partial(generate_ig, models.generate_image_ig)
 
350
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
351
 
352
  model_list = models.model_ig_list
@@ -376,6 +407,7 @@ def build_single_model_ui(models, add_promotion_links=False):
376
  )
377
 
378
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
379
 
380
  with gr.Row():
381
  chatbot = gr.Image()
@@ -387,8 +419,9 @@ def build_single_model_ui(models, add_promotion_links=False):
387
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
388
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
389
 
390
- if add_promotion_links:
391
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
 
392
 
393
  dummy_img_output = gr.Image(visible=False)
394
  gr.Examples(
@@ -427,7 +460,17 @@ def build_single_model_ui(models, add_promotion_links=False):
427
  inputs=None,
428
  outputs=btn_list
429
  )
430
-
 
 
 
 
 
 
 
 
 
 
431
  upvote_btn.click(
432
  upvote_last_response,
433
  inputs=[state, model_selector],
 
9
  bothbad_vote_last_response_igm as bothbad_vote_last_response,
10
  share_click_igm as share_click,
11
  generate_ig,
12
+ generate_ig_museum,
13
  generate_igm,
14
+ generate_igm_museum,
15
  generate_igm_annoy,
16
+ generate_igm_annoy_museum,
17
  share_js
18
  )
19
  from functools import partial
 
40
  state0 = gr.State()
41
  state1 = gr.State()
42
  gen_func = partial(generate_igm_annoy, models.generate_image_ig_parallel_anony)
43
+ gen_func_random = partial(generate_igm_annoy_museum, models.generate_image_ig_museum_parallel_anony)
44
 
45
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
46
 
 
56
 
57
  with gr.Row():
58
  with gr.Column():
59
+ model_selector_left = gr.Markdown("", visible=False)
60
  with gr.Column():
61
  model_selector_right = gr.Markdown("", visible=False)
62
  with gr.Row():
 
82
  elem_id="input_box",
83
  )
84
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
85
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
86
 
87
  with gr.Row():
88
  clear_btn = gr.Button(value="🎲 New Round", interactive=False)
89
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
90
  # share_btn = gr.Button(value="📷 Share")
91
 
92
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
93
 
94
  dummy_img_output = gr.Image(width=512, visible=False)
95
  gr.Examples(
 
122
  inputs=None,
123
  outputs=btn_list
124
  )
125
+ draw_btn.click(
126
+ gen_func_random,
127
+ inputs=[state0, state1, model_selector_left, model_selector_right],
128
+ outputs=[state0, state1, chatbot_left, chatbot_right, textbox, model_selector_left, model_selector_right],
129
+ api_name="draw_btn_annony"
130
+ ).then(
131
+ enable_buttons_side_by_side,
132
+ inputs=None,
133
+ outputs=btn_list
134
+ )
135
 
136
  clear_btn.click(
137
  clear_history_side_by_side_anony,
 
202
 
203
  state0 = gr.State()
204
  state1 = gr.State()
205
+ anony = False
206
  gen_func = partial(generate_igm, models.generate_image_ig_parallel)
207
+ gen_func_random = partial(generate_igm_museum, models.generate_image_ig_museum_parallel)
208
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
209
 
210
  with gr.Group(elem_id="share-region-named"):
 
216
  interactive=True,
217
  show_label=False,
218
  container=False,
219
+ allow_custom_value=True
220
  )
221
  with gr.Column():
222
  model_selector_right = gr.Dropdown(
 
225
  interactive=True,
226
  show_label=False,
227
  container=False,
228
+ allow_custom_value=True
229
  )
230
  with gr.Row():
231
  with gr.Accordion("🔍 Expand to see all model descriptions", open=False):
 
256
  elem_id="input_box"
257
  )
258
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
259
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
260
 
261
  with gr.Row():
262
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
263
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
264
  # share_btn = gr.Button(value="📷 Share")
265
 
266
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
267
 
268
  dummy_img_output = gr.Image(width=512, visible=False)
269
  gr.Examples(
 
273
  ["A futuristic hopeful busy city, purple and green color scheme", os.path.join("./examples", "city.jpg")]],
274
  inputs = [textbox, dummy_img_output])
275
 
276
+ # model_selector_left.change(clear_history_side_by_side, inputs=None, outputs=[state0, state1, textbox, chatbot_left, chatbot_right], api_name="model_selector_left_side_by_side")
277
+ # model_selector_right.change(clear_history_side_by_side, inputs=None, outputs=[state0, state1, textbox, chatbot_left, chatbot_right], api_name="model_selector_right_side_by_side")
278
 
279
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
280
 
 
299
  inputs=None,
300
  outputs=btn_list
301
  )
302
+ draw_btn.click(
303
+ gen_func_random,
304
+ inputs=[state0, state1, model_selector_left, model_selector_right],
305
+ outputs=[state0, state1, chatbot_left, chatbot_right, textbox],
306
+ api_name="draw_side_by_side"
307
+ ).then(
308
+ enable_buttons_side_by_side,
309
+ inputs=None,
310
+ outputs=btn_list
311
+ )
312
  regenerate_btn.click(
313
  gen_func,
314
  inputs=[state0, state1, textbox, model_selector_left, model_selector_right],
 
377
 
378
  state = gr.State()
379
  gen_func = partial(generate_ig, models.generate_image_ig)
380
+ gen_func_random = partial(generate_ig_museum, models.generate_image_ig_museum)
381
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
382
 
383
  model_list = models.model_ig_list
 
407
  )
408
 
409
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
410
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
411
 
412
  with gr.Row():
413
  chatbot = gr.Image()
 
419
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
420
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
421
 
422
+ #if add_promotion_links:
423
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
424
+ pass
425
 
426
  dummy_img_output = gr.Image(visible=False)
427
  gr.Examples(
 
460
  inputs=None,
461
  outputs=btn_list
462
  )
463
+ draw_btn.click(
464
+ gen_func_random,
465
+ inputs=[state, model_selector],
466
+ outputs=[state, chatbot, textbox],
467
+ api_name="draw_btn_single",
468
+ show_progress = "full"
469
+ ).success(
470
+ enable_buttons,
471
+ inputs=None,
472
+ outputs=btn_list
473
+ )
474
  upvote_btn.click(
475
  upvote_last_response,
476
  inputs=[state, model_selector],
serve/gradio_web_image_editing.py CHANGED
@@ -9,8 +9,11 @@ from .vote_utils import (
9
  bothbad_vote_last_response_iem as bothbad_vote_last_response,
10
  share_click_iem as share_click,
11
  generate_ie,
 
12
  generate_iem,
 
13
  generate_iem_annoy,
 
14
  share_js
15
  )
16
  from functools import partial
@@ -27,7 +30,7 @@ def build_side_by_side_ui_anony_ie(models):
27
  - Wait to see the results after edition.
28
  - Click "New Round" to start a new round.
29
  - Vote won't be counted if model identity is revealed during generation.
30
- - The model could output a totally black image or noise. It's not a bug but the failure case of the model.
31
 
32
  ## 🏆 Arena Elo
33
  Find out who is the 🥇conditional image edition models!
@@ -40,6 +43,7 @@ Find out who is the 🥇conditional image edition models!
40
 
41
  state0, state1 = gr.State(), gr.State()
42
  gen_func = partial(generate_iem_annoy, models.generate_image_ie_parallel_anony)
 
43
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
44
 
45
  with gr.Group(elem_id="share-region-anony"):
@@ -93,13 +97,14 @@ Find out who is the 🥇conditional image edition models!
93
  with gr.Row():
94
  source_image = gr.Image(type="pil")
95
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
96
 
97
  with gr.Row() as button_row:
98
  clear_btn = gr.Button(value="🎲 New Round", interactive=False)
99
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
100
  # share_btn = gr.Button(value="📷 Share")
101
 
102
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
103
 
104
  gr.Examples(
105
  examples=[
@@ -138,6 +143,23 @@ Find out who is the 🥇conditional image edition models!
138
  inputs=None,
139
  outputs=btn_list
140
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  regenerate_btn.click(
142
  gen_func,
143
  inputs=[
@@ -219,6 +241,7 @@ def build_side_by_side_ui_named_ie(models):
219
 
220
  state0, state1 = gr.State(), gr.State()
221
  gen_func = partial(generate_iem, models.generate_image_ie_parallel)
 
222
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
223
 
224
  with gr.Group(elem_id="share-region-named"):
@@ -283,13 +306,14 @@ def build_side_by_side_ui_named_ie(models):
283
  with gr.Row():
284
  source_image = gr.Image(type="pil")
285
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
286
 
287
  with gr.Row() as button_row:
288
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
289
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
290
  # share_btn = gr.Button(value="📷 Share")
291
 
292
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
293
  gr.Examples(
294
  examples=[
295
  ["a bowl of strawberries", "a bowl of oranges", "change strawberries to oranges",
@@ -303,14 +327,14 @@ def build_side_by_side_ui_named_ie(models):
303
  inputs=[textbox_source, textbox_target, textbox_instruct, source_image])
304
 
305
 
306
- model_selector_left.change(
307
- clear_history_side_by_side_ie,
308
- inputs=None,
309
- outputs=[state0, state1, textbox_source, textbox_target, textbox_instruct,
310
- source_image, chatbot_left, chatbot_right
311
- ],
312
- api_name="model_selector_left_side_by_side")
313
- model_selector_right.change(clear_history_side_by_side_ie, inputs=None, outputs=[state0, state1, textbox_source, textbox_target, textbox_instruct, source_image, chatbot_left, chatbot_right], api_name="model_selector_right_side_by_side")
314
 
315
 
316
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
@@ -334,6 +358,23 @@ def build_side_by_side_ui_named_ie(models):
334
  inputs=None,
335
  outputs=btn_list
336
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
337
  regenerate_btn.click(
338
  gen_func,
339
  inputs=[
@@ -409,6 +450,7 @@ def build_single_model_ui_ie(models, add_promotion_links=False):
409
 
410
  state = gr.State()
411
  gen_func = partial(generate_ie, models.generate_image_ie)
 
412
  model_list = models.model_ie_list
413
 
414
  with gr.Row(elem_id="model_selector_row"):
@@ -448,6 +490,7 @@ def build_single_model_ui_ie(models, add_promotion_links=False):
448
  with gr.Row():
449
  source_image = gr.Image(type="pil")
450
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
 
451
 
452
  with gr.Row():
453
  chatbot = gr.Image()
@@ -460,7 +503,8 @@ def build_single_model_ui_ie(models, add_promotion_links=False):
460
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
461
 
462
  if add_promotion_links:
463
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
 
464
 
465
  gr.Examples(
466
  examples=[
@@ -492,7 +536,19 @@ def build_single_model_ui_ie(models, add_promotion_links=False):
492
  inputs=None,
493
  outputs=btn_list
494
  )
 
 
 
 
 
 
 
 
 
 
 
495
 
 
496
  vote_btns = [upvote_btn, downvote_btn, flag_btn]
497
  model_inputs = [textbox_source, textbox_instruct, source_image, textbox_target]
498
  upvote_btn.click(
 
9
  bothbad_vote_last_response_iem as bothbad_vote_last_response,
10
  share_click_iem as share_click,
11
  generate_ie,
12
+ generate_ie_museum,
13
  generate_iem,
14
+ generate_iem_museum,
15
  generate_iem_annoy,
16
+ generate_iem_annoy_museum,
17
  share_js
18
  )
19
  from functools import partial
 
30
  - Wait to see the results after edition.
31
  - Click "New Round" to start a new round.
32
  - Vote won't be counted if model identity is revealed during generation.
33
+ - The model coulmodel_selector_left.changed output a totally black image or noise. It's not a bug but the failure case of the model.
34
 
35
  ## 🏆 Arena Elo
36
  Find out who is the 🥇conditional image edition models!
 
43
 
44
  state0, state1 = gr.State(), gr.State()
45
  gen_func = partial(generate_iem_annoy, models.generate_image_ie_parallel_anony)
46
+ gen_func_random = partial(generate_iem_annoy_museum, models.generate_image_ie_museum_parallel_anony)
47
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
48
 
49
  with gr.Group(elem_id="share-region-anony"):
 
97
  with gr.Row():
98
  source_image = gr.Image(type="pil")
99
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
100
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
101
 
102
  with gr.Row() as button_row:
103
  clear_btn = gr.Button(value="🎲 New Round", interactive=False)
104
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
105
  # share_btn = gr.Button(value="📷 Share")
106
 
107
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
108
 
109
  gr.Examples(
110
  examples=[
 
143
  inputs=None,
144
  outputs=btn_list
145
  )
146
+ draw_btn.click(
147
+ gen_func_random,
148
+ inputs=[
149
+ state0,
150
+ state1,
151
+ model_selector_left,
152
+ model_selector_right
153
+ ],
154
+ outputs=[state0, state1, chatbot_left, chatbot_right,
155
+ source_image, textbox_source, textbox_target, textbox_instruct,
156
+ model_selector_left, model_selector_right],
157
+ api_name="draw_btn_side_by_side_anony"
158
+ ).then(
159
+ enable_buttons_side_by_side,
160
+ inputs=None,
161
+ outputs=btn_list
162
+ )
163
  regenerate_btn.click(
164
  gen_func,
165
  inputs=[
 
241
 
242
  state0, state1 = gr.State(), gr.State()
243
  gen_func = partial(generate_iem, models.generate_image_ie_parallel)
244
+ gen_func_random = partial(generate_iem_museum, models.generate_image_ie_museum_parallel)
245
  gr.Markdown(notice_markdown, elem_id="notice_markdown")
246
 
247
  with gr.Group(elem_id="share-region-named"):
 
306
  with gr.Row():
307
  source_image = gr.Image(type="pil")
308
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
309
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
310
 
311
  with gr.Row() as button_row:
312
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
313
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
314
  # share_btn = gr.Button(value="📷 Share")
315
 
316
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
317
  gr.Examples(
318
  examples=[
319
  ["a bowl of strawberries", "a bowl of oranges", "change strawberries to oranges",
 
327
  inputs=[textbox_source, textbox_target, textbox_instruct, source_image])
328
 
329
 
330
+ # model_selector_left.change(
331
+ # clear_history_side_by_side_ie,
332
+ # inputs=None,
333
+ # outputs=[state0, state1, textbox_source, textbox_target, textbox_instruct,
334
+ # source_image, chatbot_left, chatbot_right
335
+ # ],
336
+ # api_name="model_selector_left_side_by_side")
337
+ # model_selector_right.change(clear_history_side_by_side_ie, inputs=None, outputs=[state0, state1, textbox_source, textbox_target, textbox_instruct, source_image, chatbot_left, chatbot_right], api_name="model_selector_right_side_by_side")
338
 
339
 
340
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
 
358
  inputs=None,
359
  outputs=btn_list
360
  )
361
+ draw_btn.click(
362
+ gen_func_random,
363
+ inputs=[
364
+ state0,
365
+ state1,
366
+ model_selector_left,
367
+ model_selector_right
368
+ ],
369
+ outputs=[state0, state1, chatbot_left, chatbot_right,
370
+ source_image, textbox_source, textbox_target, textbox_instruct
371
+ ],
372
+ api_name="draw_btn_side_by_side"
373
+ ).then(
374
+ enable_buttons_side_by_side,
375
+ inputs=None,
376
+ outputs=btn_list
377
+ )
378
  regenerate_btn.click(
379
  gen_func,
380
  inputs=[
 
450
 
451
  state = gr.State()
452
  gen_func = partial(generate_ie, models.generate_image_ie)
453
+ gen_func_random = partial(generate_ie_museum, models.generate_image_ie_museum)
454
  model_list = models.model_ie_list
455
 
456
  with gr.Row(elem_id="model_selector_row"):
 
490
  with gr.Row():
491
  source_image = gr.Image(type="pil")
492
  send_btn = gr.Button(value="Send", variant="primary", scale=0)
493
+ draw_btn = gr.Button(value="🎲 Random sample", variant="primary", scale=0)
494
 
495
  with gr.Row():
496
  chatbot = gr.Image()
 
503
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
504
 
505
  if add_promotion_links:
506
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
507
+ pass
508
 
509
  gr.Examples(
510
  examples=[
 
536
  inputs=None,
537
  outputs=btn_list
538
  )
539
+ draw_btn.click(
540
+ gen_func_random,
541
+ inputs=[state, model_selector],
542
+ outputs=[state, chatbot, source_image, textbox_source, textbox_target, textbox_instruct],
543
+ api_name="send_btn_single",
544
+ show_progress = "full"
545
+ ).then(
546
+ enable_buttons,
547
+ inputs=None,
548
+ outputs=btn_list
549
+ )
550
 
551
+
552
  vote_btns = [upvote_btn, downvote_btn, flag_btn]
553
  model_inputs = [textbox_source, textbox_instruct, source_image, textbox_target]
554
  upvote_btn.click(
serve/gradio_web_video_generation.py CHANGED
@@ -85,7 +85,7 @@ Find out who is the 🥇conditional video generation models! More models are goi
85
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
86
  # share_btn = gr.Button(value="📷 Share")
87
 
88
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
89
 
90
  dummy_video_output = gr.Video(width=512, visible=False)
91
  gr.Examples(
@@ -245,7 +245,7 @@ def build_side_by_side_ui_named_vg(models):
245
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
246
  # share_btn = gr.Button(value="📷 Share")
247
 
248
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
249
 
250
  dummy_video_output = gr.Video(width=512, visible=False)
251
  gr.Examples(
@@ -259,12 +259,12 @@ def build_side_by_side_ui_named_vg(models):
259
  'https://fal-cdn.batuhan-941.workers.dev/files/monkey/5-vUtY4_bHAhTtevZx16K.mp4']],
260
  inputs=[textbox, dummy_video_output])
261
 
262
- model_selector_left.change(clear_history_side_by_side, inputs=None,
263
- outputs=[state0, state1, textbox, chatbot_left, chatbot_right],
264
- api_name="model_selector_left_side_by_side")
265
- model_selector_right.change(clear_history_side_by_side, inputs=None,
266
- outputs=[state0, state1, textbox, chatbot_left, chatbot_right],
267
- api_name="model_selector_right_side_by_side")
268
 
269
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
270
 
@@ -399,7 +399,8 @@ def build_single_model_ui_vg(models, add_promotion_links=False):
399
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
400
 
401
  if add_promotion_links:
402
- gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
 
403
 
404
  dummy_video_output = gr.Video(width=512, visible=False)
405
  gr.Examples(
 
85
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
86
  # share_btn = gr.Button(value="📷 Share")
87
 
88
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
89
 
90
  dummy_video_output = gr.Video(width=512, visible=False)
91
  gr.Examples(
 
245
  regenerate_btn = gr.Button(value="🔄 Regenerate", interactive=False)
246
  # share_btn = gr.Button(value="📷 Share")
247
 
248
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
249
 
250
  dummy_video_output = gr.Video(width=512, visible=False)
251
  gr.Examples(
 
259
  'https://fal-cdn.batuhan-941.workers.dev/files/monkey/5-vUtY4_bHAhTtevZx16K.mp4']],
260
  inputs=[textbox, dummy_video_output])
261
 
262
+ # model_selector_left.change(clear_history_side_by_side, inputs=None,
263
+ # outputs=[state0, state1, textbox, chatbot_left, chatbot_right],
264
+ # api_name="model_selector_left_side_by_side")
265
+ # model_selector_right.change(clear_history_side_by_side, inputs=None,
266
+ # outputs=[state0, state1, textbox, chatbot_left, chatbot_right],
267
+ # api_name="model_selector_right_side_by_side")
268
 
269
  btn_list = [leftvote_btn, rightvote_btn, tie_btn, bothbad_btn, regenerate_btn, clear_btn]
270
 
 
399
  clear_btn = gr.Button(value="🗑️ Clear history", interactive=False)
400
 
401
  if add_promotion_links:
402
+ #gr.Markdown(acknowledgment_md, elem_id="ack_markdown")
403
+ pass
404
 
405
  dummy_video_output = gr.Video(width=512, visible=False)
406
  gr.Examples(
serve/utils.py CHANGED
@@ -22,7 +22,7 @@ def build_about():
22
  This is a project from TIGER Lab at University of Waterloo.
23
 
24
  ## Contributors:
25
- [Tianle Li](https://scholar.google.com/citations?user=g213g7YAAAAJ&hl=en), [Dongfu Jiang](https://jdf-prog.github.io/), [Yuansheng Ni](https://yuanshengni.github.io/), [Max Ku](https://kuwingfung.github.io/).
26
 
27
  ## Contact:
28
  Email: t29li@uwaterloo.ca (Tianle Li)
@@ -32,6 +32,9 @@ Email: t29li@uwaterloo.ca (Tianle Li)
32
 
33
  ## Sponsorship
34
  We are keep looking for sponsorship to support the arena project for the long term. Please contact us if you are interested in supporting this project.
 
 
 
35
  """
36
 
37
  gr.Markdown(about_markdown, elem_id="about_markdown")
@@ -40,7 +43,7 @@ We are keep looking for sponsorship to support the arena project for the long te
40
  acknowledgment_md = """
41
  ### Acknowledgment
42
  <div class="image-container">
43
- <p> Our code base is built upon <a href="https://github.com/lm-sys/FastChat" target="_blank">FastChat</a> and <a href="https://github.com/TIGER-AI-Lab/ImagenHub" target="_blank">ImagenHub</a></p>.
44
  </div>
45
  """
46
 
 
22
  This is a project from TIGER Lab at University of Waterloo.
23
 
24
  ## Contributors:
25
+ [Tianle Li](https://scholar.google.com/citations?user=g213g7YAAAAJ&hl=en), [Dongfu Jiang](https://jdf-prog.github.io/), [Yuansheng Ni](https://yuanshengni.github.io/), [Max Ku](https://kuwingfung.github.io/), [Shizhuo Sun](), [Richard Fan](https://www.linkedin.com/in/richard-fan2020/).
26
 
27
  ## Contact:
28
  Email: t29li@uwaterloo.ca (Tianle Li)
 
32
 
33
  ## Sponsorship
34
  We are keep looking for sponsorship to support the arena project for the long term. Please contact us if you are interested in supporting this project.
35
+
36
+ ## Acknowledgment
37
+ Our codebase is built upon <a href="https://github.com/lm-sys/FastChat" target="_blank">FastChat</a>, <a href="https://github.com/TIGER-AI-Lab/ImagenHub" target="_blank">ImagenHub</a> and <a href="https://github.com/TIGER-AI-Lab/VideoGenHub" target="_blank">VideoGenHub</a>.
38
  """
39
 
40
  gr.Markdown(about_markdown, elem_id="about_markdown")
 
43
  acknowledgment_md = """
44
  ### Acknowledgment
45
  <div class="image-container">
46
+ <p> Our codebase is built upon <a href="https://github.com/lm-sys/FastChat" target="_blank">FastChat</a>, <a href="https://github.com/TIGER-AI-Lab/ImagenHub" target="_blank">ImagenHub</a> and <a href="https://github.com/TIGER-AI-Lab/VideoGenHub" target="_blank">VideoGenHub</a>.</p>
47
  </div>
48
  """
49
 
serve/vote_utils.py CHANGED
@@ -9,6 +9,7 @@ from .utils import *
9
  from .log_utils import build_logger
10
  from .constants import IMAGE_DIR, VIDEO_DIR
11
  import imageio
 
12
 
13
  ig_logger = build_logger("gradio_web_server_image_generation", "gr_web_image_generation.log") # ig = image generation, loggers for single model direct chat
14
  igm_logger = build_logger("gradio_web_server_image_generation_multi", "gr_web_image_generation_multi.log") # igm = image generation multi, loggers for side-by-side and battle
@@ -17,6 +18,13 @@ iem_logger = build_logger("gradio_web_server_image_editing_multi", "gr_web_image
17
  vg_logger = build_logger("gradio_web_server_video_generation", "gr_web_video_generation.log") # vg = video generation, loggers for single model direct chat
18
  vgm_logger = build_logger("gradio_web_server_video_generation_multi", "gr_web_video_generation_multi.log") # vgm = video generation multi, loggers for side-by-side and battle
19
 
 
 
 
 
 
 
 
20
  def vote_last_response_ig(state, vote_type, model_selector, request: gr.Request):
21
  with open(get_conv_log_filename(), "a") as fout:
22
  data = {
@@ -30,7 +38,7 @@ def vote_last_response_ig(state, vote_type, model_selector, request: gr.Request)
30
  append_json_item_on_log_server(data, get_conv_log_filename())
31
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
32
  with open(output_file, 'w') as f:
33
- state.output.save(f, 'JPEG')
34
  save_image_file_on_log_server(output_file)
35
 
36
  def vote_last_response_igm(states, vote_type, model_selectors, request: gr.Request):
@@ -47,7 +55,7 @@ def vote_last_response_igm(states, vote_type, model_selectors, request: gr.Reque
47
  for state in states:
48
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
49
  with open(output_file, 'w') as f:
50
- state.output.save(f, 'JPEG')
51
  save_image_file_on_log_server(output_file)
52
 
53
  def vote_last_response_ie(state, vote_type, model_selector, request: gr.Request):
@@ -64,9 +72,9 @@ def vote_last_response_ie(state, vote_type, model_selector, request: gr.Request)
64
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}.jpg'
65
  source_file = f'{IMAGE_DIR}/edition/{state.conv_id}_source.jpg'
66
  with open(output_file, 'w') as f:
67
- state.output.save(f, 'JPEG')
68
  with open(source_file, 'w') as sf:
69
- state.source_image.save(sf, 'JPEG')
70
  save_image_file_on_log_server(output_file)
71
  save_image_file_on_log_server(source_file)
72
 
@@ -85,9 +93,9 @@ def vote_last_response_iem(states, vote_type, model_selectors, request: gr.Reque
85
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}.jpg'
86
  source_file = f'{IMAGE_DIR}/edition/{state.conv_id}_source.jpg'
87
  with open(output_file, 'w') as f:
88
- state.output.save(f, 'JPEG')
89
  with open(source_file, 'w') as sf:
90
- state.source_image.save(sf, 'JPEG')
91
  save_image_file_on_log_server(output_file)
92
  save_image_file_on_log_server(source_file)
93
 
@@ -172,8 +180,13 @@ def leftvote_last_response_igm(
172
  vote_last_response_igm(
173
  [state0, state1], "leftvote", [model_selector0, model_selector1], request
174
  )
175
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
176
-
 
 
 
 
 
177
 
178
  def rightvote_last_response_igm(
179
  state0, state1, model_selector0, model_selector1, request: gr.Request
@@ -182,7 +195,12 @@ def rightvote_last_response_igm(
182
  vote_last_response_igm(
183
  [state0, state1], "rightvote", [model_selector0, model_selector1], request
184
  )
185
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
186
 
187
 
188
  def tievote_last_response_igm(
@@ -192,7 +210,13 @@ def tievote_last_response_igm(
192
  vote_last_response_igm(
193
  [state0, state1], "tievote", [model_selector0, model_selector1], request
194
  )
195
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
 
196
 
197
 
198
  def bothbad_vote_last_response_igm(
@@ -202,7 +226,13 @@ def bothbad_vote_last_response_igm(
202
  vote_last_response_igm(
203
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
204
  )
205
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
 
206
 
207
  ## Image Editing (IE) Single Model Direct Chat
208
 
@@ -237,7 +267,10 @@ def leftvote_last_response_iem(
237
  # "### Model B: " + state1.model_name,
238
  # )
239
  # names = (state0.model_name, state1.model_name)
240
- names = (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
241
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
242
 
243
  def rightvote_last_response_iem(
@@ -251,7 +284,11 @@ def rightvote_last_response_iem(
251
  # "### Model A: " + state0.model_name,
252
  # "### Model B: " + state1.model_name,
253
  # )
254
- names = (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
255
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
256
 
257
  def tievote_last_response_iem(
@@ -261,7 +298,11 @@ def tievote_last_response_iem(
261
  vote_last_response_iem(
262
  [state0, state1], "tievote", [model_selector0, model_selector1], request
263
  )
264
- names = (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
265
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
266
 
267
  def bothbad_vote_last_response_iem(
@@ -271,7 +312,11 @@ def bothbad_vote_last_response_iem(
271
  vote_last_response_iem(
272
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
273
  )
274
- names = (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
275
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
276
 
277
 
@@ -304,7 +349,12 @@ def leftvote_last_response_vgm(
304
  vote_last_response_vgm(
305
  [state0, state1], "leftvote", [model_selector0, model_selector1], request
306
  )
307
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
308
 
309
 
310
  def rightvote_last_response_vgm(
@@ -314,8 +364,14 @@ def rightvote_last_response_vgm(
314
  vote_last_response_vgm(
315
  [state0, state1], "rightvote", [model_selector0, model_selector1], request
316
  )
317
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
318
-
 
 
 
 
 
 
319
 
320
  def tievote_last_response_vgm(
321
  state0, state1, model_selector0, model_selector1, request: gr.Request
@@ -324,7 +380,14 @@ def tievote_last_response_vgm(
324
  vote_last_response_vgm(
325
  [state0, state1], "tievote", [model_selector0, model_selector1], request
326
  )
327
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
 
 
328
 
329
 
330
  def bothbad_vote_last_response_vgm(
@@ -334,7 +397,14 @@ def bothbad_vote_last_response_vgm(
334
  vote_last_response_vgm(
335
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
336
  )
337
- return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name}", visible=True), gr.Markdown(f"### Model B: {state1.model_name}", visible=True))
 
 
 
 
 
 
 
338
 
339
  share_js = """
340
  function (a, b, c, d) {
@@ -423,8 +493,6 @@ class VideoStateVG:
423
  return base
424
 
425
 
426
-
427
-
428
  def generate_ig(gen_func, state, text, model_name, request: gr.Request):
429
  if not text:
430
  raise gr.Warning("Prompt cannot be empty.")
@@ -462,9 +530,47 @@ def generate_ig(gen_func, state, text, model_name, request: gr.Request):
462
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
463
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
464
  with open(output_file, 'w') as f:
465
- state.output.save(f, 'JPEG')
466
  save_image_file_on_log_server(output_file)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
 
 
 
 
 
 
 
468
  def generate_igm(gen_func, state0, state1, text, model_name0, model_name1, request: gr.Request):
469
  if not text:
470
  raise gr.Warning("Prompt cannot be empty.")
@@ -525,9 +631,71 @@ def generate_igm(gen_func, state0, state1, text, model_name0, model_name1, reque
525
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
526
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
527
  with open(output_file, 'w') as f:
528
- state.output.save(f, 'JPEG')
529
  save_image_file_on_log_server(output_file)
530
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
531
  def generate_igm_annoy(gen_func, state0, state1, text, model_name0, model_name1, request: gr.Request):
532
  if not text:
533
  raise gr.Warning("Prompt cannot be empty.")
@@ -538,8 +706,8 @@ def generate_igm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
538
  ip = get_ip(request)
539
  igm_logger.info(f"generate. ip: {ip}")
540
  start_tstamp = time.time()
541
- model_name0 = re.sub(r"### Model A: ", "", model_name0)
542
- model_name1 = re.sub(r"### Model B: ", "", model_name1)
543
  generated_image0, generated_image1, model_name0, model_name1 = gen_func(text, model_name0, model_name1)
544
  state0.prompt = text
545
  state1.prompt = text
@@ -549,7 +717,7 @@ def generate_igm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
549
  state1.model_name = model_name1
550
 
551
  yield state0, state1, generated_image0, generated_image1, \
552
- gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
553
 
554
  finish_tstamp = time.time()
555
  # logger.info(f"===output===: {output}")
@@ -584,9 +752,65 @@ def generate_igm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
584
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
585
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
586
  with open(output_file, 'w') as f:
587
- state.output.save(f, 'JPEG')
588
  save_image_file_on_log_server(output_file)
589
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
590
 
591
  def generate_ie(gen_func, state, source_text, target_text, instruct_text, source_image, model_name, request: gr.Request):
592
  if not source_text:
@@ -634,13 +858,59 @@ def generate_ie(gen_func, state, source_text, target_text, instruct_text, source
634
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
635
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
636
  with open(src_img_file, 'w') as f:
637
- state.source_image.save(f, 'JPEG')
638
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
639
  with open(output_file, 'w') as f:
640
- state.output.save(f, 'JPEG')
641
  save_image_file_on_log_server(src_img_file)
642
  save_image_file_on_log_server(output_file)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
643
 
 
 
 
 
 
 
 
 
 
 
 
644
  def generate_iem(gen_func, state0, state1, source_text, target_text, instruct_text, source_image, model_name0, model_name1, request: gr.Request):
645
  if not source_text:
646
  raise gr.Warning("Source prompt cannot be empty.")
@@ -712,10 +982,80 @@ def generate_iem(gen_func, state0, state1, source_text, target_text, instruct_te
712
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
713
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
714
  with open(src_img_file, 'w') as f:
715
- state.source_image.save(f, 'JPEG')
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
716
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
717
  with open(output_file, 'w') as f:
718
- state.output.save(f, 'JPEG')
719
  save_image_file_on_log_server(src_img_file)
720
  save_image_file_on_log_server(output_file)
721
 
@@ -736,8 +1076,8 @@ def generate_iem_annoy(gen_func, state0, state1, source_text, target_text, instr
736
  ip = get_ip(request)
737
  igm_logger.info(f"generate. ip: {ip}")
738
  start_tstamp = time.time()
739
- model_name0 = re.sub(r"### Model A: ", "", model_name0)
740
- model_name1 = re.sub(r"### Model B: ", "", model_name1)
741
  generated_image0, generated_image1, model_name0, model_name1 = gen_func(source_text, target_text, instruct_text, source_image, model_name0, model_name1)
742
  state0.source_prompt = source_text
743
  state0.target_prompt = target_text
@@ -753,7 +1093,7 @@ def generate_iem_annoy(gen_func, state0, state1, source_text, target_text, instr
753
  state1.model_name = model_name1
754
 
755
  yield state0, state1, generated_image0, generated_image1, \
756
- gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
757
 
758
  finish_tstamp = time.time()
759
  # logger.info(f"===output===: {output}")
@@ -788,10 +1128,77 @@ def generate_iem_annoy(gen_func, state0, state1, source_text, target_text, instr
788
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
789
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
790
  with open(src_img_file, 'w') as f:
791
- state.source_image.save(f, 'JPEG')
792
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
793
  with open(output_file, 'w') as f:
794
- state.output.save(f, 'JPEG')
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
795
  save_image_file_on_log_server(src_img_file)
796
  save_image_file_on_log_server(output_file)
797
 
@@ -866,6 +1273,8 @@ def generate_vgm(gen_func, state0, state1, text, model_name0, model_name1, reque
866
  state1.output = generated_video1
867
  state0.model_name = model_name0
868
  state1.model_name = model_name1
 
 
869
  print("====== model name =========")
870
  print(state0.model_name)
871
  print(state1.model_name)
@@ -928,8 +1337,8 @@ def generate_vgm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
928
  ip = get_ip(request)
929
  vgm_logger.info(f"generate. ip: {ip}")
930
  start_tstamp = time.time()
931
- model_name0 = re.sub(r"### Model A: ", "", model_name0)
932
- model_name1 = re.sub(r"### Model B: ", "", model_name1)
933
  generated_video0, generated_video1, model_name0, model_name1 = gen_func(text, model_name0, model_name1)
934
  state0.prompt = text
935
  state1.prompt = text
@@ -937,7 +1346,7 @@ def generate_vgm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
937
  state1.output = generated_video1
938
  state0.model_name = model_name0
939
  state1.model_name = model_name1
940
-
941
  # yield state0, state1, generated_video0, generated_video1, \
942
  # gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
943
 
@@ -984,4 +1393,4 @@ def generate_vgm_annoy(gen_func, state0, state1, text, model_name0, model_name1,
984
  save_video_file_on_log_server(output_file)
985
 
986
  yield state0, state1, f'{VIDEO_DIR}/generation/{state0.conv_id}.mp4', f'{VIDEO_DIR}/generation/{state1.conv_id}.mp4', \
987
- gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
 
9
  from .log_utils import build_logger
10
  from .constants import IMAGE_DIR, VIDEO_DIR
11
  import imageio
12
+ from diffusers.utils import load_image
13
 
14
  ig_logger = build_logger("gradio_web_server_image_generation", "gr_web_image_generation.log") # ig = image generation, loggers for single model direct chat
15
  igm_logger = build_logger("gradio_web_server_image_generation_multi", "gr_web_image_generation_multi.log") # igm = image generation multi, loggers for side-by-side and battle
 
18
  vg_logger = build_logger("gradio_web_server_video_generation", "gr_web_video_generation.log") # vg = video generation, loggers for single model direct chat
19
  vgm_logger = build_logger("gradio_web_server_video_generation_multi", "gr_web_video_generation_multi.log") # vgm = video generation multi, loggers for side-by-side and battle
20
 
21
+ def save_any_image(image_file, file_path):
22
+ if isinstance(image_file, str):
23
+ image = load_image(image_file)
24
+ image.save(file_path, 'JPEG')
25
+ else:
26
+ image_file.save(file_path, 'JPEG')
27
+
28
  def vote_last_response_ig(state, vote_type, model_selector, request: gr.Request):
29
  with open(get_conv_log_filename(), "a") as fout:
30
  data = {
 
38
  append_json_item_on_log_server(data, get_conv_log_filename())
39
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
40
  with open(output_file, 'w') as f:
41
+ save_any_image(state.output, f)
42
  save_image_file_on_log_server(output_file)
43
 
44
  def vote_last_response_igm(states, vote_type, model_selectors, request: gr.Request):
 
55
  for state in states:
56
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
57
  with open(output_file, 'w') as f:
58
+ save_any_image(state.output, f)
59
  save_image_file_on_log_server(output_file)
60
 
61
  def vote_last_response_ie(state, vote_type, model_selector, request: gr.Request):
 
72
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}.jpg'
73
  source_file = f'{IMAGE_DIR}/edition/{state.conv_id}_source.jpg'
74
  with open(output_file, 'w') as f:
75
+ save_any_image(state.output, f)
76
  with open(source_file, 'w') as sf:
77
+ save_any_image(state.source_image, sf)
78
  save_image_file_on_log_server(output_file)
79
  save_image_file_on_log_server(source_file)
80
 
 
93
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}.jpg'
94
  source_file = f'{IMAGE_DIR}/edition/{state.conv_id}_source.jpg'
95
  with open(output_file, 'w') as f:
96
+ save_any_image(state.output, f)
97
  with open(source_file, 'w') as sf:
98
+ save_any_image(state.source_image, sf)
99
  save_image_file_on_log_server(output_file)
100
  save_image_file_on_log_server(source_file)
101
 
 
180
  vote_last_response_igm(
181
  [state0, state1], "leftvote", [model_selector0, model_selector1], request
182
  )
183
+ if model_selector0 == "":
184
+ return ("",) + (disable_btn,) * 4 + (
185
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
186
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
187
+ else:
188
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(state0.model_name, visible=True),
189
+ gr.Markdown(state1.model_name, visible=True))
190
 
191
  def rightvote_last_response_igm(
192
  state0, state1, model_selector0, model_selector1, request: gr.Request
 
195
  vote_last_response_igm(
196
  [state0, state1], "rightvote", [model_selector0, model_selector1], request
197
  )
198
+ print(model_selector0)
199
+ if model_selector0 == "":
200
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True), gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
201
+ else:
202
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(state0.model_name, visible=True),
203
+ gr.Markdown(state1.model_name, visible=True))
204
 
205
 
206
  def tievote_last_response_igm(
 
210
  vote_last_response_igm(
211
  [state0, state1], "tievote", [model_selector0, model_selector1], request
212
  )
213
+ if model_selector0 == "":
214
+ return ("",) + (disable_btn,) * 4 + (
215
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
216
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
217
+ else:
218
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(state0.model_name, visible=True),
219
+ gr.Markdown(state1.model_name, visible=True))
220
 
221
 
222
  def bothbad_vote_last_response_igm(
 
226
  vote_last_response_igm(
227
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
228
  )
229
+ if model_selector0 == "":
230
+ return ("",) + (disable_btn,) * 4 + (
231
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
232
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
233
+ else:
234
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(state0.model_name, visible=True),
235
+ gr.Markdown(state1.model_name, visible=True))
236
 
237
  ## Image Editing (IE) Single Model Direct Chat
238
 
 
267
  # "### Model B: " + state1.model_name,
268
  # )
269
  # names = (state0.model_name, state1.model_name)
270
+ if model_selector0 == "":
271
+ names = (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True), gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
272
+ else:
273
+ names = (gr.Markdown(state0.model_name, visible=False), gr.Markdown(state1.model_name, visible=False))
274
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
275
 
276
  def rightvote_last_response_iem(
 
284
  # "### Model A: " + state0.model_name,
285
  # "### Model B: " + state1.model_name,
286
  # )
287
+ if model_selector0 == "":
288
+ names = (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
289
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
290
+ else:
291
+ names = (gr.Markdown(state0.model_name, visible=False), gr.Markdown(state1.model_name, visible=False))
292
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
293
 
294
  def tievote_last_response_iem(
 
298
  vote_last_response_iem(
299
  [state0, state1], "tievote", [model_selector0, model_selector1], request
300
  )
301
+ if model_selector0 == "":
302
+ names = (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
303
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
304
+ else:
305
+ names = (gr.Markdown(state0.model_name, visible=False), gr.Markdown(state1.model_name, visible=False))
306
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
307
 
308
  def bothbad_vote_last_response_iem(
 
312
  vote_last_response_iem(
313
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
314
  )
315
+ if model_selector0 == "":
316
+ names = (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
317
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
318
+ else:
319
+ names = (gr.Markdown(state0.model_name, visible=False), gr.Markdown(state1.model_name, visible=False))
320
  return names + ("", "", gr.Image(height=512, width=512, type="pil"), "") + (disable_btn,) * 4
321
 
322
 
 
349
  vote_last_response_vgm(
350
  [state0, state1], "leftvote", [model_selector0, model_selector1], request
351
  )
352
+ if model_selector0 == "":
353
+ return ("",) + (disable_btn,) * 4 + (gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True), gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
354
+ else:
355
+ return ("",) + (disable_btn,) * 4 + (
356
+ gr.Markdown(state0.model_name, visible=False),
357
+ gr.Markdown(state1.model_name, visible=False))
358
 
359
 
360
  def rightvote_last_response_vgm(
 
364
  vote_last_response_vgm(
365
  [state0, state1], "rightvote", [model_selector0, model_selector1], request
366
  )
367
+ if model_selector0 == "":
368
+ return ("",) + (disable_btn,) * 4 + (
369
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
370
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
371
+ else:
372
+ return ("",) + (disable_btn,) * 4 + (
373
+ gr.Markdown(state0.model_name, visible=False),
374
+ gr.Markdown(state1.model_name, visible=False))
375
 
376
  def tievote_last_response_vgm(
377
  state0, state1, model_selector0, model_selector1, request: gr.Request
 
380
  vote_last_response_vgm(
381
  [state0, state1], "tievote", [model_selector0, model_selector1], request
382
  )
383
+ if model_selector0 == "":
384
+ return ("",) + (disable_btn,) * 4 + (
385
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
386
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
387
+ else:
388
+ return ("",) + (disable_btn,) * 4 + (
389
+ gr.Markdown(state0.model_name, visible=False),
390
+ gr.Markdown(state1.model_name, visible=False))
391
 
392
 
393
  def bothbad_vote_last_response_vgm(
 
397
  vote_last_response_vgm(
398
  [state0, state1], "bothbad_vote", [model_selector0, model_selector1], request
399
  )
400
+ if model_selector0 == "":
401
+ return ("",) + (disable_btn,) * 4 + (
402
+ gr.Markdown(f"### Model A: {state0.model_name.split('_')[1]}", visible=True),
403
+ gr.Markdown(f"### Model B: {state1.model_name.split('_')[1]}", visible=True))
404
+ else:
405
+ return ("",) + (disable_btn,) * 4 + (
406
+ gr.Markdown(state0.model_name, visible=False),
407
+ gr.Markdown(state1.model_name, visible=False))
408
 
409
  share_js = """
410
  function (a, b, c, d) {
 
493
  return base
494
 
495
 
 
 
496
  def generate_ig(gen_func, state, text, model_name, request: gr.Request):
497
  if not text:
498
  raise gr.Warning("Prompt cannot be empty.")
 
530
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
531
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
532
  with open(output_file, 'w') as f:
533
+ save_any_image(state.output, f)
534
  save_image_file_on_log_server(output_file)
535
+
536
+ def generate_ig_museum(gen_func, state, model_name, request: gr.Request):
537
+ if not model_name:
538
+ raise gr.Warning("Model name cannot be empty.")
539
+ if state is None:
540
+ state = ImageStateIG(model_name)
541
+ ip = get_ip(request)
542
+ ig_logger.info(f"generate. ip: {ip}")
543
+ start_tstamp = time.time()
544
+ generated_image, text = gen_func(model_name)
545
+ state.prompt = text
546
+ state.output = generated_image
547
+ state.model_name = model_name
548
+
549
+ yield state, generated_image, text
550
+
551
+ finish_tstamp = time.time()
552
+ # logger.info(f"===output===: {output}")
553
+
554
+ with open(get_conv_log_filename(), "a") as fout:
555
+ data = {
556
+ "tstamp": round(finish_tstamp, 4),
557
+ "type": "chat",
558
+ "model": model_name,
559
+ "gen_params": {},
560
+ "start": round(start_tstamp, 4),
561
+ "finish": round(finish_tstamp, 4),
562
+ "state": state.dict(),
563
+ "ip": get_ip(request),
564
+ }
565
+ fout.write(json.dumps(data) + "\n")
566
+ append_json_item_on_log_server(data, get_conv_log_filename())
567
 
568
+ output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
569
+ os.makedirs(os.path.dirname(output_file), exist_ok=True)
570
+ with open(output_file, 'w') as f:
571
+ save_any_image(state.output, f)
572
+ save_image_file_on_log_server(output_file)
573
+
574
  def generate_igm(gen_func, state0, state1, text, model_name0, model_name1, request: gr.Request):
575
  if not text:
576
  raise gr.Warning("Prompt cannot be empty.")
 
631
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
632
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
633
  with open(output_file, 'w') as f:
634
+ save_any_image(state.output, f)
635
  save_image_file_on_log_server(output_file)
636
+
637
+ def generate_igm_museum(gen_func, state0, state1, model_name0, model_name1, request: gr.Request):
638
+ if not model_name0:
639
+ raise gr.Warning("Model name A cannot be empty.")
640
+ if not model_name1:
641
+ raise gr.Warning("Model name B cannot be empty.")
642
+ if state0 is None:
643
+ state0 = ImageStateIG(model_name0)
644
+ if state1 is None:
645
+ state1 = ImageStateIG(model_name1)
646
+ ip = get_ip(request)
647
+ igm_logger.info(f"generate. ip: {ip}")
648
+ start_tstamp = time.time()
649
+ # Remove ### Model (A|B): from model name
650
+ model_name0 = re.sub(r"### Model A: ", "", model_name0)
651
+ model_name1 = re.sub(r"### Model B: ", "", model_name1)
652
+ generated_image0, generated_image1, text = gen_func(model_name0, model_name1)
653
+ state0.prompt = text
654
+ state1.prompt = text
655
+ state0.output = generated_image0
656
+ state1.output = generated_image1
657
+ state0.model_name = model_name0
658
+ state1.model_name = model_name1
659
+
660
+ yield state0, state1, generated_image0, generated_image1, text
661
+
662
+ finish_tstamp = time.time()
663
+ # logger.info(f"===output===: {output}")
664
+
665
+ with open(get_conv_log_filename(), "a") as fout:
666
+ data = {
667
+ "tstamp": round(finish_tstamp, 4),
668
+ "type": "chat",
669
+ "model": model_name0,
670
+ "gen_params": {},
671
+ "start": round(start_tstamp, 4),
672
+ "finish": round(finish_tstamp, 4),
673
+ "state": state0.dict(),
674
+ "ip": get_ip(request),
675
+ }
676
+ fout.write(json.dumps(data) + "\n")
677
+ append_json_item_on_log_server(data, get_conv_log_filename())
678
+ data = {
679
+ "tstamp": round(finish_tstamp, 4),
680
+ "type": "chat",
681
+ "model": model_name1,
682
+ "gen_params": {},
683
+ "start": round(start_tstamp, 4),
684
+ "finish": round(finish_tstamp, 4),
685
+ "state": state1.dict(),
686
+ "ip": get_ip(request),
687
+ }
688
+ fout.write(json.dumps(data) + "\n")
689
+ append_json_item_on_log_server(data, get_conv_log_filename())
690
+
691
+ for i, state in enumerate([state0, state1]):
692
+ output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
693
+ os.makedirs(os.path.dirname(output_file), exist_ok=True)
694
+ with open(output_file, 'w') as f:
695
+ save_any_image(state.output, f)
696
+ save_image_file_on_log_server(output_file)
697
+
698
+
699
  def generate_igm_annoy(gen_func, state0, state1, text, model_name0, model_name1, request: gr.Request):
700
  if not text:
701
  raise gr.Warning("Prompt cannot be empty.")
 
706
  ip = get_ip(request)
707
  igm_logger.info(f"generate. ip: {ip}")
708
  start_tstamp = time.time()
709
+ model_name0 = ""
710
+ model_name1 = ""
711
  generated_image0, generated_image1, model_name0, model_name1 = gen_func(text, model_name0, model_name1)
712
  state0.prompt = text
713
  state1.prompt = text
 
717
  state1.model_name = model_name1
718
 
719
  yield state0, state1, generated_image0, generated_image1, \
720
+ gr.Markdown(f"### Model A: {model_name0}", visible=False), gr.Markdown(f"### Model B: {model_name1}", visible=False)
721
 
722
  finish_tstamp = time.time()
723
  # logger.info(f"===output===: {output}")
 
752
  output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
753
  os.makedirs(os.path.dirname(output_file), exist_ok=True)
754
  with open(output_file, 'w') as f:
755
+ save_any_image(state.output, f)
756
  save_image_file_on_log_server(output_file)
757
 
758
+ def generate_igm_annoy_museum(gen_func, state0, state1, model_name0, model_name1, request: gr.Request):
759
+ if state0 is None:
760
+ state0 = ImageStateIG(model_name0)
761
+ if state1 is None:
762
+ state1 = ImageStateIG(model_name1)
763
+ ip = get_ip(request)
764
+ igm_logger.info(f"generate. ip: {ip}")
765
+ start_tstamp = time.time()
766
+ model_name0 = re.sub(r"### Model A: ", "", model_name0)
767
+ model_name1 = re.sub(r"### Model B: ", "", model_name1)
768
+ generated_image0, generated_image1, model_name0, model_name1, text = gen_func(model_name0, model_name1)
769
+ state0.prompt = text
770
+ state1.prompt = text
771
+ state0.output = generated_image0
772
+ state1.output = generated_image1
773
+ state0.model_name = model_name0
774
+ state1.model_name = model_name1
775
+
776
+ yield state0, state1, generated_image0, generated_image1, text,\
777
+ gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
778
+
779
+ finish_tstamp = time.time()
780
+ # logger.info(f"===output===: {output}")
781
+
782
+ with open(get_conv_log_filename(), "a") as fout:
783
+ data = {
784
+ "tstamp": round(finish_tstamp, 4),
785
+ "type": "chat",
786
+ "model": model_name0,
787
+ "gen_params": {},
788
+ "start": round(start_tstamp, 4),
789
+ "finish": round(finish_tstamp, 4),
790
+ "state": state0.dict(),
791
+ "ip": get_ip(request),
792
+ }
793
+ fout.write(json.dumps(data) + "\n")
794
+ append_json_item_on_log_server(data, get_conv_log_filename())
795
+ data = {
796
+ "tstamp": round(finish_tstamp, 4),
797
+ "type": "chat",
798
+ "model": model_name1,
799
+ "gen_params": {},
800
+ "start": round(start_tstamp, 4),
801
+ "finish": round(finish_tstamp, 4),
802
+ "state": state1.dict(),
803
+ "ip": get_ip(request),
804
+ }
805
+ fout.write(json.dumps(data) + "\n")
806
+ append_json_item_on_log_server(data, get_conv_log_filename())
807
+
808
+ for i, state in enumerate([state0, state1]):
809
+ output_file = f'{IMAGE_DIR}/generation/{state.conv_id}.jpg'
810
+ os.makedirs(os.path.dirname(output_file), exist_ok=True)
811
+ with open(output_file, 'w') as f:
812
+ save_any_image(state.output, f)
813
+ save_image_file_on_log_server(output_file)
814
 
815
  def generate_ie(gen_func, state, source_text, target_text, instruct_text, source_image, model_name, request: gr.Request):
816
  if not source_text:
 
858
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
859
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
860
  with open(src_img_file, 'w') as f:
861
+ save_any_image(state.source_image, f)
862
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
863
  with open(output_file, 'w') as f:
864
+ save_any_image(state.output, f)
865
  save_image_file_on_log_server(src_img_file)
866
  save_image_file_on_log_server(output_file)
867
+
868
+ def generate_ie_museum(gen_func, state, model_name, request: gr.Request):
869
+ if not model_name:
870
+ raise gr.Warning("Model name cannot be empty.")
871
+ if state is None:
872
+ state = ImageStateIE(model_name)
873
+ ip = get_ip(request)
874
+ ig_logger.info(f"generate. ip: {ip}")
875
+ start_tstamp = time.time()
876
+ source_image, generated_image, source_text, target_text, instruct_text = gen_func(model_name)
877
+ state.source_prompt = source_text
878
+ state.target_prompt = target_text
879
+ state.instruct_prompt = instruct_text
880
+ state.source_image = source_image
881
+ state.output = generated_image
882
+ state.model_name = model_name
883
+
884
+ yield state, generated_image, source_image, source_text, target_text, instruct_text
885
+
886
+ finish_tstamp = time.time()
887
+ # logger.info(f"===output===: {output}")
888
+
889
+ with open(get_conv_log_filename(), "a") as fout:
890
+ data = {
891
+ "tstamp": round(finish_tstamp, 4),
892
+ "type": "chat",
893
+ "model": model_name,
894
+ "gen_params": {},
895
+ "start": round(start_tstamp, 4),
896
+ "finish": round(finish_tstamp, 4),
897
+ "state": state.dict(),
898
+ "ip": get_ip(request),
899
+ }
900
+ fout.write(json.dumps(data) + "\n")
901
+ append_json_item_on_log_server(data, get_conv_log_filename())
902
 
903
+ src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
904
+ os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
905
+ with open(src_img_file, 'w') as f:
906
+ save_any_image(state.source_image, f)
907
+ output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
908
+ with open(output_file, 'w') as f:
909
+ save_any_image(state.output, f)
910
+ save_image_file_on_log_server(src_img_file)
911
+ save_image_file_on_log_server(output_file)
912
+
913
+
914
  def generate_iem(gen_func, state0, state1, source_text, target_text, instruct_text, source_image, model_name0, model_name1, request: gr.Request):
915
  if not source_text:
916
  raise gr.Warning("Source prompt cannot be empty.")
 
982
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
983
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
984
  with open(src_img_file, 'w') as f:
985
+ save_any_image(state.source_image, f)
986
+ output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
987
+ with open(output_file, 'w') as f:
988
+ save_any_image(state.output, f)
989
+ save_image_file_on_log_server(src_img_file)
990
+ save_image_file_on_log_server(output_file)
991
+
992
+ def generate_iem_museum(gen_func, state0, state1, model_name0, model_name1, request: gr.Request):
993
+ if not model_name0:
994
+ raise gr.Warning("Model name A cannot be empty.")
995
+ if not model_name1:
996
+ raise gr.Warning("Model name B cannot be empty.")
997
+ if state0 is None:
998
+ state0 = ImageStateIE(model_name0)
999
+ if state1 is None:
1000
+ state1 = ImageStateIE(model_name1)
1001
+ ip = get_ip(request)
1002
+ igm_logger.info(f"generate. ip: {ip}")
1003
+ start_tstamp = time.time()
1004
+ model_name0 = re.sub(r"### Model A: ", "", model_name0)
1005
+ model_name1 = re.sub(r"### Model B: ", "", model_name1)
1006
+ source_image, generated_image0, generated_image1, source_text, target_text, instruct_text = gen_func(model_name0, model_name1)
1007
+ state0.source_prompt = source_text
1008
+ state0.target_prompt = target_text
1009
+ state0.instruct_prompt = instruct_text
1010
+ state0.source_image = source_image
1011
+ state0.output = generated_image0
1012
+ state0.model_name = model_name0
1013
+ state1.source_prompt = source_text
1014
+ state1.target_prompt = target_text
1015
+ state1.instruct_prompt = instruct_text
1016
+ state1.source_image = source_image
1017
+ state1.output = generated_image1
1018
+ state1.model_name = model_name1
1019
+
1020
+ yield state0, state1, generated_image0, generated_image1, source_image, source_text, target_text, instruct_text
1021
+
1022
+ finish_tstamp = time.time()
1023
+ # logger.info(f"===output===: {output}")
1024
+
1025
+ with open(get_conv_log_filename(), "a") as fout:
1026
+ data = {
1027
+ "tstamp": round(finish_tstamp, 4),
1028
+ "type": "chat",
1029
+ "model": model_name0,
1030
+ "gen_params": {},
1031
+ "start": round(start_tstamp, 4),
1032
+ "finish": round(finish_tstamp, 4),
1033
+ "state": state0.dict(),
1034
+ "ip": get_ip(request),
1035
+ }
1036
+ fout.write(json.dumps(data) + "\n")
1037
+ append_json_item_on_log_server(data, get_conv_log_filename())
1038
+ data = {
1039
+ "tstamp": round(finish_tstamp, 4),
1040
+ "type": "chat",
1041
+ "model": model_name1,
1042
+ "gen_params": {},
1043
+ "start": round(start_tstamp, 4),
1044
+ "finish": round(finish_tstamp, 4),
1045
+ "state": state1.dict(),
1046
+ "ip": get_ip(request),
1047
+ }
1048
+ fout.write(json.dumps(data) + "\n")
1049
+ append_json_item_on_log_server(data, get_conv_log_filename())
1050
+
1051
+ for i, state in enumerate([state0, state1]):
1052
+ src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
1053
+ os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
1054
+ with open(src_img_file, 'w') as f:
1055
+ save_any_image(state.source_image, f)
1056
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
1057
  with open(output_file, 'w') as f:
1058
+ save_any_image(state.output, f)
1059
  save_image_file_on_log_server(src_img_file)
1060
  save_image_file_on_log_server(output_file)
1061
 
 
1076
  ip = get_ip(request)
1077
  igm_logger.info(f"generate. ip: {ip}")
1078
  start_tstamp = time.time()
1079
+ model_name0 = ""
1080
+ model_name1 = ""
1081
  generated_image0, generated_image1, model_name0, model_name1 = gen_func(source_text, target_text, instruct_text, source_image, model_name0, model_name1)
1082
  state0.source_prompt = source_text
1083
  state0.target_prompt = target_text
 
1093
  state1.model_name = model_name1
1094
 
1095
  yield state0, state1, generated_image0, generated_image1, \
1096
+ gr.Markdown(f"### Model A: {model_name0}", visible=False), gr.Markdown(f"### Model B: {model_name1}", visible=False)
1097
 
1098
  finish_tstamp = time.time()
1099
  # logger.info(f"===output===: {output}")
 
1128
  src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
1129
  os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
1130
  with open(src_img_file, 'w') as f:
1131
+ save_any_image(state.source_image, f)
1132
  output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
1133
  with open(output_file, 'w') as f:
1134
+ save_any_image(state.output, f)
1135
+ save_image_file_on_log_server(src_img_file)
1136
+ save_image_file_on_log_server(output_file)
1137
+
1138
+ def generate_iem_annoy_museum(gen_func, state0, state1, model_name0, model_name1, request: gr.Request):
1139
+ if state0 is None:
1140
+ state0 = ImageStateIE(model_name0)
1141
+ if state1 is None:
1142
+ state1 = ImageStateIE(model_name1)
1143
+ ip = get_ip(request)
1144
+ igm_logger.info(f"generate. ip: {ip}")
1145
+ start_tstamp = time.time()
1146
+ model_name0 = ""
1147
+ model_name1 = ""
1148
+ source_image, generated_image0, generated_image1, source_text, target_text, instruct_text, model_name0, model_name1 = gen_func(model_name0, model_name1)
1149
+ state0.source_prompt = source_text
1150
+ state0.target_prompt = target_text
1151
+ state0.instruct_prompt = instruct_text
1152
+ state0.source_image = source_image
1153
+ state0.output = generated_image0
1154
+ state0.model_name = model_name0
1155
+ state1.source_prompt = source_text
1156
+ state1.target_prompt = target_text
1157
+ state1.instruct_prompt = instruct_text
1158
+ state1.source_image = source_image
1159
+ state1.output = generated_image1
1160
+ state1.model_name = model_name1
1161
+
1162
+ yield state0, state1, generated_image0, generated_image1, source_image, source_text, target_text, instruct_text, \
1163
+ gr.Markdown(f"### Model A: {model_name0}", visible=False), gr.Markdown(f"### Model B: {model_name1}", visible=False)
1164
+
1165
+ finish_tstamp = time.time()
1166
+ # logger.info(f"===output===: {output}")
1167
+
1168
+ with open(get_conv_log_filename(), "a") as fout:
1169
+ data = {
1170
+ "tstamp": round(finish_tstamp, 4),
1171
+ "type": "chat",
1172
+ "model": model_name0,
1173
+ "gen_params": {},
1174
+ "start": round(start_tstamp, 4),
1175
+ "finish": round(finish_tstamp, 4),
1176
+ "state": state0.dict(),
1177
+ "ip": get_ip(request),
1178
+ }
1179
+ fout.write(json.dumps(data) + "\n")
1180
+ append_json_item_on_log_server(data, get_conv_log_filename())
1181
+ data = {
1182
+ "tstamp": round(finish_tstamp, 4),
1183
+ "type": "chat",
1184
+ "model": model_name1,
1185
+ "gen_params": {},
1186
+ "start": round(start_tstamp, 4),
1187
+ "finish": round(finish_tstamp, 4),
1188
+ "state": state1.dict(),
1189
+ "ip": get_ip(request),
1190
+ }
1191
+ fout.write(json.dumps(data) + "\n")
1192
+ append_json_item_on_log_server(data, get_conv_log_filename())
1193
+
1194
+ for i, state in enumerate([state0, state1]):
1195
+ src_img_file = f'{IMAGE_DIR}/edition/{state.conv_id}_src.jpg'
1196
+ os.makedirs(os.path.dirname(src_img_file), exist_ok=True)
1197
+ with open(src_img_file, 'w') as f:
1198
+ save_any_image(state.source_image, f)
1199
+ output_file = f'{IMAGE_DIR}/edition/{state.conv_id}_out.jpg'
1200
+ with open(output_file, 'w') as f:
1201
+ save_any_image(state.output, f)
1202
  save_image_file_on_log_server(src_img_file)
1203
  save_image_file_on_log_server(output_file)
1204
 
 
1273
  state1.output = generated_video1
1274
  state0.model_name = model_name0
1275
  state1.model_name = model_name1
1276
+
1277
+ # yield state0, state1, generated_video0, generated_video1
1278
  print("====== model name =========")
1279
  print(state0.model_name)
1280
  print(state1.model_name)
 
1337
  ip = get_ip(request)
1338
  vgm_logger.info(f"generate. ip: {ip}")
1339
  start_tstamp = time.time()
1340
+ model_name0 = ""
1341
+ model_name1 = ""
1342
  generated_video0, generated_video1, model_name0, model_name1 = gen_func(text, model_name0, model_name1)
1343
  state0.prompt = text
1344
  state1.prompt = text
 
1346
  state1.output = generated_video1
1347
  state0.model_name = model_name0
1348
  state1.model_name = model_name1
1349
+
1350
  # yield state0, state1, generated_video0, generated_video1, \
1351
  # gr.Markdown(f"### Model A: {model_name0}"), gr.Markdown(f"### Model B: {model_name1}")
1352
 
 
1393
  save_video_file_on_log_server(output_file)
1394
 
1395
  yield state0, state1, f'{VIDEO_DIR}/generation/{state0.conv_id}.mp4', f'{VIDEO_DIR}/generation/{state1.conv_id}.mp4', \
1396
+ gr.Markdown(f"### Model A: {model_name0}", visible=False), gr.Markdown(f"### Model B: {model_name1}", visible=False)