DongfuJiang commited on
Commit
fb94ede
1 Parent(s): d7c6322

update upload battle

Browse files
arena_elo/elo_rating/clean_battle_data.py CHANGED
@@ -251,8 +251,6 @@ def clean_battle_data(
251
  continue
252
 
253
 
254
- question_id = row["states"][0]["conv_id"]
255
-
256
  ip = row["ip"]
257
  if ip not in all_ips:
258
  all_ips[ip] = {"ip": ip, "count": 0, "sanitized_id": len(all_ips)}
@@ -266,13 +264,40 @@ def clean_battle_data(
266
  ct_banned += 1
267
  print(f"User {user_id} is banned")
268
  continue
269
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
270
  # Save the results
271
  battles.append(
272
  dict(
273
- question_id=question_id,
 
 
274
  model_a=models[0],
275
  model_b=models[1],
 
276
  winner=convert_type[row["type"]],
277
  judge=f"arena_user_{user_id}",
278
  anony=anony,
@@ -330,14 +355,14 @@ if __name__ == "__main__":
330
  ).strftime("%Y%m%d")
331
 
332
  if args.mode == "simple":
333
- for x in battles:
334
- for key in [
335
- "conversation_a",
336
- "conversation_b",
337
- "question_id",
338
- ]:
339
- if key in x:
340
- del x[key]
341
  print("Samples:")
342
  for i in range(min(4, len(battles))):
343
  print(battles[i])
 
251
  continue
252
 
253
 
 
 
254
  ip = row["ip"]
255
  if ip not in all_ips:
256
  all_ips[ip] = {"ip": ip, "count": 0, "sanitized_id": len(all_ips)}
 
264
  ct_banned += 1
265
  print(f"User {user_id} is banned")
266
  continue
267
+ required_keys_each_task = {
268
+ "image_editing": ["source_prompt", "target_prompt", "instruct_prompt"],
269
+ "t2i_generation": ["prompt"],
270
+ "video_generation": ["prompt"]
271
+ }
272
+
273
+ model_a_inputs = row["states"][0].copy()
274
+ # pop conv_id and model_name
275
+ model_a_inputs.pop("conv_id")
276
+ model_a_inputs.pop("model_name")
277
+ model_b_inputs = row["states"][1].copy()
278
+ model_b_inputs.pop("conv_id")
279
+ model_b_inputs.pop("model_name")
280
+ for key in model_a_inputs:
281
+ if not (key in model_b_inputs and model_a_inputs[key] == model_b_inputs[key]):
282
+ print(f"Inconsistent inputs: {model_a_inputs} vs {model_b_inputs}")
283
+ ct_invalid += 1
284
+ continue
285
+ if mode == "conv_release":
286
+ if any(key not in model_a_inputs for key in required_keys_each_task[task_name]):
287
+ print(f"Missing required keys: {model_a_inputs}, {required_keys_each_task[task_name]}")
288
+ ct_invalid += 1
289
+ continue
290
+
291
+ inputs = model_a_inputs
292
  # Save the results
293
  battles.append(
294
  dict(
295
+ model_a_conv_id=row["states"][0]["conv_id"],
296
+ model_b_conv_id=row["states"][1]["conv_id"],
297
+ inputs=inputs,
298
  model_a=models[0],
299
  model_b=models[1],
300
+ vote_type=row["type"],
301
  winner=convert_type[row["type"]],
302
  judge=f"arena_user_{user_id}",
303
  anony=anony,
 
355
  ).strftime("%Y%m%d")
356
 
357
  if args.mode == "simple":
358
+ # for x in battles:
359
+ # for key in [
360
+ # "conversation_a",
361
+ # "conversation_b",
362
+ # "question_id",
363
+ # ]:
364
+ # if key in x:
365
+ # del x[key]
366
  print("Samples:")
367
  for i in range(min(4, len(battles))):
368
  print(battles[i])
arena_elo/elo_rating/upload_battle_data.py CHANGED
@@ -2,60 +2,36 @@ import fire
2
  import json
3
  import os
4
  import datasets
 
5
  import datetime
6
  from pathlib import Path
7
  from datetime import datetime
8
  from PIL import Image
9
 
10
  datasets.config.DEFAULT_MAX_BATCH_SIZE = 500
11
- def create_hf_dataset(data_file: str, split="test"):
12
- hf_dataset = datasets.Dataset.from_list(
13
- data_file,
14
- features=datasets.Features(
15
- {
16
- "question_id": datasets.Value("string"),
17
- "model": datasets.Value("string"),
18
- "conversation": [
19
- {
20
- "role": datasets.Value("string"),
21
- "content": datasets.Value("string"),
22
- }
23
- ],
24
- "language": datasets.Value("string"),
25
- "image": datasets.Image(),
26
- "turn": datasets.Value("int32"),
27
- }
28
- ),
29
- split=split,
30
- )
31
- return hf_dataset
32
 
33
- def create_hf_battle_dataset(data_file: str, split="test"):
34
- hf_dataset = datasets.Dataset.from_list(
35
- data_file,
36
- features=datasets.Features(
37
  {
38
- "question_id": datasets.Value("string"),
39
- "model_a": datasets.Value("string"),
40
- "model_b": datasets.Value("string"),
41
- "conversation_a": [
42
- {
43
- "role": datasets.Value("string"),
44
- "content": datasets.Value("string"),
45
- }
46
- ],
47
- "conversation_b": [
48
- {
49
- "role": datasets.Value("string"),
50
- "content": datasets.Value("string"),
51
- }
52
- ],
53
- "language": datasets.Value("string"),
54
- "image": datasets.Image(),
55
- "turn": datasets.Value("int32"),
56
  "anony": datasets.Value("bool"),
 
57
  }
58
- ),
 
 
 
 
 
59
  split=split,
60
  )
61
  return hf_dataset
@@ -81,106 +57,102 @@ def get_date_from_time_stamp(unix_timestamp: int):
81
  def load_battle_image(battle, log_dir):
82
  image_path = Path(log_dir) / f"{get_date_from_time_stamp(battle['tstamp'])}-convinput_images" / f"input_image_{battle['question_id']}.png"
83
  return load_image(image_path)
 
 
 
 
 
 
 
 
 
 
 
 
84
 
85
 
86
  def main(
87
- data_file: str = "./results/latest/clean_battle_conv.json",
88
- repo_id: str = "DongfuTingle/wildvision-bench",
89
- log_dir: str = os.getenv("LOGDIR", "./vision-arena-logs/"),
90
- mode="battle",
91
- token = os.environ.get("HUGGINGFACE_TOKEN", None)
 
 
 
 
92
  ):
 
 
 
 
93
  with open(data_file, "r") as f:
94
  data = json.load(f)
95
 
 
 
 
 
96
 
97
 
98
- has_image_stats = {
99
- "has_image": 0,
100
- "no_image": 0,
 
 
101
  }
102
- if mode == "keep_bad_only":
103
- # anony only
104
- data = [d for d in data if d["anony"]]
105
-
106
- new_data = []
107
- for battle in data:
108
- image = load_battle_image(battle, log_dir)
109
- if image is None:
110
- has_image_stats["no_image"] += 1
111
- # we don't keep the data without image
112
- continue
113
- has_image_stats["has_image"] += 1
114
-
115
- if battle["winner"] in ["model_a", "model_b"]:
116
- if battle["winner"] == "model_a":
117
- worse_model = "model_b"
118
- worse_conv = "conversation_b"
119
- if battle["winner"] == "model_b":
120
- worse_model = "model_a"
121
- worse_conv = "conversation_a"
122
-
123
- new_data.append({
124
- "question_id": battle["question_id"],
125
- "model": battle[worse_model],
126
- "conversation": battle[worse_conv],
127
- "language": battle["language"],
128
- "image": image,
129
- "turn": battle["turn"],
130
- })
131
- elif battle["winner"] == "tie (bothbad)":
132
-
133
- new_data.append({
134
- "question_id": battle["question_id"],
135
- "model": battle["model_a"],
136
- "conversation": battle["conversation_a"],
137
- "language": battle["language"],
138
- "image": image,
139
- "turn": battle["turn"],
140
- })
141
-
142
- new_data.append({
143
- "question_id": battle["question_id"],
144
- "model": battle["model_b"],
145
- "conversation": battle["conversation_b"],
146
- "language": battle["language"],
147
- "image": image,
148
- "turn": battle["turn"],
149
- })
150
-
151
- split = "test"
152
- hf_dataset = create_hf_dataset(new_data, "test")
153
 
154
- elif mode == "battle":
155
- new_data = []
 
 
 
 
156
  for battle in data:
157
- image = load_battle_image(battle, log_dir)
158
- if image is None:
159
- has_image_stats["no_image"] += 1
 
 
 
 
 
 
 
 
 
 
160
  continue
161
- has_image_stats["has_image"] += 1
162
  new_data.append({
163
- "question_id": battle["question_id"],
164
- "model_a": battle["model_a"],
165
- "model_b": battle["model_b"],
166
- "conversation_a": battle["conversation_a"],
167
- "conversation_b": battle["conversation_b"],
168
- "language": battle["language"],
169
- "image": image,
170
- "turn": battle["turn"],
171
- "anony": battle["anony"],
 
 
172
  })
173
  split = "test"
174
- hf_dataset = create_hf_battle_dataset(new_data, "test")
175
  else:
176
- raise ValueError(f"Invalid mode: {mode}")
177
 
178
- print(f"Stats: {has_image_stats}")
179
  print(hf_dataset)
180
  print(f"Uploading to part {repo_id}:{split}...")
181
  hf_dataset.push_to_hub(
182
  repo_id=repo_id,
183
- config_name=mode,
184
  split=split,
185
  token=token,
186
  commit_message=f"Add vision-arena {split} dataset",
 
2
  import json
3
  import os
4
  import datasets
5
+ import random
6
  import datetime
7
  from pathlib import Path
8
  from datetime import datetime
9
  from PIL import Image
10
 
11
  datasets.config.DEFAULT_MAX_BATCH_SIZE = 500
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
 
13
+ def create_hf_battle_dataset(data_file: str, split="test", task_type="t2i_generation"):
14
+ if task_type == "t2i_generation":
15
+ features = datasets.Features(
 
16
  {
17
+ "index": datasets.Value("int32"),
18
+ "tstamp": datasets.Value("int32"),
19
+ "prompt": datasets.Value("string"),
20
+ "left_model": datasets.Value("string"),
21
+ "left_image": datasets.Image(),
22
+ "right_model": datasets.Value("string"),
23
+ "right_image": datasets.Image(),
24
+ "vote_type": datasets.Value("string"),
25
+ "winner": datasets.Value("string"),
 
 
 
 
 
 
 
 
 
26
  "anony": datasets.Value("bool"),
27
+ "judge": datasets.Value("string"),
28
  }
29
+ )
30
+ else:
31
+ raise ValueError(f"Task type {task_type} not supported")
32
+ hf_dataset = datasets.Dataset.from_list(
33
+ data_file,
34
+ features=features,
35
  split=split,
36
  )
37
  return hf_dataset
 
57
  def load_battle_image(battle, log_dir):
58
  image_path = Path(log_dir) / f"{get_date_from_time_stamp(battle['tstamp'])}-convinput_images" / f"input_image_{battle['question_id']}.png"
59
  return load_image(image_path)
60
+
61
+ def find_media_path(conv_id, task_type, log_dir):
62
+ media_directory_map = {
63
+ "t2i_generation": "images/generation",
64
+ "image_edition": "images/edition",
65
+ "text2video": "videos/generation"
66
+ }
67
+ if task_type == "t2i_generation":
68
+ media_path = Path(log_dir) / media_directory_map[task_type] / f"{conv_id}.jpg"
69
+ else:
70
+ raise ValueError(f"Task type {task_type} not supported")
71
+ return media_path
72
 
73
 
74
  def main(
75
+ task_type='t2i_generation',
76
+ # data_file: str = "./results/latest/clean_battle_conv.json",
77
+ data_file: str = None,
78
+ repo_id: str = "DongfuJiang/GenAI-Arena-human-eval",
79
+ log_dir: str = os.getenv("LOGDIR", "../GenAI-Arena-hf-logs/vote_log"),
80
+ config_name='battle',
81
+ split='test',
82
+ token = os.environ.get("HUGGINGFACE_TOKEN", None),
83
+ seed=42,
84
  ):
85
+ if data_file is None:
86
+ data_file = f"./results/latest/clean_battle_{task_type}.json"
87
+ if not os.path.exists(data_file):
88
+ raise ValueError(f"Data file {data_file} does not exist")
89
  with open(data_file, "r") as f:
90
  data = json.load(f)
91
 
92
+ # add index according to the tsamp
93
+ if seed is not None:
94
+ random.seed(seed)
95
+ # data = random.sample(data, 50 * 7)
96
 
97
 
98
+ data = sorted(data, key=lambda x: x['tstamp'])
99
+ required_keys_each_task = {
100
+ "image_editing": ["source_prompt", "target_prompt", "instruct_prompt"],
101
+ "t2i_generation": ["prompt"],
102
+ "video_generation": ["prompt"]
103
  }
104
+ valid_data = []
105
+ for i, battle in enumerate(data):
106
+ if any(key not in battle['inputs'] for key in required_keys_each_task[task_type]):
107
+ # print(f"Skipping battle {i} due to missing keys")
108
+ continue
109
+ valid_data.append(battle)
110
+ data = valid_data
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
 
112
+ for i, battle in enumerate(data):
113
+ battle['index'] = i
114
+
115
+
116
+ new_data = []
117
+ if task_type == 't2i_generation':
118
  for battle in data:
119
+ prompt = battle['inputs']['prompt']
120
+ model_a = battle['model_a']
121
+ model_b = battle['model_b']
122
+ model_a_conv_id = battle['model_a_conv_id']
123
+ model_b_conv_id = battle['model_b_conv_id']
124
+ tstamp = battle['tstamp']
125
+ vote_type = battle['vote_type']
126
+ left_image_path = find_media_path(model_a_conv_id, task_type, log_dir)
127
+ right_image_path = find_media_path(model_b_conv_id, task_type, log_dir)
128
+ left_image = load_image(left_image_path)
129
+ right_image = load_image(right_image_path)
130
+ if left_image is None or right_image is None:
131
+ print(f"Skipping battle {battle['index']} due to missing images")
132
  continue
 
133
  new_data.append({
134
+ "index": battle['index'],
135
+ "tstamp": tstamp,
136
+ "prompt": prompt,
137
+ "left_model": model_a,
138
+ "left_image": left_image,
139
+ "right_model": model_b,
140
+ "right_image": right_image,
141
+ "vote_type": vote_type,
142
+ "winner": battle['winner'],
143
+ "anony": battle['anony'],
144
+ "judge": battle['judge'],
145
  })
146
  split = "test"
147
+ hf_dataset = create_hf_battle_dataset(new_data, split, task_type)
148
  else:
149
+ raise ValueError(f"Task type {task_type} not supported")
150
 
 
151
  print(hf_dataset)
152
  print(f"Uploading to part {repo_id}:{split}...")
153
  hf_dataset.push_to_hub(
154
  repo_id=repo_id,
155
+ config_name=config_name,
156
  split=split,
157
  token=token,
158
  commit_message=f"Add vision-arena {split} dataset",
arena_elo/results/20240812/clean_battle_image_editing.json CHANGED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/20240822/clean_battle_video_generation.json CHANGED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/20240829/clean_battle_t2i_generation.json ADDED
The diff for this file is too large to render. See raw diff
 
arena_elo/results/20240829/elo_results_t2i_generation.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5ef671f77ad5445c22d89e41197fb29a719cd60ec5371370b7d9d3b8369b2c03
3
+ size 88249
arena_elo/results/20240829/t2i_generation_leaderboard.csv ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
+ PlayGround V2.5,PlayGround V2.5,1125.9647113219344,1126.8179449346965,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
+ FLUX.1-dev,FLUX.1-dev,1122.977921149468,1141.8553966548204,flux-1-dev-non-commercial-license (other),Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
4
+ FLUX.1-schnell,FLUX.1-schnell,1083.197039124354,1078.930126686188,Apache-2.0,Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
5
+ PlayGround V2,PlayGround V2,1072.626941667019,1070.726547878426,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
6
+ Kolors,Kolors,1052.908730084688,1050.9850967380553,Apache-2.0,Kwai Kolors,https://huggingface.co/Kwai-Kolors/Kolors
7
+ HunyuanDiT,HunyuanDiT,1041.9179059135952,1029.5490717475357,tencent-hunyuan-community,Tencent,https://github.com/Tencent/HunyuanDiT
8
+ StableCascade,StableCascade,1037.9168175776274,1040.2341802192325,stable-cascade-nc-community (other),Stability AI,https://fal.ai/models/stable-cascade/api
9
+ SDXL-Lightning,SDXL-Lightning,1023.8917986436493,1027.1783912113383,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
10
+ PixArtAlpha,PixArtAlpha,1022.2807006610543,1011.6090234692596,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
11
+ PixArtSigma,PixArtSigma,1019.027621124307,1017.9548990662921,openrail++,PixArt-alpha,https://github.com/PixArt-alpha/PixArt-sigma
12
+ AuraFlow,AuraFlow,1005.6783096127664,1001.6148483504423,Apache-2.0,Fal.AI,https://huggingface.co/fal/AuraFlow
13
+ SD3,SD3,991.5967272859457,987.1118479592413,stabilityai-nc-research-community,Stability AI,https://huggingface.co/blog/sd3
14
+ SDXL,SDXL,964.6926541747703,964.4225091224126,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
15
+ SDXLTurbo,SDXLTurbo,912.792093681317,909.3024088309655,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
16
+ LCM(v1.5/XL),LCM(v1.5/XL),905.2873322742623,897.684769464938,openrail++,Latent Consistency,https://fal.ai/models/fast-lcm-diffusion-turbo
17
+ OpenJourney,OpenJourney,827.6690928608571,821.5243787424323,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
18
+ LCM,LCM,789.5736028423817,802.4526781048648,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7
arena_elo/results/latest/clean_battle_image_editing.json CHANGED
The diff for this file is too large to render. See raw diff
 
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/clean_battle_video_generation.json CHANGED
The diff for this file is too large to render. See raw diff
 
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:588311a3f3a0a82a99b6c93e4ddc49a5e9dbb3062ddadc8efe1975de696a0199
3
- size 88248
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5ef671f77ad5445c22d89e41197fb29a719cd60ec5371370b7d9d3b8369b2c03
3
+ size 88249
arena_elo/results/latest/t2i_generation_leaderboard.csv CHANGED
@@ -1,18 +1,18 @@
1
  key,Model,Arena Elo rating (anony),Arena Elo rating (full),License,Organization,Link
2
- PlayGround V2.5,PlayGround V2.5,1126.2671033011611,1127.144846385844,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
- FLUX.1-dev,FLUX.1-dev,1122.9582048577554,1141.6536600935985,flux-1-dev-non-commercial-license (other),Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
4
- FLUX.1-schnell,FLUX.1-schnell,1083.0152074641153,1078.8262638227134,Apache-2.0,Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
5
- PlayGround V2,PlayGround V2,1073.0339489627977,1071.1452200571498,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
6
- Kolors,Kolors,1052.8872305800394,1051.0132314632656,Apache-2.0,Kwai Kolors,https://huggingface.co/Kwai-Kolors/Kolors
7
- HunyuanDiT,HunyuanDiT,1042.095914504853,1029.7357908718288,tencent-hunyuan-community,Tencent,https://github.com/Tencent/HunyuanDiT
8
- StableCascade,StableCascade,1038.2021066856098,1040.5631483675481,stable-cascade-nc-community (other),Stability AI,https://fal.ai/models/stable-cascade/api
9
- SDXL-Lightning,SDXL-Lightning,1024.2153507509286,1027.5400610626618,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
10
- PixArtAlpha,PixArtAlpha,1022.9514312384921,1012.2288089547184,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
11
- PixArtSigma,PixArtSigma,1019.3453069221349,1018.2702682745402,openrail++,PixArt-alpha,https://github.com/PixArt-alpha/PixArt-sigma
12
- AuraFlow,AuraFlow,1001.228997074127,997.114469839989,Apache-2.0,Fal.AI,https://huggingface.co/fal/AuraFlow
13
- SD3,SD3,991.7812080130284,987.2707845693864,stabilityai-nc-research-community,Stability AI,https://huggingface.co/blog/sd3
14
- SDXL,SDXL,965.1076294757463,964.8000746525106,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
15
- SDXLTurbo,SDXLTurbo,913.1686128053395,909.6861549501493,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
16
- LCM(v1.5/XL),LCM(v1.5/XL),905.6902615871095,898.0724427034747,openrail++,Latent Consistency,https://fal.ai/models/fast-lcm-diffusion-turbo
17
- OpenJourney,OpenJourney,828.0685532627626,821.9169694977911,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
18
- LCM,LCM,789.9829325139982,802.8893988540598,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,1125.9647113219344,1126.8179449346965,Playground v2.5 Community License,Playground,https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic
3
+ FLUX.1-dev,FLUX.1-dev,1122.977921149468,1141.8553966548204,flux-1-dev-non-commercial-license (other),Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
4
+ FLUX.1-schnell,FLUX.1-schnell,1083.197039124354,1078.930126686188,Apache-2.0,Black Forest Labs,https://huggingface.co/docs/diffusers/main/en/api/pipelines/flux
5
+ PlayGround V2,PlayGround V2,1072.626941667019,1070.726547878426,Playground v2 Community License,Playground,https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic
6
+ Kolors,Kolors,1052.908730084688,1050.9850967380553,Apache-2.0,Kwai Kolors,https://huggingface.co/Kwai-Kolors/Kolors
7
+ HunyuanDiT,HunyuanDiT,1041.9179059135952,1029.5490717475357,tencent-hunyuan-community,Tencent,https://github.com/Tencent/HunyuanDiT
8
+ StableCascade,StableCascade,1037.9168175776274,1040.2341802192325,stable-cascade-nc-community (other),Stability AI,https://fal.ai/models/stable-cascade/api
9
+ SDXL-Lightning,SDXL-Lightning,1023.8917986436493,1027.1783912113383,openrail++,ByteDance,https://huggingface.co/ByteDance/SDXL-Lightning
10
+ PixArtAlpha,PixArtAlpha,1022.2807006610543,1011.6090234692596,openrail++,PixArt-alpha,https://huggingface.co/PixArt-alpha/PixArt-XL-2-1024-MS
11
+ PixArtSigma,PixArtSigma,1019.027621124307,1017.9548990662921,openrail++,PixArt-alpha,https://github.com/PixArt-alpha/PixArt-sigma
12
+ AuraFlow,AuraFlow,1005.6783096127664,1001.6148483504423,Apache-2.0,Fal.AI,https://huggingface.co/fal/AuraFlow
13
+ SD3,SD3,991.5967272859457,987.1118479592413,stabilityai-nc-research-community,Stability AI,https://huggingface.co/blog/sd3
14
+ SDXL,SDXL,964.6926541747703,964.4225091224126,openrail++,Stability AI,https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
15
+ SDXLTurbo,SDXLTurbo,912.792093681317,909.3024088309655,sai-nc-community (other),Stability AI,https://huggingface.co/stabilityai/sdxl-turbo
16
+ LCM(v1.5/XL),LCM(v1.5/XL),905.2873322742623,897.684769464938,openrail++,Latent Consistency,https://fal.ai/models/fast-lcm-diffusion-turbo
17
+ OpenJourney,OpenJourney,827.6690928608571,821.5243787424323,creativeml-openrail-m,PromptHero,https://huggingface.co/prompthero/openjourney
18
+ LCM,LCM,789.5736028423817,802.4526781048648,MIT License,Tsinghua University,https://huggingface.co/SimianLuo/LCM_Dreamshaper_v7