PrismML lanza Ternary Bonsai 2 27B: un modelo Apache 2.0 de 5,9 GB que conserva el 98,2 % del rendimiento de Qwen3.8 27B

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.