@@ -58,24 +58,26 @@ const LeaderboardPage: React.FC = () => {
5858 const maxCompareReached = selectedCompareIds . length >= MAX_COMPARE ;
5959 const [ modelCardRouter , setModelCardRouter ] = useState < Router | null > ( null ) ;
6060
61- // Deferral curve data
62- const openSourcePoints = {
63- CARROT : { accuracy : 0.672 , cost_per_1k : 2.060741 } ,
64- RouterDC : { accuracy : 0.3344 , cost_per_1k : 0.063751 } ,
65- GraphRouter : { accuracy : 0.6072 , cost_per_1k : 0.363695 } ,
66- KNN : { accuracy : 0.5905 , cost_per_1k : 4.266104 } ,
67- MLP : { accuracy : 0.6191 , cost_per_1k : 4.830245 } ,
68- RouteLLM : { accuracy : 0.6224 , cost_per_1k : 4.937691 } ,
69- 'MIRT-BERT' : { accuracy : 0.6731 , cost_per_1k : 0.150629 } ,
70- 'NIRT-BERT' : { accuracy : 0.6159 , cost_per_1k : 0.600228 } ,
71- } ;
61+ // dynamically built from routers data
62+ const { openSourcePoints, closedSourcePoints } = useMemo ( ( ) => {
63+ const openSource : Record < string , { accuracy : number ; cost_per_1k : number } > = { } ;
64+ const closedSource : Record < string , { accuracy : number ; cost_per_1k : number } > = { } ;
65+
66+ routers . forEach ( router => {
67+ const point = {
68+ accuracy : router . metrics . accuracy / 100 ,
69+ cost_per_1k : router . metrics . costPer1k ,
70+ } ;
71+
72+ if ( router . type === 'open-source' ) {
73+ openSource [ router . name ] = point ;
74+ } else {
75+ closedSource [ router . name ] = point ;
76+ }
77+ } ) ;
7278
73- const closedSourcePoints = {
74- NotDiamond : { accuracy : 0.6651 , cost_per_1k : 9.330411 } ,
75- Azure : { accuracy : 0.6798 , cost_per_1k : 0.619866 } ,
76- 'GPT-5' : { accuracy : 0.7428 , cost_per_1k : 14.407096 } ,
77- 'vLLM-SR' : { accuracy : 0.6665 , cost_per_1k : 1.61393 } ,
78- } ;
79+ return { openSourcePoints : openSource , closedSourcePoints : closedSource } ;
80+ } , [ ] ) ;
7981
8082 const filteredAndSortedRouters = useMemo < RouterWithDynamicArena [ ] > ( ( ) => {
8183 const metricKeyMap = {
0 commit comments