PrismML ha lanzado Ternary Bonsai 2 27B, una versión de peso ternario de Qwen3.8 27B. El modelo de idioma ocupa 5,93 GB, frente a los 53,80 GB del FP16. PrismML informa que mantiene el 98,2% del promedio del modelo principal en 20 puntos de referencia. El modelo acepta texto e imágenes y admite un contexto de 262 000 tokens. PrismML lo demuestra impulsando los agentes de codificación Cline y el uso de computadoras en un RTX 5090. Llega 2 meses después del primer Bonsai 27B, cuya variante ternaria retuvo alrededor del 95%.
¿Es desplegable? Sí. Los pesos de Apache 2.0 se ejecutan hoy en una computadora portátil de 16 GB o una sola GPU de 24 GB. Necesita la bifurcación llama.cpp de PrismML o su tiempo de ejecución MLX.
¿Qué es el Bonsái Ternario 2 27B?
El modelo mantiene sin cambios la arquitectura Qwen3.8 27B. Tiene 27.36B de parámetros. Eso se divide en una columna vertebral de lenguaje de 24,35 mil millones, 2,54 mil millones en incrustaciones y cabezal LM, y una torre de visión de 0,47 mil millones. La columna vertebral utiliza atención híbrida, con aproximadamente un 75% de atención lineal y un 25% de capas de atención total.
Los pesos ternarios cubren incrustaciones, proyecciones de atención, proyecciones MLP y la cabeza LM. Sólo 26,2 millones de parámetros, o 0,0976%, mantienen una mayor precisión. Esas son la ruta del estado recurrente y los pesos de normalización. En GGUF, la torre de visión se envía por separado como un archivo de 0,63 GB, cargado sólo para entrada de imágenes.
¿Cómo funciona el formato ternario?
Cada peso toma 1 de 3 valores: -1, 0 o +1. Cada grupo de 128 pesas comparte 1 báscula FP16. Un valor ternario transporta log2(3), o aproximadamente 1,585 bits. Agregar 16 bits de escala por 128 pesos da 1,71 bits por peso. Contar los tensores de alta precisión lleva el modelo a 1,72.
Los núcleos reales necesitan un diseño empaquetado, por lo que el documento técnico describe 2 empaquetamientos GGUF. PTQ1_0 incluye trits densos a 1,76 bits por peso y 5,93 GB. PQ2_0 almacena cada trit en una ranura de 2 bits a 7,25 GB, que es más económica de descomprimir.
Los pesos también se almacenan de forma rotativa. PrismML aplica una rotación de Hadamard en bloques con un tamaño de bloque de 1024 antes de la asignación ternaria. El tiempo de ejecución aplica la transformación coincidente a las activaciones antes de cada multiplicación. El documento técnico cita a SpinQuant por esta idea. PrismML no publica cómo asigna los valores ternarios.
‘+rowsHTML(g.rows)});else h=rowsHTML(c.rows); h+=’
0.0%
‘+(c.retLabel||’de Qwen3.8 27B FP16 retenido’)+’
‘; $(‘#scoreCard’).innerHTML=h;$(‘#scoreNote’).textContent=c.note; var fs=$$(‘#scoreCard .f’); setTimeout(function(){fs.forEach(function(f,i){f.style.transitionDelay=(RM?0:i*90)+’ms’;f.style.width=f.getAttribute(‘data-w’)+’%’})},30); count($(‘#retN’),c.me/c.base*100,1,900);postH(); } /* ———- 5 velocidades (documento técnico Tablas 5, 6) ———- */ var HW=[
[‘RTX 5090 (32 GB)’,[142.5,4121,0.582],[134.4,1901,0.609]],
[‘RTX PRO 6000 Blackwell’,[140.6,4520,0.637],[136.8,2290,0.642]],
[‘H200 SXM (141 GB)’,[118.0,2818,0.708],[89.5,1216,0.814]],
[‘B200 (180 GB)’,[117.1,3112,0.830],[91.9,1406,1.019]],
[‘H100 NVL (94 GB)’,[106.4,2484,0.541],[81.6,1098,0.647]],
[‘H100 SXM (80 GB)’,[103.2,2467,0.584],[77.3,1097,0.706]],
[‘RTX 4090 (24 GB)’,[90.9,3134,0.714],[96.7,1634,0.682]],
[‘RTX 6000 Ada (48 GB)’,[84.8,2430,0.731],[92.0,1627,0.701]],
[‘L40S (48 GB)’,[74.6,2827,0.812],[82.8,1601,0.743]],
[‘A100 SXM (80 GB)’,[74.0,1328,0.776],[54.6,703,0.932]],
[‘L4 (24 GB, 72 W)’,[29.7,778,0.629],[32.1,468,0.585]],
[‘MacBook, M5 Max (Metal)’,[46.8,765,null],nulo],
[‘MacBook, M5 Pro (Metal)’,[27.7,397,null],[27.1,369,null]],
[‘MacBook, M4 Pro (Metal)’,[18.0,125,null],nulo]]; var hola=0,pk=0,raf=0; HW.forEach(function(h,k){var o=document.createElement(‘opción’);o.value=k;o.textContent=h[0];$(‘#hwSel’).appendChild(o)}); $(‘#hwSel’).addEventListener(‘cambiar’,función(){hi=+this.value;if(!HW[hi][2])pk=0;renderSpeed()}); $(‘#pkA’).addEventListener(‘click’,function(){pk=0;renderSpeed()}); $(‘#pkB’).addEventListener(‘clic’,función(){si(HW[hi][2]){pk=1;renderSpeed()}}); función stop(){if(raf)cancelAnimationFrame(raf);raf=0;$(‘#runBtn’).disabled=false} función renderSpeed(){ stop();var h=HW[hi],d=h[pk+1]; $(‘#pkA’).setAttribute(‘aria-pressed’,pk===0?’true’:’false’);$(‘#pkB’).setAttribute(‘aria-pressed’,pk===1?’true’:’false’); $(‘#pkB’).disabled=!h[2];$(‘#pkB’).estilo.opacidad=h[2]?1:.4; contar($(‘#vTg’),d[0],1);count($(‘#vPp’),d[1],0); si(d[2]==null){$(‘#vE’).textContent=”n/a”;$(‘#vEu’).textContent=””}else{$(‘#vE’).textContent=d[2].toFixed(3);$(‘#vEu’).textContent=”mWh”} $(‘#vWin’).textContent=!h[2]?’Sólo PQ2_0′:(h[1][0]>=h[2][0]?’PQ2_0′:’PTQ1_0′); var n=’Tamaño de lote 1, profundidad 0, sin torre de visión, llama.cpp con núcleos PrismML. ‘; if(hi>=11)n+=’Las filas de Apple no contienen ninguna cifra de energía porque powermetrics excluye la potencia de DRAM. ‘; if(hi===13)n+=’Las figuras del M4 Pro provienen de la versión anterior a la rotación. ‘; if(hi===11||hi===13)n+=’Solo se informa PQ2_0 para esta computadora portátil. ‘; $(‘#spNote’).textContent=n+’PTQ1_0 gana en tarjetas Ada y L4. PQ2_0 gana en Blackwell, Hopper, Ampere y Apple Silicon.’; $(‘#stream’).innerHTML=”;$(‘#clock’).textContent=”0 tokens, 0.0 s”;postH(); } $(‘#runBtn’).addEventListener(‘click’,function(){ stop();var tasa=HW[hi][pk+1][0],st=$(‘#stream’),made=0,t0=null,DUR=3;st.innerHTML=”; if(RM){var tot=Math.floor(rate*DUR),fr=document.createDocumentFragment();for(var i=0;i