Skip to content

Commit fd7ef37

Browse files
authored
Update leaderboard metrics (#20)
* Added link to paper in nav bar * updated instructions for submitting to just go to project page and follow readme * Made text on hero section lighter, rephrased cta button 'get started' text * Made subtitles one liner * Added logo and rescaled 0-100 * fixed metrics range, and dangling word * Changed commercial/academic -> closed/open source. Added Chayan to leaderboard * Fixed col width * changed vllm affiliation to vllm sr team * Fixed premature scrollbar on loaderboard * added text wrapping to leaderboard affiliations * Added two new metrics accuracy and cost/1k query * Added eval metric explanation * spelling
1 parent 40c156a commit fd7ef37

File tree

4 files changed

+213
-123
lines changed

4 files changed

+213
-123
lines changed

src/data/mockData.ts

Lines changed: 120 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -76,121 +76,147 @@ const calculateAverageScore = (metrics: {
7676

7777
const rawRouterData = [
7878
{
79-
'Router Name': 'RouterDC',
80-
'Arena Score': 33.75,
81-
'Optimal Selection Score': 39.84,
82-
'Optimal Cost Score': 72.998,
83-
'Optimal Acc. Score': 49.05,
84-
'Robustness Score': 97.6,
85-
'Latency Score': 10.7527,
79+
"Router Name": "RouterDC",
80+
"Arena Score": 33.75,
81+
"Optimal Selection Score": 39.84,
82+
"Optimal Cost Score": 72.998,
83+
"Optimal Acc. Score": 49.05,
84+
"Robustness Score": 97.6,
85+
"Latency Score": 10.7527,
86+
"Accuracy": 32.01,
87+
"Cost per 1k": 0.07
8688
},
8789
{
88-
'Router Name': 'azure',
89-
'Arena Score': 66.66,
90-
'Optimal Selection Score': 22.52,
91-
'Optimal Cost Score': 46.322,
92-
'Optimal Acc. Score': 81.96,
93-
'Robustness Score': null,
94-
'Latency Score': null,
90+
"Router Name": "azure",
91+
"Arena Score": 66.66,
92+
"Optimal Selection Score": 22.52,
93+
"Optimal Cost Score": 46.322,
94+
"Optimal Acc. Score": 81.96,
95+
"Robustness Score": null,
96+
"Latency Score": null,
97+
"Accuracy": 68.09,
98+
"Cost per 1k": 0.54
9599
},
96100
{
97-
'Router Name': 'carrot',
98-
'Arena Score': 63.87,
99-
'Optimal Selection Score': 2.68,
100-
'Optimal Cost Score': 6.7697,
101-
'Optimal Acc. Score': 78.63,
102-
'Robustness Score': 93.6,
103-
'Latency Score': 1.4993,
101+
"Router Name": "carrot",
102+
"Arena Score": 63.87,
103+
"Optimal Selection Score": 2.68,
104+
"Optimal Cost Score": 6.7697,
105+
"Optimal Acc. Score": 78.63,
106+
"Robustness Score": 93.6,
107+
"Latency Score": 1.4993,
108+
"Accuracy": 67.21,
109+
"Cost per 1k": 2.06
104110
},
105111
{
106-
'Router Name': 'gpt5',
107-
'Arena Score': 64.32,
108-
'Optimal Selection Score': null,
109-
'Optimal Cost Score': null,
110-
'Optimal Acc. Score': null,
111-
'Robustness Score': null,
112-
'Latency Score': null,
112+
"Router Name": "gpt5",
113+
"Arena Score": 64.32,
114+
"Optimal Selection Score": null,
115+
"Optimal Cost Score": null,
116+
"Optimal Acc. Score": null,
117+
"Robustness Score": null,
118+
"Latency Score": null,
119+
"Accuracy": 73.96,
120+
"Cost per 1k": 10.02
113121
},
114122
{
115-
'Router Name': 'graphrouter',
116-
'Arena Score': 57.22,
117-
'Optimal Selection Score': 4.73,
118-
'Optimal Cost Score': 38.3347,
119-
'Optimal Acc. Score': 74.25,
120-
'Robustness Score': 97.5,
121-
'Latency Score': 2.6954,
123+
"Router Name": "graphrouter",
124+
"Arena Score": 57.22,
125+
"Optimal Selection Score": 4.73,
126+
"Optimal Cost Score": 38.3347,
127+
"Optimal Acc. Score": 74.25,
128+
"Robustness Score": 97.5,
129+
"Latency Score": 2.6954,
130+
"Accuracy": 57.00,
131+
"Cost per 1k": 0.34
122132
},
123133
{
124-
'Router Name': 'mirt_bert',
125-
'Arena Score': 66.89,
126-
'Optimal Selection Score': 3.44,
127-
'Optimal Cost Score': 19.6178,
128-
'Optimal Acc. Score': 78.18,
129-
'Robustness Score': 94.5,
130-
'Latency Score': 27.027,
134+
"Router Name": "mirt_bert",
135+
"Arena Score": 66.89,
136+
"Optimal Selection Score": 3.44,
137+
"Optimal Cost Score": 19.6178,
138+
"Optimal Acc. Score": 78.18,
139+
"Robustness Score": 94.5,
140+
"Latency Score": 27.027,
141+
"Accuracy": 66.88,
142+
"Cost per 1k": 0.15
131143
},
132144
{
133-
'Router Name': 'nirt_bert',
134-
'Arena Score': 66.12,
135-
'Optimal Selection Score': 3.83,
136-
'Optimal Cost Score': 14.039,
137-
'Optimal Acc. Score': 77.88,
138-
'Robustness Score': 44.5,
139-
'Latency Score': 10.4167,
145+
"Router Name": "nirt_bert",
146+
"Arena Score": 66.12,
147+
"Optimal Selection Score": 3.83,
148+
"Optimal Cost Score": 14.039,
149+
"Optimal Acc. Score": 77.88,
150+
"Robustness Score": 44.5,
151+
"Latency Score": 10.4167,
152+
"Accuracy": 66.34,
153+
"Cost per 1k": 0.21
140154
},
141155
{
142-
'Router Name': 'notdiamond',
143-
'Arena Score': 63.0,
144-
'Optimal Selection Score': 1.55,
145-
'Optimal Cost Score': 2.1367,
146-
'Optimal Acc. Score': 76.81,
147-
'Robustness Score': null,
148-
'Latency Score': null,
156+
"Router Name": "notdiamond",
157+
"Arena Score": 63.0,
158+
"Optimal Selection Score": 1.55,
159+
"Optimal Cost Score": 2.1367,
160+
"Optimal Acc. Score": 76.81,
161+
"Robustness Score": null,
162+
"Latency Score": null,
163+
"Accuracy": 60.83,
164+
"Cost per 1k": 4.10
149165
},
150166
{
151-
'Router Name': 'routellm',
152-
'Arena Score': 48.07,
153-
'Optimal Selection Score': 99.72,
154-
'Optimal Cost Score': 99.6314,
155-
'Optimal Acc. Score': 68.76,
156-
'Robustness Score': 99.8,
157-
'Latency Score': 0.4016,
167+
"Router Name": "routellm",
168+
"Arena Score": 48.07,
169+
"Optimal Selection Score": 99.72,
170+
"Optimal Cost Score": 99.6314,
171+
"Optimal Acc. Score": 68.76,
172+
"Robustness Score": 99.8,
173+
"Latency Score": 0.4016,
174+
"Accuracy": 47.04,
175+
"Cost per 1k": 0.27
158176
},
159177
{
160-
'Router Name': 'routerbench_knn',
161-
'Arena Score': 55.48,
162-
'Optimal Selection Score': 13.09,
163-
'Optimal Cost Score': 25.4887,
164-
'Optimal Acc. Score': 78.77,
165-
'Robustness Score': 51.3,
166-
'Latency Score': 1.328,
178+
"Router Name": "routerbench_knn",
179+
"Arena Score": 55.48,
180+
"Optimal Selection Score": 13.09,
181+
"Optimal Cost Score": 25.4887,
182+
"Optimal Acc. Score": 78.77,
183+
"Robustness Score": 51.3,
184+
"Latency Score": 1.328,
185+
"Accuracy": 58.69,
186+
"Cost per 1k": 4.27
167187
},
168188
{
169-
'Router Name': 'routerbench_mlp',
170-
'Arena Score': 57.56,
171-
'Optimal Selection Score': 13.39,
172-
'Optimal Cost Score': 24.4499,
173-
'Optimal Acc. Score': 83.32,
174-
'Robustness Score': 96.9,
175-
'Latency Score': 90.9091,
189+
"Router Name": "routerbench_mlp",
190+
"Arena Score": 57.56,
191+
"Optimal Selection Score": 13.39,
192+
"Optimal Cost Score": 24.4499,
193+
"Optimal Acc. Score": 83.32,
194+
"Robustness Score": 96.9,
195+
"Latency Score": 90.9091,
196+
"Accuracy": 61.62,
197+
"Cost per 1k": 4.83
176198
},
177199
{
178-
'Router Name': 'vllm',
179-
'Arena Score': 64.32,
180-
'Optimal Selection Score': 4.79,
181-
'Optimal Cost Score': 12.5426,
182-
'Optimal Acc. Score': 79.33,
183-
'Robustness Score': 100.0,
184-
'Latency Score': 0.1863,
200+
"Router Name": "vllm",
201+
"Arena Score": 64.32,
202+
"Optimal Selection Score": 4.79,
203+
"Optimal Cost Score": 12.5426,
204+
"Optimal Acc. Score": 79.33,
205+
"Robustness Score": 100.0,
206+
"Latency Score": 0.1863,
207+
"Accuracy": 67.28,
208+
"Cost per 1k": 1.67
185209
},
186210
{
187-
'Router Name': 'chayan',
188-
'Arena Score': 63.83,
189-
'Optimal Selection Score': 43.03,
190-
'Optimal Cost Score': 43.75,
191-
'Optimal Acc. Score': 88.74,
192-
'Robustness Score': null,
193-
'Latency Score': null,
211+
"Router Name": "chayan",
212+
"Arena Score": 63.83,
213+
"Optimal Selection Score": 43.03,
214+
"Optimal Cost Score": 43.75,
215+
"Optimal Acc. Score": 88.74,
216+
"Robustness Score": null,
217+
"Latency Score": null,
218+
"Accuracy": 64.89,
219+
"Cost per 1k": 0.56
194220
}
195221
];
196222

@@ -319,7 +345,7 @@ const routerMetadata: Record<
319345
name: 'Chayan',
320346
type: 'open-source',
321347
description: 'Chayan-based routing service',
322-
affiliation: 'Adaptive Classifier',
348+
affiliation: 'Adaptive Classifier ',
323349
modelPool: ['GPT-4', 'GPT-3.5'],
324350
paperUrl: 'https://arxiv.org/abs/2024.xxxxx',
325351
githubUrl: 'https://huggingface.co/adaptive-classifier/chayan',
@@ -344,6 +370,8 @@ const routersWithRanks = rawRouterData.map(router => {
344370
optimalAccScore: roundNullableToOneDecimal(router['Optimal Acc. Score']),
345371
robustnessScore: roundNullableToOneDecimal(router['Robustness Score']),
346372
latencyScore: roundNullableToOneDecimal(router['Latency Score']),
373+
accuracy: roundToOneDecimal(router['Accuracy']),
374+
costPer1k: roundToOneDecimal(router['Cost per 1k']),
347375
overallRank: 0, // Will be calculated below
348376
};
349377

src/pages/LeaderboardPage.css

Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
}
66

77
.container {
8-
max-width: 1400px;
8+
max-width: 2000px;
99
margin: 0 auto;
1010
padding: 0 1rem;
1111
}
@@ -165,16 +165,18 @@
165165

166166
:root {
167167
--lb-grid:
168-
minmax(0, 0.6fr) /* Rank */
168+
minmax(0, 0.7fr) /* Rank */
169169
minmax(0, 1.5fr) /* Name */
170-
minmax(0, 1.4fr) /* Affiliation */
171-
minmax(0, 1.1fr) /* Type */
172-
minmax(0, 0.8fr)
173-
minmax(0, 0.8fr)
174-
minmax(0, 0.8fr)
175-
minmax(0, 0.8fr)
176-
minmax(0, 0.8fr)
177-
minmax(0, 0.8fr);
170+
minmax(0, 1.3fr) /* Affiliation */
171+
minmax(0, 1.6fr) /* Type */
172+
minmax(0, 0.9fr) /* Arena */
173+
minmax(0, 1fr) /* Accuracy */
174+
minmax(0, 0.9fr) /* Cost/1k */
175+
minmax(0, 1.1fr) /* Opt. Select */
176+
minmax(0, 0.9fr) /* Opt. Cost */
177+
minmax(0, 0.9fr) /* Opt. Acc */
178+
minmax(0, 0.9fr) /* Latency */
179+
minmax(0, 0.9fr) /* Robust */
178180
}
179181

180182

@@ -667,22 +669,7 @@
667669
width: 100%;
668670
}
669671

670-
/* Responsive Design */
671-
@media (max-width: 1400px) {
672-
.leaderboard-container {
673-
min-width: 1000px;
674-
}
675672

676-
.leaderboard-header,
677-
.leaderboard-row {
678-
gap: 0.75rem;
679-
}
680-
681-
.viz-tab {
682-
font-size: 0.9rem;
683-
padding: 0.875rem 1.5rem;
684-
}
685-
}
686673

687674
@media (max-width: 768px) {
688675
.leaderboard-header,
@@ -785,7 +772,6 @@
785772
grid-template-columns: var(--lb-grid) !important;
786773
gap: 0.5rem !important;
787774
padding: 0 !important;
788-
width: 100%;
789775
box-sizing: border-box;
790776
column-gap: 0.5rem !important;
791777
justify-items: stretch;

0 commit comments

Comments
 (0)