Cactus Compute 14MB-os modellje 28MB RAM-mal fut, eszközöket hív eszközökön
A Needle 2 nevű, 45 millió paraméteres AI-modell mindössze 14MB-os bináris fájlként érkezik, és körülbelül 28MB RAM-ot igényel a futtatáshoz.

A Cactus Compute bemutatta a Needle 2-t, egy nyílt, 45 millió paraméteres modellt, amely eszközkihívásra, eszközhasználatra és strukturált adatkivonásra alkalmas. A modell mindössze 14MB-os bináris fájlként érkezik, és körülbelül 28MB RAM-ot igényel egy teljes munkamenet futtatásához. A súlyokat CQ2-bites formátumban, a Cactus Quants segítségével képezték és telepítették, a modellt pedig a cég saját C++ motorjába zárták, így nincs szükség külön futtatókörnyezetre vagy letöltésre az inferencia idején. (MarkTechPost)
Teljesítmény korlátozott hardveren
A jelentett dekódolási sebesség 500 token/sec Raspberry Pi 5-ön, 400–1500 token/sec Meta Quest 3S és Apple Vision Pro eszközökön, valamint 300–700 token/sec 200 dollár alatti telefonokon. A tervezés alapelve, hogy egy mondat típusos függvényaláíráshoz való hozzárendelése nem igényel világismeretet vagy nyílt végű prózát. Ez az elgondolás teszi lehetővé, hogy 45 millió paraméter elegendő legyen, és hogy a modell GPU vagy NPU nélküli hardvereket célozzon meg.
Széleskörű telepíthetőség és célfelhasználások
A Needle 2 előre összeállított bináris fájlokként és statikus könyvtárként érhető el macOS, Linux (x86-64, ARM64, ARMv7, RISC-V, MIPS32el), Windows, Android, iOS/watchOS/tvOS és WebAssembly rendszerekre. A Cactus Compute szerint a Pebble eszköz már futtatja a Needle-t helyben az Index 01 alkalmazásban offline hangvezérlés céljából. A modell olyan cégeknek szól, amelyek korlátozott hardvereken futtatnak firmware-t vagy alkalmazásokat, beleértve a viselhető eszközöket, az IoT startupokat, a fogyasztói elektronikai gyártókat és a robotikai csapatokat.
Architektúra és hatékonyság
Az architektúra a Cactus csapat által Simple Attention Network-nek nevezett eljárást használja. Ez egy Hadamard MLP-vel helyettesíti az FFN-t, megtartja a GQA figyelmet, hozzáad engram kulcs-érték memóriát kivonatolt n-gram táblákból, és multi-lane hyper-connection-öket használ. A hálózat 27 rétegű és 512 széles. A modell tokenenként 70 MFLOPs-ot fogyaszt, a 45 millió paraméterből 35 millió aktív a mátrixszorzások során. Összehasonlításképpen, a LFM2.5-230M tokenenként 460 MFLOPs-ot, a FunctionGemma 270M 540 MFLOPs-ot, az Apple FM pedig körülbelül 6000 MFLOPs-ot használ.
Memóriahasználat és eszközkezelés
A súlyok soha nem dekompresszálódnak az RAM-ba. A 2-bites kódok a vektorregisztereken belül bővülnek és integer dot product-okká egyesülnek, így az aritmetikai út int8 marad. A modell a CPU-t indításkor ellenőrzi, és kiválaszt egy kernel-szintet: SDOT, NEON, AVX2, RISC-V vektorok, wasm SIMD vagy skalár.
Egy bájt-szintű nyelvtan, amelyet JSON sémákból fordítottak, korlátozza az összes kibocsátott tokent, lehetővé téve a motor számára, hogy a szerkezeti tokenek esetében az egész szókészlet 98%-át kihagyja. A figyelmi ablak 256 tokenes, a rendszer fordulat és az eszközdeklarációk pedig KV sink-ként vannak rögzítve, így a memória körülbelül 28MB körül marad a beszélgetés hosszától függetlenül.
Konfidenciaérték és értékelés
Minden válasz tartalmaz egy konfidenciaértéket, amely a kalibrált utólagos fej és a hívási tokenek dekódolási valószínűségének minimuma. A témán kívüli kérések üres hívást [] adnak vissza. A modell öt nyilvános függvényhívási teljesítményteszten futott, szigorú pontos egyezéssel. A Needle 2 a Seal-Tools mindkét ágán vezet, és a Mobile Actions-on 98,3%-os függvénynevet pontosságot ér el. A BFCL v4-en alulmarad, amit a Cactus a corpus eloszlásával magyaráz: az ő adatkészletük fogyasztói eszközök akcióit tartalmazza, nem általános vagy vállalati API-kat.