Update index.html
Browse files- index.html +94 -6
index.html
CHANGED
|
@@ -182,6 +182,16 @@ tbody tr:hover td.c-model{background:rgba(99,102,241,.022);}
|
|
| 182 |
/* ARCH BADGES */
|
| 183 |
.at{display:flex;flex-direction:column;align-items:center;gap:2px;}
|
| 184 |
.atb{font-size:7px;font-family:var(--font-mono);padding:1.5px 4px;border-radius:4px;font-weight:700;}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 185 |
.at-moe{background:rgba(217,119,6,.1);color:#d97706;border:1px solid rgba(217,119,6,.2);}
|
| 186 |
.at-den{background:rgba(99,102,241,.1);color:#6366f1;border:1px solid rgba(99,102,241,.2);}
|
| 187 |
.at-hyb{background:rgba(139,92,246,.1);color:#7c3aed;border:1px solid rgba(139,92,246,.2);}
|
|
@@ -407,6 +417,11 @@ body.dark canvas{filter:none;}
|
|
| 407 |
<button class="fb" onclick="flt('value',this)">💚 Value</button>
|
| 408 |
<button class="fb" onclick="flt('flagship',this)">👑 Flagship</button>
|
| 409 |
<button class="fb" onclick="flt('korean',this)" style="background:linear-gradient(135deg,#c9002b,#003478);color:#fff;border-color:#c9002b;font-weight:700">🇰🇷 Sovereign AI</button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 410 |
<div class="col-toggle-wrap" style="margin-left:auto">
|
| 411 |
<button class="col-toggle-btn" onclick="toggleColMenu()" id="colBtn">⚙ Columns ▾</button>
|
| 412 |
<div class="col-dropdown" id="colMenu"></div>
|
|
@@ -425,6 +440,7 @@ body.dark canvas{filter:none;}
|
|
| 425 |
<thead>
|
| 426 |
<tr>
|
| 427 |
<th class="c-model" onclick="srt(0)">Model<span class="sa">↕</span></th>
|
|
|
|
| 428 |
<th class="gP" style="min-width:72px">Provider</th>
|
| 429 |
<th onclick="srt(2)" class="gA" title="Coverage⁰·⁷ Score = Avg(confirmed) × (N/10)⁰·⁷. Coverage badge: ✓Full(7+) ◐Moderate(5-6) ⚠Partial(<5). 10 benchmarks: MMLU-Pro·GPQA·AIME·HLE·ARC-AGI-2·Metacog·SWE-Pro·BFCL·IFEval·LCB" style="min-width:58px">🏆 Score<span class="sa">↕</span></th>
|
| 430 |
<th onclick="srt(3)" class="gT" style="min-width:48px">📅 Release<span class="sa">↕</span></th>
|
|
@@ -467,6 +483,12 @@ body.dark canvas{filter:none;}
|
|
| 467 |
<span style="color:#16a34a;font-size:9px;margin-left:6px">💚 Green row = Open-source value pick</span>
|
| 468 |
<span style="font-family:var(--font-mono);font-size:8px;color:#0ea5e9;margin-left:6px">🧩 ARC-AGI-2 = arcprize.org official</span>
|
| 469 |
<span style="font-family:var(--font-mono);font-size:8px;color:#7c3aed;margin-left:6px">🧬 Metacog = FINAL-Bench official (15 models tested)</span>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 470 |
<span style="font-family:var(--font-mono);font-size:8px;color:#f59e0b;margin-left:6px">🏅 Union = ALL Bench Union Eval S3 (100% JSON auto-graded, 8 rounds validated)</span>
|
| 471 |
<span style="font-family:var(--font-mono);font-size:8px;color:#0ea5e9;margin-left:6px">🖥 TB2.0 = tbench.ai official · 🔬 SciCode = AA independent</span>
|
| 472 |
<span style="font-family:var(--font-mono);font-size:8px;color:#e11d48;margin-left:6px">⚙ Avg × (N/10)⁰·⁷ · <span style="color:#16a34a">✓</span>7+ <span style="color:#d97706">◐</span>5-6 <span style="color:#e11d48">⚠</span><5</span>
|
|
@@ -1447,6 +1469,65 @@ function compScore(r){
|
|
| 1447 |
return Math.round(avg*Math.pow(coverage,0.7)*10)/10;
|
| 1448 |
}
|
| 1449 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1450 |
// ========== GRADE COLOR ==========
|
| 1451 |
function gc(v,mx){
|
| 1452 |
if(v===null||v===undefined)return null;
|
|
@@ -1680,6 +1761,7 @@ function buildTable(data){
|
|
| 1680 |
tr.dataset.vis=JSON.stringify(r[23]||[]);
|
| 1681 |
tr.dataset.val=r[30]||0;
|
| 1682 |
tr.dataset.name=r[0].toLowerCase();
|
|
|
|
| 1683 |
tr.innerHTML=`
|
| 1684 |
<td class="c-model">
|
| 1685 |
<div class="mc">
|
|
@@ -1695,6 +1777,7 @@ function buildTable(data){
|
|
| 1695 |
</div>
|
| 1696 |
</div>
|
| 1697 |
</td>
|
|
|
|
| 1698 |
<td>${provBadge(r)}</td>
|
| 1699 |
<td>${compCell(r)}</td>
|
| 1700 |
<td><span class="rel" style="font-family:var(--font-mono);font-size:9px;color:var(--text-muted)">${r[6]}</span></td>
|
|
@@ -1734,8 +1817,7 @@ function srt(col){
|
|
| 1734 |
if(lastCol===col)sortDir*=-1; else sortDir=1;
|
| 1735 |
lastCol=col;
|
| 1736 |
const th=document.querySelectorAll('th');
|
| 1737 |
-
th.forEach(t=>t.classList.remove('on'));
|
| 1738 |
-
if(th[col])th[col].classList.add('on');
|
| 1739 |
|
| 1740 |
const arr=[...D].sort((a,b)=>{
|
| 1741 |
let va,vb;
|
|
@@ -1764,6 +1846,7 @@ function srt(col){
|
|
| 1764 |
case 35:va=a[35]||0;vb=b[35]||0;break;
|
| 1765 |
case 36:va=a[36]||0;vb=b[36]||0;break;
|
| 1766 |
case 37:va=a[37]||0;vb=b[37]||0;break;
|
|
|
|
| 1767 |
default:va=0;vb=0;
|
| 1768 |
}
|
| 1769 |
if(typeof va==='string')return va.localeCompare(vb)*sortDir;
|
|
@@ -1781,7 +1864,7 @@ function srt(col){
|
|
| 1781 |
const arr=[...D].sort((a,b)=>(compScore(b)||0)-(compScore(a)||0));
|
| 1782 |
buildTable(arr);
|
| 1783 |
const th=document.querySelectorAll('th');
|
| 1784 |
-
if(
|
| 1785 |
})();
|
| 1786 |
let currentFilter='all';
|
| 1787 |
function flt(f,btn){
|
|
@@ -1793,7 +1876,7 @@ function flt(f,btn){
|
|
| 1793 |
function applyFilter(f){
|
| 1794 |
document.querySelectorAll('#TB tr').forEach(tr=>{
|
| 1795 |
const g=tr.dataset.group,tp=tr.dataset.type,arch=tr.dataset.arch;
|
| 1796 |
-
const vis=JSON.parse(tr.dataset.vis||'[]'),val=parseInt(tr.dataset.val||0);
|
| 1797 |
let show=true;
|
| 1798 |
if(f==='open')show=tp==='open';
|
| 1799 |
else if(f==='closed')show=tp==='closed';
|
|
@@ -1805,6 +1888,10 @@ function applyFilter(f){
|
|
| 1805 |
else if(f==='value')show=val>=4&&tp==='open';
|
| 1806 |
else if(f==='flagship')show=g==='flagship';
|
| 1807 |
else if(f==='korean')show=g==='korean';
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1808 |
if(!show)tr.classList.add('hidden'); else tr.classList.remove('hidden');
|
| 1809 |
});
|
| 1810 |
applySearch(document.getElementById('searchBox').value);
|
|
@@ -1823,7 +1910,7 @@ function applySearch(q){
|
|
| 1823 |
}
|
| 1824 |
|
| 1825 |
// ========== COLUMN TOGGLE ==========
|
| 1826 |
-
const colLabels={5:"GPQA◆",15:"MMMLU",6:"AIME25",7:"HLE",14:"SWE-V⚠",4:"MMLU-Pro",12:"IFEval",10:"SWE-Pro",9:"Metacog",35:"TB2.0★",13:"LCB",8:"ARC-AGI-2",11:"BFCL",36:"SciCode★",16:"CtxIn",17:"CtxOut",18:"tok/s",19:"TTFT",20:"Vision",21:"Arch",22:"ELO",23:"License",24:"$/M"};
|
| 1827 |
const hiddenCols=new Set([13,8,11,36]); // default hide <30% coverage: LCB·ARC-AGI-2·BFCL·SciCode
|
| 1828 |
|
| 1829 |
function buildColMenu(){
|
|
@@ -3263,7 +3350,8 @@ function showModelCard(name){
|
|
| 3263 |
<div style="font-size:10px;color:var(--text-muted)">${r[1]} · ${r[3]} · ${r[6]} · ${r[24]||''}</div></div>
|
| 3264 |
<div style="margin-left:auto;text-align:right"><div style="font-family:var(--font-mono);font-size:22px;font-weight:800;color:var(--ac)">${cs||'—'}</div><div style="font-size:8px;color:var(--text-muted)">Score · ${cov}/10</div></div>
|
| 3265 |
</div>
|
| 3266 |
-
<div style="display:grid;grid-template-columns:repeat(
|
|
|
|
| 3267 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">Architecture</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[25]||'—'}</div></div>
|
| 3268 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">Context</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[19]?r[19]+'K':'—'}</div></div>
|
| 3269 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">License</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[27]||'—'}</div></div>
|
|
|
|
| 182 |
/* ARCH BADGES */
|
| 183 |
.at{display:flex;flex-direction:column;align-items:center;gap:2px;}
|
| 184 |
.atb{font-size:7px;font-family:var(--font-mono);padding:1.5px 4px;border-radius:4px;font-weight:700;}
|
| 185 |
+
|
| 186 |
+
/* SIZE BADGES */
|
| 187 |
+
.sz{display:flex;flex-direction:column;align-items:center;gap:1px;}
|
| 188 |
+
.szb{font-size:7.5px;font-family:var(--font-mono);padding:2px 6px;border-radius:4px;font-weight:800;letter-spacing:.3px;white-space:nowrap;border:1px solid transparent;}
|
| 189 |
+
.sz-xl{background:rgba(225,29,72,.1);color:#e11d48;border-color:rgba(225,29,72,.2);}
|
| 190 |
+
.sz-l{background:rgba(217,119,6,.1);color:#d97706;border-color:rgba(217,119,6,.2);}
|
| 191 |
+
.sz-m{background:rgba(22,163,74,.1);color:#16a34a;border-color:rgba(22,163,74,.2);}
|
| 192 |
+
.sz-s{background:rgba(59,130,246,.1);color:#3b82f6;border-color:rgba(59,130,246,.2);}
|
| 193 |
+
.sz-u{background:rgba(100,116,139,.08);color:#94a3b8;border-color:rgba(100,116,139,.15);}
|
| 194 |
+
.szp{font-size:6.5px;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap;}
|
| 195 |
.at-moe{background:rgba(217,119,6,.1);color:#d97706;border:1px solid rgba(217,119,6,.2);}
|
| 196 |
.at-den{background:rgba(99,102,241,.1);color:#6366f1;border:1px solid rgba(99,102,241,.2);}
|
| 197 |
.at-hyb{background:rgba(139,92,246,.1);color:#7c3aed;border:1px solid rgba(139,92,246,.2);}
|
|
|
|
| 417 |
<button class="fb" onclick="flt('value',this)">💚 Value</button>
|
| 418 |
<button class="fb" onclick="flt('flagship',this)">👑 Flagship</button>
|
| 419 |
<button class="fb" onclick="flt('korean',this)" style="background:linear-gradient(135deg,#c9002b,#003478);color:#fff;border-color:#c9002b;font-weight:700">🇰🇷 Sovereign AI</button>
|
| 420 |
+
<span class="flbl" style="margin-left:4px">Size:</span>
|
| 421 |
+
<button class="fb" onclick="flt('sz-xl',this)" style="font-size:9px">🔴 XL</button>
|
| 422 |
+
<button class="fb" onclick="flt('sz-l',this)" style="font-size:9px">🟠 L</button>
|
| 423 |
+
<button class="fb" onclick="flt('sz-m',this)" style="font-size:9px">🟢 M</button>
|
| 424 |
+
<button class="fb" onclick="flt('sz-s',this)" style="font-size:9px">🔵 S</button>
|
| 425 |
<div class="col-toggle-wrap" style="margin-left:auto">
|
| 426 |
<button class="col-toggle-btn" onclick="toggleColMenu()" id="colBtn">⚙ Columns ▾</button>
|
| 427 |
<div class="col-dropdown" id="colMenu"></div>
|
|
|
|
| 440 |
<thead>
|
| 441 |
<tr>
|
| 442 |
<th class="c-model" onclick="srt(0)">Model<span class="sa">↕</span></th>
|
| 443 |
+
<th onclick="srt(39)" class="gN" data-col="38" title="Model Size: XL(300B+) L(70-299B) M(20-69B) S(<20B). MoE=Total(Active). ~=estimated." style="min-width:48px">📏 Size<span class="sa">↕</span></th>
|
| 444 |
<th class="gP" style="min-width:72px">Provider</th>
|
| 445 |
<th onclick="srt(2)" class="gA" title="Coverage⁰·⁷ Score = Avg(confirmed) × (N/10)⁰·⁷. Coverage badge: ✓Full(7+) ◐Moderate(5-6) ⚠Partial(<5). 10 benchmarks: MMLU-Pro·GPQA·AIME·HLE·ARC-AGI-2·Metacog·SWE-Pro·BFCL·IFEval·LCB" style="min-width:58px">🏆 Score<span class="sa">↕</span></th>
|
| 446 |
<th onclick="srt(3)" class="gT" style="min-width:48px">📅 Release<span class="sa">↕</span></th>
|
|
|
|
| 483 |
<span style="color:#16a34a;font-size:9px;margin-left:6px">💚 Green row = Open-source value pick</span>
|
| 484 |
<span style="font-family:var(--font-mono);font-size:8px;color:#0ea5e9;margin-left:6px">🧩 ARC-AGI-2 = arcprize.org official</span>
|
| 485 |
<span style="font-family:var(--font-mono);font-size:8px;color:#7c3aed;margin-left:6px">🧬 Metacog = FINAL-Bench official (15 models tested)</span>
|
| 486 |
+
<span style="margin-left:10px;font-size:8px;font-family:var(--font-mono);color:var(--text-muted)">📏 Size:</span>
|
| 487 |
+
<div class="li"><div class="ld" style="background:#e11d48"></div><span style="font-size:8px">XL 300B+</span></div>
|
| 488 |
+
<div class="li"><div class="ld" style="background:#d97706"></div><span style="font-size:8px">L 70-299B</span></div>
|
| 489 |
+
<div class="li"><div class="ld" style="background:#16a34a"></div><span style="font-size:8px">M 20-69B</span></div>
|
| 490 |
+
<div class="li"><div class="ld" style="background:#3b82f6"></div><span style="font-size:8px">S <20B</span></div>
|
| 491 |
+
<span style="font-size:7px;color:var(--text-muted)">~=est</span>
|
| 492 |
<span style="font-family:var(--font-mono);font-size:8px;color:#f59e0b;margin-left:6px">🏅 Union = ALL Bench Union Eval S3 (100% JSON auto-graded, 8 rounds validated)</span>
|
| 493 |
<span style="font-family:var(--font-mono);font-size:8px;color:#0ea5e9;margin-left:6px">🖥 TB2.0 = tbench.ai official · 🔬 SciCode = AA independent</span>
|
| 494 |
<span style="font-family:var(--font-mono);font-size:8px;color:#e11d48;margin-left:6px">⚙ Avg × (N/10)⁰·⁷ · <span style="color:#16a34a">✓</span>7+ <span style="color:#d97706">◐</span>5-6 <span style="color:#e11d48">⚠</span><5</span>
|
|
|
|
| 1469 |
return Math.round(avg*Math.pow(coverage,0.7)*10)/10;
|
| 1470 |
}
|
| 1471 |
|
| 1472 |
+
// ========== GRADE COLOR ==========
|
| 1473 |
+
// ========== SIZE CLASSIFICATION ==========
|
| 1474 |
+
const sizeMap={
|
| 1475 |
+
"GPT-5.2":{t:null,a:null,cls:"XL",est:true},
|
| 1476 |
+
"GPT-5.3 Codex":{t:null,a:null,cls:"XL",est:true},
|
| 1477 |
+
"GPT-5.4":{t:null,a:null,cls:"XL",est:true},
|
| 1478 |
+
"GPT-5.1":{t:null,a:null,cls:"L",est:true},
|
| 1479 |
+
"GPT-5-Nano":{t:null,a:null,cls:"S",est:true},
|
| 1480 |
+
"GPT-OSS-120B":{t:116.8,a:5.1,cls:"L",est:false},
|
| 1481 |
+
"GPT-OSS-20B":{t:20.9,a:3.6,cls:"M",est:false},
|
| 1482 |
+
"Claude Opus 4.6":{t:null,a:null,cls:"XL",est:true},
|
| 1483 |
+
"Claude Sonnet 4.6":{t:null,a:null,cls:"L",est:true},
|
| 1484 |
+
"Claude Sonnet 4.5":{t:null,a:null,cls:"L",est:true},
|
| 1485 |
+
"Claude Haiku 4.5":{t:null,a:null,cls:"S",est:true},
|
| 1486 |
+
"Gemini 3.1 Pro":{t:null,a:null,cls:"XL",est:true},
|
| 1487 |
+
"Gemini 3 Pro":{t:null,a:null,cls:"XL",est:true},
|
| 1488 |
+
"Gemini 3 Flash":{t:null,a:null,cls:"M",est:true},
|
| 1489 |
+
"Gemini 2.5 FL-Lite":{t:null,a:null,cls:"S",est:true},
|
| 1490 |
+
"Grok 4 Heavy":{t:null,a:null,cls:"XL",est:true},
|
| 1491 |
+
"Grok 4.1 Fast":{t:null,a:null,cls:"L",est:true},
|
| 1492 |
+
"Qwen3.5-397B":{t:397,a:17,cls:"XL",est:false},
|
| 1493 |
+
"Qwen3.5-122B":{t:122,a:10,cls:"L",est:false},
|
| 1494 |
+
"Qwen3.5-27B":{t:27,a:27,cls:"M",est:false},
|
| 1495 |
+
"Qwen3.5-35B":{t:35,a:3,cls:"M",est:false},
|
| 1496 |
+
"Qwen3.5-Flash":{t:null,a:null,cls:"M",est:true},
|
| 1497 |
+
"Qwen3.5-9B":{t:9,a:9,cls:"S",est:false},
|
| 1498 |
+
"Qwen3.5-4B":{t:4,a:4,cls:"S",est:false},
|
| 1499 |
+
"Qwen3-Next-80B":{t:80,a:3,cls:"L",est:false},
|
| 1500 |
+
"Darwin-35B-A3B-Opus":{t:35,a:3,cls:"M",est:false},
|
| 1501 |
+
"DeepSeek V3.2":{t:671,a:37,cls:"XL",est:false},
|
| 1502 |
+
"DeepSeek R1":{t:671,a:37,cls:"XL",est:false},
|
| 1503 |
+
"Kimi K2.5":{t:1000,a:null,cls:"XL",est:false},
|
| 1504 |
+
"GLM-5":{t:745,a:40,cls:"XL",est:false},
|
| 1505 |
+
"Llama 4 Scout":{t:400,a:17,cls:"XL",est:false},
|
| 1506 |
+
"Llama 4 Maverick":{t:400,a:17,cls:"XL",est:false},
|
| 1507 |
+
"Mistral Large 3":{t:675,a:null,cls:"XL",est:false},
|
| 1508 |
+
"Nemotron 3 Super":{t:120,a:12,cls:"L",est:false},
|
| 1509 |
+
"Phi-4":{t:14,a:14,cls:"S",est:false},
|
| 1510 |
+
"K-EXAONE":{t:236,a:null,cls:"L",est:false},
|
| 1511 |
+
"A.X K1":{t:500,a:null,cls:"XL",est:false},
|
| 1512 |
+
"Solar Open 100B":{t:100,a:null,cls:"L",est:false},
|
| 1513 |
+
"Motif AI":{t:null,a:null,cls:"M",est:true},
|
| 1514 |
+
"Mi:dm 2.0 Base":{t:11.5,a:11.5,cls:"S",est:false},
|
| 1515 |
+
"Nanbeige4.1-3B":{t:3,a:3,cls:"S",est:false},
|
| 1516 |
+
"MiniMax-M2.5":{t:230,a:10,cls:"L",est:false},
|
| 1517 |
+
"Step-3.5-Flash":{t:196,a:11,cls:"L",est:false},
|
| 1518 |
+
};
|
| 1519 |
+
const szMeta={XL:{label:"XL",emoji:"🔴",color:"#e11d48",css:"sz-xl",desc:"300B+"},L:{label:"L",emoji:"🟠",color:"#d97706",css:"sz-l",desc:"70-299B"},M:{label:"M",emoji:"🟢",color:"#16a34a",css:"sz-m",desc:"20-69B"},S:{label:"S",emoji:"🔵",color:"#3b82f6",css:"sz-s",desc:"<20B"}};
|
| 1520 |
+
function sizeCell(r){
|
| 1521 |
+
const s=sizeMap[r[0]];
|
| 1522 |
+
if(!s)return'<span class="na">—</span>';
|
| 1523 |
+
const m=szMeta[s.cls];
|
| 1524 |
+
const tStr=s.t?s.t+'B':'?';
|
| 1525 |
+
const aStr=(s.a&&s.a!==s.t)?'('+s.a+'B)':'';
|
| 1526 |
+
const estMark=s.est?'~':'';
|
| 1527 |
+
return`<div class="sz"><span class="szb ${m.css}">${estMark}${m.label}</span><span class="szp">${tStr}${aStr}</span></div>`;
|
| 1528 |
+
}
|
| 1529 |
+
function sizeSort(r){const s=sizeMap[r[0]];return s?(s.t||{XL:999,L:150,M:40,S:10}[s.cls]):0;}
|
| 1530 |
+
|
| 1531 |
// ========== GRADE COLOR ==========
|
| 1532 |
function gc(v,mx){
|
| 1533 |
if(v===null||v===undefined)return null;
|
|
|
|
| 1761 |
tr.dataset.vis=JSON.stringify(r[23]||[]);
|
| 1762 |
tr.dataset.val=r[30]||0;
|
| 1763 |
tr.dataset.name=r[0].toLowerCase();
|
| 1764 |
+
tr.dataset.size=(sizeMap[r[0]]||{}).cls||'';
|
| 1765 |
tr.innerHTML=`
|
| 1766 |
<td class="c-model">
|
| 1767 |
<div class="mc">
|
|
|
|
| 1777 |
</div>
|
| 1778 |
</div>
|
| 1779 |
</td>
|
| 1780 |
+
<td data-col="38">${sizeCell(r)}</td>
|
| 1781 |
<td>${provBadge(r)}</td>
|
| 1782 |
<td>${compCell(r)}</td>
|
| 1783 |
<td><span class="rel" style="font-family:var(--font-mono);font-size:9px;color:var(--text-muted)">${r[6]}</span></td>
|
|
|
|
| 1817 |
if(lastCol===col)sortDir*=-1; else sortDir=1;
|
| 1818 |
lastCol=col;
|
| 1819 |
const th=document.querySelectorAll('th');
|
| 1820 |
+
th.forEach(t=>{t.classList.remove('on');if(t.getAttribute('onclick')===`srt(${col})`)t.classList.add('on');});
|
|
|
|
| 1821 |
|
| 1822 |
const arr=[...D].sort((a,b)=>{
|
| 1823 |
let va,vb;
|
|
|
|
| 1846 |
case 35:va=a[35]||0;vb=b[35]||0;break;
|
| 1847 |
case 36:va=a[36]||0;vb=b[36]||0;break;
|
| 1848 |
case 37:va=a[37]||0;vb=b[37]||0;break;
|
| 1849 |
+
case 39:va=sizeSort(a);vb=sizeSort(b);break;
|
| 1850 |
default:va=0;vb=0;
|
| 1851 |
}
|
| 1852 |
if(typeof va==='string')return va.localeCompare(vb)*sortDir;
|
|
|
|
| 1864 |
const arr=[...D].sort((a,b)=>(compScore(b)||0)-(compScore(a)||0));
|
| 1865 |
buildTable(arr);
|
| 1866 |
const th=document.querySelectorAll('th');
|
| 1867 |
+
th.forEach(t=>{if(t.getAttribute('onclick')===`srt(2)`)t.classList.add('on');});
|
| 1868 |
})();
|
| 1869 |
let currentFilter='all';
|
| 1870 |
function flt(f,btn){
|
|
|
|
| 1876 |
function applyFilter(f){
|
| 1877 |
document.querySelectorAll('#TB tr').forEach(tr=>{
|
| 1878 |
const g=tr.dataset.group,tp=tr.dataset.type,arch=tr.dataset.arch;
|
| 1879 |
+
const vis=JSON.parse(tr.dataset.vis||'[]'),val=parseInt(tr.dataset.val||0),sz=tr.dataset.size||'';
|
| 1880 |
let show=true;
|
| 1881 |
if(f==='open')show=tp==='open';
|
| 1882 |
else if(f==='closed')show=tp==='closed';
|
|
|
|
| 1888 |
else if(f==='value')show=val>=4&&tp==='open';
|
| 1889 |
else if(f==='flagship')show=g==='flagship';
|
| 1890 |
else if(f==='korean')show=g==='korean';
|
| 1891 |
+
else if(f==='sz-xl')show=sz==='XL';
|
| 1892 |
+
else if(f==='sz-l')show=sz==='L';
|
| 1893 |
+
else if(f==='sz-m')show=sz==='M';
|
| 1894 |
+
else if(f==='sz-s')show=sz==='S';
|
| 1895 |
if(!show)tr.classList.add('hidden'); else tr.classList.remove('hidden');
|
| 1896 |
});
|
| 1897 |
applySearch(document.getElementById('searchBox').value);
|
|
|
|
| 1910 |
}
|
| 1911 |
|
| 1912 |
// ========== COLUMN TOGGLE ==========
|
| 1913 |
+
const colLabels={38:"Size",5:"GPQA◆",15:"MMMLU",6:"AIME25",7:"HLE",14:"SWE-V⚠",4:"MMLU-Pro",12:"IFEval",10:"SWE-Pro",9:"Metacog",35:"TB2.0★",13:"LCB",8:"ARC-AGI-2",11:"BFCL",36:"SciCode★",16:"CtxIn",17:"CtxOut",18:"tok/s",19:"TTFT",20:"Vision",21:"Arch",22:"ELO",23:"License",24:"$/M"};
|
| 1914 |
const hiddenCols=new Set([13,8,11,36]); // default hide <30% coverage: LCB·ARC-AGI-2·BFCL·SciCode
|
| 1915 |
|
| 1916 |
function buildColMenu(){
|
|
|
|
| 3350 |
<div style="font-size:10px;color:var(--text-muted)">${r[1]} · ${r[3]} · ${r[6]} · ${r[24]||''}</div></div>
|
| 3351 |
<div style="margin-left:auto;text-align:right"><div style="font-family:var(--font-mono);font-size:22px;font-weight:800;color:var(--ac)">${cs||'—'}</div><div style="font-size:8px;color:var(--text-muted)">Score · ${cov}/10</div></div>
|
| 3352 |
</div>
|
| 3353 |
+
<div style="display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px">
|
| 3354 |
+
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">Size</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${(()=>{const s=sizeMap[r[0]];if(!s)return'—';const m=szMeta[s.cls];return'<span style="color:'+m.color+'">'+(s.est?'~':'')+m.label+'</span> '+(s.t?s.t+'B':'?')+(s.a&&s.a!==s.t?' ('+s.a+'B)':'');})()}</div></div>
|
| 3355 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">Architecture</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[25]||'—'}</div></div>
|
| 3356 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">Context</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[19]?r[19]+'K':'—'}</div></div>
|
| 3357 |
<div style="text-align:center;padding:8px;background:var(--bg);border-radius:8px"><div style="font-size:8px;color:var(--text-muted)">License</div><div style="font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text)">${r[27]||'—'}</div></div>
|