Агентный ИИ умещается в 14 мегабайт

Компания Cactus Compute выпустила Needle 2 — открытую модель с 45 миллионами параметров для вызова инструментов (tool calling), управления устройствами и структурного извлечения данных. Вся модель — это единственный бинарный файл на 14 МБ, работающий в полноценной сессии при 28 МБ оперативной памяти. Это значит, что полноценный агентный ИИ теперь помещается на смартфон, умные часы или микроконтроллер — без облака и без подключения к сети.

ℹ Что такое agentic LLM?
Агентная языковая модель (agentic LLM) — это модель, которая не просто отвечает на вопросы, но способна самостоятельно вызывать внешние инструменты (API, функции), выполнять многошаговые задачи и принимать решения на основе их результатов.

Архитектура: никаких лишних слоёв

Главная инженерная ставка Cactus — отказ от традиционных FFN-слоёв (feed-forward network, слои прямого распространения). Компания пришла к выводу, что агентный опыт строится на вызове инструментов, а вызов инструментов — это по сути задача поиска и сборки: сопоставить запрос с названием инструмента, извлечь значения аргументов и выдать JSON. Для этого кросс-внимание (cross-attention) — правильный примитив, а параметры FFN на таком масштабе просто теряются впустую.

Needle 2 построен на архитектуре Simple Attention Network, сжат до 2-битного формата CQ2 с помощью Cactus Quants и встроен в собственный движок.

Маленькие модели ломаются при постобучающем квантовании (post-hoc quantization), поэтому Cactus не квантует модель после обучения: Needle 2 обучается против Cactus Quants с этапа предобучения через постобучение — веса, активации и KV-кеш. Та 2-битная модель, которую вы разворачиваете, и есть та модель, что обучалась.

💡 Почему это важно
Лоссless-квантование с самого начала обучения — редкость. Большинство производителей маленьких моделей квантуют уже готовую модель, теряя в качестве. Cactus встраивает квантование в процесс тренировки, сохраняя точность.

Один бинарник — от Cortex-M до WebAssembly

Каждый архитектурный выбор тестировался на целевом железе, прежде чем его одобряли. Результат — единый C++-бинарник без зависимостей, который при запуске сам определяет тип процессора и выбирает оптимальные ядра. Внутри запечатаны модель, токенизатор и компилятор грамматик. Один артефакт работает от Cortex-M до x86 и WebAssembly. Ничего устанавливать и загружать не нужно.


graph LR
    A[Запрос пользователя] --> B[Needle 2 на устройстве]
    B --> C{Tool Calling}
    C --> D[Вызов API / функции]
    C --> E[Структурный JSON]
    C --> F[Управление устройством]
    D --> G[Ответ пользователю]
    E --> G
    F --> G

Как Needle 2 соотносится с конкурентами

На бенчмарках вызова инструментов и управления мобильными устройствами Needle 2 соревнуется с более крупными моделями — FunctionGemma 270M, LFM2.5 230M и Apple FM — будучи в 5–70 раз меньше и работая в 2 битах против их f16.

ПараметрNeedle 2FunctionGemma 270MLFM2.5 230M
Размер (параметры)45M270M230M
Размер файла14 МБ~540 МБ~460 МБ
RAM для сессии28 МБ>500 МБ>400 МБ
Точность весов2-bitf16f16
Зависимостинетестьесть

Вся модель весит как средняя фотография в смартфоне — и при этом конкурирует с моделями в 5–70 раз крупнее по задаче вызова инструментов.

Дообучение на вашем Mac или PC

У каждого продукта свой словарь инструментов, и модель в 45M параметров достаточно мала, чтобы переобучить её там, где она и работает. Cactus предоставляет репозиторий и Python-пакет для файнтюнинга (fine-tuning, дообучения) прямо на пользовательском устройстве.

# Запуск Needle через Cactus CLI
cactus run Cactus-Compute/needle --tools my_tools.json
# Формат инструментов совместим с OpenAI function-calling
📝 Сценарии применения
Умный дом: многошаговое управление устройствами без интернета
Носимые устройства: голосовые команды на умных часах и AR-очках
Роботы: планирование действий и вызов API прямо на борту
Смартфоны: приватный агент без отправки данных в облако

Почему это важно для отрасли

Edge AI (искусственный интеллект на устройстве) — одно из ключевых направлений 2026 года. On-device модели всегда доступны: доступ к облаку зависит от связи, которая далеко не всегда надёжна. Для чувствительных к задержке, критичных с точки зрения приватности или высокообъёмных приложений локальное выполнение становится всё более жизнеспособным.

Needle 2 — не просто маленькая модель, это архитектурный эксперимент: авторы обнаружили, что подход «без FFN» обобщается за пределы вызова функций на любую задачу, где модель имеет доступ к внешним структурированным знаниям (RAG, использование инструментов). Модели не нужно запоминать факты в FFN-весах, если факты поданы на вход.

⚠ Ограничения
Needle 2 оптимизирован под конкретный класс задач — вызов инструментов и структурное извлечение. Для сложного многоходового рассуждения, широких знаний о мире или длинных диалогов он не предназначен — для этого по-прежнему нужны облачные модели или более крупные локальные решения.

Модель и весь код опубликованы в открытом доступе на GitHub, а интерактивный песочница доступна прямо на сайте Cactus.