Три AI-движка заходят в бар, и один из них забывает зависимости дома — идеальный повод для смеха и нового проекта. Так коротко можно описать идею llama3pure: минималистичный, понятный и немного хулиганский набор движков инференса, который показывает, как всё работает «под капотом».

Автор проекта, Леонардо Руссо, выложил на GitHub llama3pure три самостоятельные реализации: «чистый» C для десктопов, JavaScript для Node.js и JavaScript для браузера без WebAssembly. Главная фишка — один файл, ноль внешних зависимостей и полный контроль над тем, как парсятся GGUF-файлы и как генерируются токены. Для тех, кто любит понимать, а не слепо использовать — настоящий подарок.

Важно отметить: llama3pure задуман как образовательный инструмент, а не конкурент высокопроизводительному llama.cpp. Руссо сам это подчёркивает: llama.cpp оптимизирован под скорость и сложные сборки, а llama3pure — про прозрачность, простоту и широкую аппаратную совместимость. Такой подход удобен при работе со старым железом, когда WebAssembly не доступен, или когда хочется избежать проблем с будущими зависимостями.

Тесты показывают поддержку Llama до 8B и Gemma до 4B параметров, но реальное ограничение — оперативная память. Формат GGUF загружает веса напрямую в RAM, поэтому объём файла часто эквивалентен потребляемой памяти. Есть «хитрость» — уменьшение окна контекста (context_size), но это уменьшает «память» модели.

На текущем этапе проект ориентирован на одновременные запросы без истории диалога, но автор планирует добавить менеджмент чата позже. Лично Руссо использует свою C-реализацию с Gemma 3 офлайн для приватных задач — пример того, как локальные решения возвращают контроль над данными и приватностью.

Если вам любопытно, как устроен инференс изнутри, или нужно лёгкое, автономное решение без экосистемных «кликов», загляните в репозиторий и погрузитесь в код: иногда простота — лучшая школа.