Spaces:
Running
Running
Minette Kaunismäki commited on
Commit ·
517e668
1
Parent(s): 1bf1b48
updating about page
Browse files
app.py
CHANGED
|
@@ -1799,8 +1799,8 @@ benchmarks = [
|
|
| 1799 |
"title": "Qwen Image Bench",
|
| 1800 |
"emoji": "🖼️",
|
| 1801 |
"card_description": (
|
| 1802 |
-
"Qwen image-bench prompts with P-
|
| 1803 |
-
"as metric columns, plus combined generations for comparison."
|
| 1804 |
),
|
| 1805 |
"intro": (
|
| 1806 |
"Qwen Image Bench is a shared prompt suite. The leaderboard joins every "
|
|
@@ -1813,8 +1813,8 @@ benchmarks = [
|
|
| 1813 |
"overall_column": qwen_overall_column,
|
| 1814 |
"note": (
|
| 1815 |
"> Models are ordered by Datapoint Elo when available. Other metric "
|
| 1816 |
-
"columns come from
|
| 1817 |
-
"prompt suite."
|
| 1818 |
),
|
| 1819 |
"samples": qwen_samples,
|
| 1820 |
},
|
|
@@ -2042,14 +2042,14 @@ with gr.Blocks(
|
|
| 2042 |
with gr.Tabs(elem_classes="main-tabs"):
|
| 2043 |
with gr.TabItem("Home"):
|
| 2044 |
render_home(benchmarks)
|
|
|
|
|
|
|
| 2045 |
with gr.TabItem("Benchmarks") as benchmarks_tab:
|
| 2046 |
reset_benchmarks, reset_benchmark_outputs = render_benchmarks(benchmarks)
|
| 2047 |
benchmarks_tab.select(
|
| 2048 |
reset_benchmarks,
|
| 2049 |
outputs=reset_benchmark_outputs,
|
| 2050 |
)
|
| 2051 |
-
with gr.TabItem("About"):
|
| 2052 |
-
render_about()
|
| 2053 |
render_footer()
|
| 2054 |
|
| 2055 |
|
|
|
|
| 1799 |
"title": "Qwen Image Bench",
|
| 1800 |
"emoji": "🖼️",
|
| 1801 |
"card_description": (
|
| 1802 |
+
"Qwen image-bench prompts with P-Judger (Pruna's judge), Datapoint Elo, "
|
| 1803 |
+
"and Rapidata Elo as metric columns, plus combined generations for comparison."
|
| 1804 |
),
|
| 1805 |
"intro": (
|
| 1806 |
"Qwen Image Bench is a shared prompt suite. The leaderboard joins every "
|
|
|
|
| 1813 |
"overall_column": qwen_overall_column,
|
| 1814 |
"note": (
|
| 1815 |
"> Models are ordered by Datapoint Elo when available. Other metric "
|
| 1816 |
+
"columns come from Pruna's P-Judger and the Rapidata evaluation on the "
|
| 1817 |
+
"same prompt suite."
|
| 1818 |
),
|
| 1819 |
"samples": qwen_samples,
|
| 1820 |
},
|
|
|
|
| 2042 |
with gr.Tabs(elem_classes="main-tabs"):
|
| 2043 |
with gr.TabItem("Home"):
|
| 2044 |
render_home(benchmarks)
|
| 2045 |
+
with gr.TabItem("About"):
|
| 2046 |
+
render_about()
|
| 2047 |
with gr.TabItem("Benchmarks") as benchmarks_tab:
|
| 2048 |
reset_benchmarks, reset_benchmark_outputs = render_benchmarks(benchmarks)
|
| 2049 |
benchmarks_tab.select(
|
| 2050 |
reset_benchmarks,
|
| 2051 |
outputs=reset_benchmark_outputs,
|
| 2052 |
)
|
|
|
|
|
|
|
| 2053 |
render_footer()
|
| 2054 |
|
| 2055 |
|
ui.py
CHANGED
|
@@ -23,75 +23,97 @@ MAX_COMPARE_PROMPTS = 8
|
|
| 23 |
ABOUT_OVERVIEW_CONTENT = """
|
| 24 |
# About InferBench
|
| 25 |
|
| 26 |
-
InferBench compares **text-to-image models**
|
| 27 |
-
price. Results are
|
| 28 |
-
score.
|
| 29 |
|
| 30 |
-
##
|
| 31 |
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
-
##
|
| 38 |
|
| 39 |
-
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
|
| 42 |
-
|
| 43 |
-
- Human / portrait
|
| 44 |
-
- General object
|
| 45 |
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
|
|
|
| 50 |
|
| 51 |
### Qwen Image Bench
|
| 52 |
-
A shared prompt
|
| 53 |
-
|
| 54 |
-
- **P-Judge Overall**: automatic preference / quality score
|
| 55 |
-
- **Datapoint Elo**: human-preference Elo (default sort key)
|
| 56 |
-
- **Rapidata Elo**: Elo from the Rapidata evaluation on this suite
|
| 57 |
-
|
| 58 |
-
Plus latency and price metadata, and combined generations for visual comparison.
|
| 59 |
-
|
| 60 |
-
## How to read the numbers
|
| 61 |
-
|
| 62 |
-
Quality metrics from different suites are **not interchangeable**: a high OneIG
|
| 63 |
-
Alignment score is not the same quantity as a Datapoint Elo. Prefer comparing models
|
| 64 |
-
*within* a benchmark column, and use price / generation time when you care about
|
| 65 |
-
efficiency.
|
| 66 |
-
|
| 67 |
-
The Pareto plot highlights models that are not dominated on both **higher score** and
|
| 68 |
-
**lower price**.
|
| 69 |
"""
|
| 70 |
|
| 71 |
ABOUT_DETAILS_CONTENT = """
|
| 72 |
-
#
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
"""
|
| 85 |
|
| 86 |
FOOTER_CONTENT = """
|
| 87 |
<div class="page-footer">
|
| 88 |
<h3>Join the Pruna AI community</h3>
|
| 89 |
<div class="community-footer-links">
|
| 90 |
-
<a rel="nofollow" href="https://x.com/PrunaAI" target="_blank">X
|
| 91 |
-
<a rel="nofollow" href="https://github.com/PrunaAI/pruna" target="_blank">GitHub</a>
|
| 92 |
<a rel="nofollow" href="https://www.linkedin.com/company/pruna-ai" target="_blank">LinkedIn</a>
|
| 93 |
<a rel="nofollow" href="https://discord.gg/JFQmtFKCjd" target="_blank">Discord</a>
|
| 94 |
-
<a rel="nofollow" href="https://
|
| 95 |
<a rel="nofollow" href="https://www.pruna.ai/" target="_blank">pruna.ai</a>
|
| 96 |
</div>
|
| 97 |
</div>
|
|
@@ -568,7 +590,7 @@ def _display_label(column):
|
|
| 568 |
"OneIG Anime Elo": "Anime Elo (Datapoint)",
|
| 569 |
"OneIG Human Elo": "Human Elo (Datapoint)",
|
| 570 |
"OneIG Object Elo": "Object Elo (Datapoint)",
|
| 571 |
-
"P-Judge Overall": "P-
|
| 572 |
"Datapoint Elo": "Datapoint Elo",
|
| 573 |
"Rapidata Elo": "Rapidata Elo",
|
| 574 |
"Benchmark.ai Elo": "Benchmark.ai Elo",
|
|
|
|
| 23 |
ABOUT_OVERVIEW_CONTENT = """
|
| 24 |
# About InferBench
|
| 25 |
|
| 26 |
+
InferBench compares **text-to-image models**, including optimized or accelerated
|
| 27 |
+
endpoints, on **quality, speed, and price**. Results are split by prompt suite;
|
| 28 |
+
there is no single score across InferBench.
|
| 29 |
|
| 30 |
+
## How to read it
|
| 31 |
|
| 32 |
+
1. Open a **prompt suite** on the Benchmarks tab.
|
| 33 |
+
2. **Leaderboard**: sort by a quality or preference column. Price and generation
|
| 34 |
+
time sit in the same table.
|
| 35 |
+
3. **Graphs**: Pareto plots mark models that are not beaten on both higher score
|
| 36 |
+
and lower price (or time).
|
| 37 |
+
4. **Compare samples**: the same prompts, side by side. Sample images are
|
| 38 |
+
available for OneIG Alignment today.
|
| 39 |
|
| 40 |
+
## How a score is made
|
| 41 |
|
| 42 |
+
1. Each endpoint is given the same prompt suite.
|
| 43 |
+
2. It generates one image per prompt when the run succeeds. Not every model
|
| 44 |
+
has every prompt or every metric.
|
| 45 |
+
3. Quality is scored automatically (OneIG alignment, P-Judger) and, where
|
| 46 |
+
available, by human preference (Datapoint Elo, Rapidata Elo).
|
| 47 |
+
4. Price per image and generation time are joined from the evaluation table.
|
| 48 |
|
| 49 |
+
## Current prompt suites
|
|
|
|
|
|
|
| 50 |
|
| 51 |
+
### OneIG Alignment
|
| 52 |
+
Prompt-image **alignment** on anime / stylization, human / portrait, and
|
| 53 |
+
general object prompts. This is the alignment slice of OneIG, not the full
|
| 54 |
+
suite. Default rank is the mean of the alignment categories that exist for
|
| 55 |
+
that row.
|
| 56 |
|
| 57 |
### Qwen Image Bench
|
| 58 |
+
A shared prompt set used to compare endpoints on the same prompts.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 59 |
"""
|
| 60 |
|
| 61 |
ABOUT_DETAILS_CONTENT = """
|
| 62 |
+
# Metrics & limits
|
| 63 |
+
|
| 64 |
+
## Metrics
|
| 65 |
+
|
| 66 |
+
- **Alignment**: how well the image matches the prompt (OneIG category scores).
|
| 67 |
+
- **P-Judger**: Pruna's automatic judger. A private scoring model that rates
|
| 68 |
+
each (prompt, image) pair in one pass and returns an absolute quality score,
|
| 69 |
+
not a pairwise Elo. It is not a text-to-image model on the leaderboard. Use
|
| 70 |
+
it alongside Datapoint and Rapidata Elo, not instead of them.
|
| 71 |
+
- **Datapoint Elo**: human-preference Elo from Datapoint pairwise comparisons.
|
| 72 |
+
- **Rapidata Elo**: human-preference Elo from the Rapidata evaluation on the
|
| 73 |
+
same suite.
|
| 74 |
+
- **Generation time**: median and minimum generation time in seconds, as
|
| 75 |
+
reported in the evaluation table. This is not a p95, and we do not state
|
| 76 |
+
warm vs cold or concurrent load.
|
| 77 |
+
- **Price**: USD per image in the evaluation table. We do not state list
|
| 78 |
+
price vs amount paid, or whether failed generations are included.
|
| 79 |
+
|
| 80 |
+
Scores from different suites or columns are **not interchangeable**. A high
|
| 81 |
+
OneIG alignment score is not the same quantity as a Datapoint Elo. Compare
|
| 82 |
+
models *within* a column.
|
| 83 |
+
|
| 84 |
+
## Setup
|
| 85 |
+
|
| 86 |
+
- **Evaluation window:** —
|
| 87 |
+
- **Update policy:** numbers come from evaluation snapshots in the tables,
|
| 88 |
+
not a live API poll.
|
| 89 |
+
- **Prompt counts:** OneIG —, Qwen —.
|
| 90 |
+
- **Generation:** one image per prompt per endpoint when the run exists.
|
| 91 |
+
Resolution, steps, CFG, seed policy, prompt rewrite, and safety filters: —.
|
| 92 |
+
- **Pairwise comparisons (Datapoint / Rapidata):** —
|
| 93 |
+
|
| 94 |
+
## Limits
|
| 95 |
+
|
| 96 |
+
- Empty cells mean that track was not run or not reported for that model.
|
| 97 |
+
- Elo ratings can shift when the comparison pool changes: treat them as
|
| 98 |
+
relative rankings for the snapshot, not absolute constants.
|
| 99 |
+
- Close scores can be a tie in practice; the table does not show confidence
|
| 100 |
+
intervals.
|
| 101 |
+
- Optimized or accelerated endpoints (when labeled) may differ from the base
|
| 102 |
+
model publisher's default serving stack.
|
| 103 |
+
- APIs and prices drift; a rank is for the snapshot, not a guarantee.
|
| 104 |
+
|
| 105 |
+
Built by [Pruna AI](https://www.pruna.ai/). If you have questions, reach out
|
| 106 |
+
to us on [Discord](https://discord.gg/JFQmtFKCjd).
|
| 107 |
"""
|
| 108 |
|
| 109 |
FOOTER_CONTENT = """
|
| 110 |
<div class="page-footer">
|
| 111 |
<h3>Join the Pruna AI community</h3>
|
| 112 |
<div class="community-footer-links">
|
| 113 |
+
<a rel="nofollow" href="https://x.com/PrunaAI" target="_blank">X</a>
|
|
|
|
| 114 |
<a rel="nofollow" href="https://www.linkedin.com/company/pruna-ai" target="_blank">LinkedIn</a>
|
| 115 |
<a rel="nofollow" href="https://discord.gg/JFQmtFKCjd" target="_blank">Discord</a>
|
| 116 |
+
<a rel="nofollow" href="https://github.com/PrunaAI/pruna" target="_blank">GitHub</a>
|
| 117 |
<a rel="nofollow" href="https://www.pruna.ai/" target="_blank">pruna.ai</a>
|
| 118 |
</div>
|
| 119 |
</div>
|
|
|
|
| 590 |
"OneIG Anime Elo": "Anime Elo (Datapoint)",
|
| 591 |
"OneIG Human Elo": "Human Elo (Datapoint)",
|
| 592 |
"OneIG Object Elo": "Object Elo (Datapoint)",
|
| 593 |
+
"P-Judge Overall": "P-Judger (Pruna)",
|
| 594 |
"Datapoint Elo": "Datapoint Elo",
|
| 595 |
"Rapidata Elo": "Rapidata Elo",
|
| 596 |
"Benchmark.ai Elo": "Benchmark.ai Elo",
|