La IA del mañana
ES

← Volver al cuaderno

Profundización · Folio IV

Calcular con menos bits

Cada número de un modelo se guarda con cierta precisión, como una regla graduada en milímetros o en centímetros. Durante años los modelos usaron 16 o 32 bits por número. Resulta que a menudo les bastan 8, 4 o incluso menos de 2.

Prometedor actualizado el

I

La idea, en sencillo

Los pesos de un modelo son números. Guardarlos con menos bits es como redondear: se pierde algo de detalle, pero cada número ocupa menos, se lee más rápido y se multiplica con circuitos más pequeños.

La verdadera ganancia está menos en el cálculo que en el movimiento: como muestra la figura de la energía en la página principal, leer un número de la memoria cuesta cientos de veces más que calcular con él. Dividir los bits entre dos divide esa factura entre dos.

II

Cómo funciona

El truco es la escala por bloques: los números se agrupan en pequeños paquetes que comparten una escala común, de modo que unos pocos bits bastan para describir cada uno respecto a sus vecinos. Las partes más sensibles (primeras y últimas capas, sumas) siguen en mayor precisión.

Hay dos vías: comprimir después del entrenamiento (rápido, pero la calidad cae en precisión muy baja) o entrenar directamente en baja precisión, para que el modelo aprenda a convivir con el redondeo desde el principio.

Fuente: Horowitz, Computing's Energy Problem (ISSCC 2014)

Fig. I — El mismo modelo, menos bits

Memoria necesaria para guardar 1000 millones de pesos

  1. 32 bits4 GB
  2. 16 bits2 GB
  3. 8 bits1 GB
  4. 4 bits0,5 GB
  5. 1,58 bits≈ 0,2 GB

Con tres valores, la multiplicación desaparece:

+1sumar el número0ignorarlo−1restarlo

Esquema ilustrativo: muestra la idea, no mediciones.

Cada vez que se divide la precisión entre dos, se divide entre dos la memoria que hay que leer, y por tanto la energía gastada en moverla. Con solo −1, 0 o +1, una multiplicación se convierte en una suma, una resta o nada.
III

Tres escalones hacia abajo

Establecido

8 bits: DeepSeek-V3 (2024)

Primera validación del entrenamiento en 8 bits en un modelo gigante: la mayoría de los cálculos matriciales de DeepSeek-V3 se hacen en FP8, con un escalado fino. El error de entrenamiento queda a menos del 0,25 % de la referencia en 16 bits. Es una de las razones de su bajo coste de entrenamiento.

Fuente: DeepSeek-AI, DeepSeek-V3 Technical Report (2024)

Prometedor

4 bits: NVFP4 (2025)

NVIDIA entrenó un modelo de 12 000 millones de parámetros con 10 billones de palabras en 4 bits, el entrenamiento más largo de este tipo publicado. En MMLU-Pro: 62,58 % frente a 62,62 % en 8 bits. En chips recientes, el 4 bits calcula de 2 a 3 veces más rápido que el 8 bits con la mitad de memoria. Alrededor del 16 % de las capas siguen en mayor precisión, y el código sale algo peor.

Fuente: NVIDIA, Pretraining Large Language Models with NVFP4 (2025)

Prometedor

1,58 bits: BitNet b1.58 (2024)

Cada peso vale −1, 0 o +1. Desde 3000 millones de parámetros, iguala a un modelo de 16 bits entrenado con los mismos datos, siendo 2,71 veces más rápido y usando 3,55 veces menos memoria; con 70 000 millones, 4,1 veces más rápido. Energía de cálculo estimada para los productos de matrices: 71 veces menos.

Fuente: Ma et al., The Era of 1-bit LLMs: BitNet b1.58 (2024)

IV

Los límites

No hay atajo para los modelos existentes: los pesos ternarios deben aprenderse desde el principio; redondear tanto un modelo existente lo rompe. El hardware va con retraso: las ganancias de BitNet solo son plenamente reales en chips diseñados para él. Tareas frágiles: el código y el cálculo preciso sufren primero. Y cuantos más datos ha visto un modelo, más detalles finos llevan sus pesos, lo que deja menos margen para redondear.

VI

Lo que nos gustaría probar

Tomar un mismo modelo abierto en 16, 8 y 4 bits y hacer a las tres versiones las mismas preguntas sobre artículos de OrigoTech. Nuestra apuesta: los hechos (fechas, cifras) se degradan antes que el razonamiento. Si es así, es un argumento para guardar los hechos fuera de los pesos.

Volver arriba