Cactus Compute ha publicado Needle 2, un modelo abierto de 45 millones de parámetros para llamada a herramientas, uso de dispositivos y extracción estructurada. Lo llamativo no es su capacidad, sino su tamaño.

Las cifras

El modelo entero se distribuye como un único binario de 14 MB y ejecuta una sesión completa en unos 28 MB de RAM. Los pesos se entrenan y despliegan en CQ2-bit mediante Cactus Quants, y el modelo va sellado dentro del propio motor C++ de la empresa, de modo que no hay entorno de ejecución que instalar ni descarga alguna en el momento de la inferencia.

Rendimiento de decodificación declarado:

  • 500 tokens por segundo en una Raspberry Pi 5
  • Entre 400 y 1.500 tokens por segundo en Meta Quest 3S y Apple Vision Pro
  • Entre 300 y 700 tokens por segundo en móviles de menos de 200 dólares

La premisa de diseño

El equipo expone su razonamiento con claridad: convertir una frase desordenada en una firma de función tipada no exige conocimiento del mundo ni generar prosa abierta.

Ese planteamiento explica por qué bastan 45 millones de parámetros y por qué el modelo apunta a hardware sin GPU ni NPU. Cuando la tarea se define de forma estrecha, el modelo también puede serlo.

La arquitectura

Needle 2 utiliza lo que el equipo llama una Simple Attention Network. La receta sustituye la red de propagación hacia delante por un MLP de Hadamard, conserva la atención GQA, añade memoria clave-valor de engramas a partir de tablas de n-gramas con hash y emplea hiperconexiones multicarril. La red tiene 27 capas y 512 de anchura.

El preentrenamiento usó un corpus propietario de 115.000 millones de tokens, con 38.000 millones en la fase posterior. El modelo consume 70 MFLOPs por token, con 35 de sus 45 millones de parámetros activos en multiplicación de matrices.

Las comparaciones son elocuentes: LFM2.5-230M consume 460 MFLOPs por token y FunctionGemma 270M consume 540, mientras que el modelo base de Apple ronda los 6.000.

Dónde funciona

Needle 2 se distribuye como binarios precompilados y biblioteca estática para macOS, Linux (x86-64, ARM64, ARMv7, RISC-V, MIPS32el), Windows, Android, iOS, watchOS, tvOS y WebAssembly.

Según la empresa, Pebble ya ejecuta Needle localmente en la aplicación Index 01 para acciones de voz sin conexión.

El comportamiento del motor también es inusual: los pesos nunca se descomprimen en RAM. Los códigos de 2 bits se expanden dentro de los registros vectoriales y se fusionan en productos escalares enteros, de modo que la ruta aritmética se mantiene en int8. Un único binario sondea la CPU al arrancar y elige el camino adecuado.