English · Русский · 简体中文 · Español
September 18 update (English): Bonsai benchmarks · REAP / APEX rebuild · Jev API + browser-use · Updated graphics.
К проекту · Установка · Профили запуска · Замеры
Начните с AGENTS.md и общего скилла LocalForgeLLM. Фреймворк охватывает три уровня работы с LLM: установка готовой модели и стека; настройка или изменение; создание собственного артефакта из полных весов. Обновления и подключение интерфейсов применяются на всех уровнях. Для генерации изображений, видео и аудио предусмотрена отдельная планируемая ветка.
| Когда читать | Руководство |
|---|---|
| Понять устройство фреймворка и роли компонентов | Архитектура |
| Разобрать задачу, изучить реализацию или продолжить работу со стеком | Процесс агента и запись состояния стека |
| Установить опубликованную модель и зависимости | Уровень 1 — установка |
| Изменить контекст, распределение нагрузки, скорость или поведение MoE | Уровень 2 — настройка и адаптация |
| Докачать голову, включить, отключить или проверить speculative decoding | MTP: операции, память и качество |
| Конвертировать, калибровать и квантовать полные веса | Уровень 3 — сборка |
| Выбрать движок или метод обработки весов | Движки · APEX |
| Подключить или доработать агента и оболочку | Контракты интерфейсов · Pi · OpenShell · llama UI · Hermes |
| Обновить, починить или откатить рабочий стек | Сопровождение |
| Проверить возможности, качество и расход ресурсов | Проверка результата |
| Работать над будущей генеративной веткой | Планируемая область |
| Сверить версии и основания инструкций | Источники |
Новые технические руководства ведутся на английском. Примеры развёртывания ниже сохранены на русском. В границах проверки отдельно указано, что сверено с исходниками, а что измерено на рабочем стеке.
- Укажите кодинг-агенту задачу, нужный контекст и бюджет памяти. Задайте MoE-модель или доверьте ему выбор. Он изучает CPU, GPU, RAM, накопитель и установленное ПО.
- По документации фреймворка, модели и движка выбирает совместимый движок и формат весов.
- Подбирает распределение CPU/GPU, потоки, контекст, точность кеша и размеры батчей под вашу задачу.
- Запускает задачу, проверяет ответ, измеряет скорость и потребление RAM/VRAM, затем уточняет настройки. Результат — готовый профиль запуска с версией движка и параметрами.
Установка и команды ниже — два примера для одного ПК: Qwen и Gemma с APEX GGUF. Тот же цикл выбора и настройки фреймворк применяет к другим MoE-моделям и методам квантования.
Проверенное железо: Linux x86_64, драйвер Vulkan, RTX 4060 8 ГБ, Ryzen 5 5600 и 32 ГБ RAM. Выделите примерно 22 ГБ на SSD для Gemma со зрением или 18 ГБ для Qwen. Это проверенные конфигурации, а не универсальные минимальные требования.
- Скачайте архив llama.cpp b10883 с Vulkan и распакуйте его в
runtime/. - Создайте
models/и скачайте один из профилей ниже. Сохраните исходные имена файлов; проектор зрения называетсяmmproj.gguf. - Запустите выбранный профиль и откройте localhost:8080. Для агентов используйте
http://127.0.0.1:8080/v1и идентификатор моделиgemma-apexилиqwen-apex. Запускайте одну модель за раз.
| Профиль | Файлы |
|---|---|
| Gemma 4 26B-A4B Heretic · I-Balanced | Модель · 19.51 ГБ + зрение · 1.19 ГБ |
| Qwen3.6 35B-A3B · I-Compact | Модель · 17.29 ГБ · текстовый профиль |
Выполняйте команды из каталога с runtime/ и models/. Архив создаёт runtime/llama-b10883/. В нашей конфигурации Vulkan0 — RTX 4060; при другом порядке устройств измените это значение.
Нужна пользовательская сессия systemd. Лимит службы 11 ГиБ включает файловый кеш; mmap позволяет освобождать страницы модели и повторно читать их с SSD. Это ограничивает резидентную память ценой возможных задержек ввода-вывода. Лимит не резервирует память для других приложений и не гарантирует защиту от OOM.
mkdir -p logs
systemd-run --user --unit=gemma-apex --collect \
--property=MemoryMax=11G --property=MemorySwapMax=0 \
--property=OOMPolicy=kill --property=OOMScoreAdjust=1000 \
--property=LimitCORE=0 --property=CPUQuota=600% \
--property=Nice=5 --property=TimeoutStopSec=15 \
--property="StandardOutput=append:$PWD/logs/gemma-server.log" \
--property=StandardError=inherit \
"$PWD/runtime/llama-b10883/llama-server" \
--model "$PWD/models/gemma-4-26B-A4B-heretic-APEX-I-Balanced.gguf" \
--mmproj "$PWD/models/mmproj.gguf" \
--no-mmproj-offload --image-max-tokens 1120 \
--alias gemma-apex --host 127.0.0.1 --port 8080 --cors-origins localhost \
--device Vulkan0 --gpu-layers all --n-cpu-moe 27 --fit off \
--load-mode mmap --threads 6 --threads-batch 6 \
--ctx-size 32768 --parallel 1 --batch-size 1152 --ubatch-size 1152 \
--flash-attn on --cache-type-k q8_0 --cache-type-v q8_0 \
--cache-ram 0 --ctx-checkpoints 1 \
--temp 1.0 --top-p 0.95 --top-k 64 --min-p 0 \
--log-colors off --log-timestampsОстановка: systemctl --user stop gemma-apex. Проектор работает на CPU. Сохраняйте размеры батчей 1152 при лимите 1120 токенов изображения: меньший микробатч вызывал ошибку assertion при обработке изображений в этой сборке.
Работает в текущем терминале; остановка — Ctrl+C. В этом профиле нет лимита памяти службы и проектора зрения.
./runtime/llama-b10883/llama-server \
--model ./models/Qwen3.6-35B-A3B-APEX-I-Compact.gguf \
--alias qwen-apex --host 127.0.0.1 --port 8080 --cors-origins localhost \
--device Vulkan0 --gpu-layers all --n-cpu-moe 36 --fit off \
--load-mode none --threads 6 --threads-batch 6 \
--ctx-size 32768 --parallel 1 --batch-size 512 --ubatch-size 128 \
--flash-attn on --cache-type-k q8_0 --cache-type-v q8_0 \
--cache-ram 0 --ctx-checkpoints 4 \
--temp 1.0 --top-p 0.95 --top-k 20 --min-p 0 \
--log-colors off --log-timestampsЭти профили используют GGUF-веса со смешанной точностью APEX. Точность назначается по роли тензора и слою; профили I- используют калибровку по матрице важности. MoE активирует часть экспертов для каждого токена, а llama.cpp распределяет вычисления между CPU и GPU. Полная модель размещается совместно на SSD, в RAM и VRAM.
Ryzen 5 5600 · 32 ГБ RAM · Manjaro Linux · llama.cpp b10883 / Vulkan · 10 сентября 2026 года.
| Модель / профиль | Генерация | Окно контекста | RAM / VRAM модели |
|---|---|---|---|
| Qwen3.6 35B-A3B · I-Compact | 21.11 токена/с | 32,768 | пик RSS 13.43 ГиБ / 4.07 ГиБ |
| Gemma 4 26B-A4B Heretic · I-Balanced + зрение | 9.78 токена/с | 32,768 | лимит службы 11 ГиБ / снимок 4.88 ГиБ |
Qwen: 28 завершённых запросов, 19.37–22.09 токена/с, до 29,087 токенов контекста по отчётам. Gemma: один завершённый запрос с подключённым зрением, 599 входных / 632 выходных токена. Настроенное окно 32K не означает стресс-тест с заполненным контекстом; скорость генерации не включает обработку промпта.
Мониторинг ресурсов Qwen охватывает 314 замеров за первые 10 мин 44 с сессии, включая паузы:
| Ресурс | Среднее / максимум |
|---|---|
| RAM модели, RSS | 13.23 / 13.43 ГиБ |
| VRAM модели | 4.07 / 4.07 ГиБ |
| CPU модели, доля всех 12 логических потоков | 10.1% / 46.9% |
| Загрузка всей GPU, включая приложения рабочего стола | 89.8% / 100% |
| Температура GPU | 50.4 / 54 °C |
Доступная системная RAM снижалась до 2.53 ГиБ, свободная VRAM — до 811 МиБ. Gemma достигла лимита cgroup 11 ГиБ, который включает файловый кеш и отличается от RSS. Её 4.88 ГиБ VRAM — отдельный снимок; загрузка CPU/GPU для этого профиля не записывалась.
Qwen сгенерировал 7,820 токенов за 28 завершённых запросов. Средняя по времени скорость генерации: (7820 − 28) / 369.07315 = 21.11 токена/с, с учётом первого токена по методике llama.cpp. Средняя скорость обработки нового входа — 67.36 токена/с. Gemma потратила 97.59 с на обработку промпта и 64.55 с на генерацию: всего 162.13 с. Эти замеры описывают скорость обслуживания запросов, а не качество модели.
- Colibri: авторы приводят 9.2 / 9.9 токена/с с холодной / прогретой историей маршрутизации, пик RSS 40 GB, Threadripper 3945WX + RTX 3070 8 ГБ, int4, генерация 200 токенов.
- FreeToken: авторы приводят 39.3 токена/с на RTX 4060 Laptop 8 ГБ + i9-13900H, 32 ГиБ LPDDR5, NVFP4, кодинг-задача через OpenCode. Объём установленной RAM не является замером потребления процесса.
Наша скорость Qwen — 2.13× от приведённой прогретой скорости Colibri и на 46.3% ниже приведённой скорости FreeToken. Строки описывают разные CPU, форматы, задачи и способы усреднения. Показатели памяти у нас и у Colibri — RSS процесса; 32 ГиБ у FreeToken — установленная ёмкость. 11 ГиБ у Gemma — лимит службы, включающий файловый кеш. Учитывайте эти определения при сравнении конфигураций.
Тот же основной APEX-профиль с отдельной Q8 MTP-головой показал 14,83 токена/с по двум запросам и 15,03 токена/с за 102,05 с генерации длинного ответа. Окно 32K и распределение основных весов сохранены; максимальный наблюдавшийся контекст — 2265 токенов. Разница +51,1% относительно предыдущего запроса без MTP не является изолированным приростом: запросы различаются. Формальная проверка качества, зрения и инструментов с MTP остаётся открытой.
Сравнение, две английские инфографики, ресурсы и источники · Числовые замеры · Докачка головы, включение и отключение