Сборка локального AI-стека для работы с LLM и генерацией изображений на CPU

Источник

Представлено руководство по созданию полностью автономной системы для работы с большими языковыми моделями (LLM) и генерацией изображений, которая функционирует исключительно на процессоре без использования видеокарт или внешних облачных сервисов. Система развертывается на базе Debian 12 x86_64 и доступна через локальную сеть с обязательной аутентификацией, что позволяет пользователям и коллегам использовать её без необходимости постоянной правки конфигураций. Архитектура стека включает три независимых компонента: сервер инференса LLM, генератор изображений и веб-интерфейс Open WebUI, каждый из которых работает на отдельном порту. Для обеспечения безопасности сервер инференса llama-server доступен только по localhost, тогда как доступ к нему осуществляется через Open WebUI, который выступает в роли единственной точки входа с защитой от несанкционированного доступа из локальной сети.

Для корректной работы системы требуется железо с процессором x86_64, минимум 8 ГБ оперативной памяти для моделей до 10 миллиардов параметров и 16 ГБ для более крупных моделей или одновременной работы нескольких сервисов. На диске необходимо выделить от 60 до 80 ГБ свободного места для хранения моделей, виртуального окружения и пакетов. Сборка программного обеспечения начинается с компиляции llama.cpp и stable-diffusion.cpp из исходного кода, после чего в систему загружаются необходимые модели различных форматов, включая универсальные чат-боты, кодинг-модели и инструменты для OCR. Для ускорения работы настоятельно рекомендуется использовать SSD или NVMe накопители, хотя система будет функционировать и на HDD, но с меньшей производительностью.

Процесс развертывания разбит на пять последовательных шагов, каждый из которых можно выполнить независимо для проверки результата. На первом этапе запускается тестовая модель Qwen3.5-2B-Q4_K_M с использованием технологии mmap для экономии памяти, что позволяет запускать модели размером до 20 ГБ на 10 ГБ оперативной памяти за счет подгрузки страниц по требованию. Второй шаг посвящен организации структуры папок для моделей и созданию статической HTML-страницы-шпаргалки с рекомендациями по выбору моделей под конкретные задачи. Третий этап включает настройку сервера генерации изображений stable-diffusion.cpp, который требует наличия диффузионной модели, VAE и текстового энкодера, и запускается на отдельном порту. Четвертый шаг подразумевает установку Open WebUI в общее виртуальное окружение, настройку подключения к серверу инференса и генерацию секретных ключей для безопасности.

Финальный этап охватывает подготовку системы к офлайн-развертыванию на других машинах путем сбора всех необходимых Python-коллекций (wheels) и фиксации версий зависимостей в файле requirements.lock. В результате выполнения всех шагов пользователь получает полностью функциональную систему с веб-интерфейсом для чата и генерации изображений, доступной по локальной сети, а также родной интерфейс для отладки. Важным аспектом является понимание того, что работа на CPU может занимать от 3 до 15 минут для ответа модели и от 5 до 10 минут для генерации изображения, однако использование mmap делает процесс предсказуемым. Интернет необходим только на этапе начальной сборки для скачивания исходников и пакетов, после чего система полностью автономна, а папка с офлайн-пакетами позволяет переносить окружение на машины без сетевого подключения.

Текст подготовлен нейросетью Loople по материалам источника.

Читайте также

Похожие новости

Поиск по Loople

Назад