Способы запуска локальных моделей

Если вам пришла идея запустить модель искусственного интеллекта на своём компьютере, важно понимать, что существует более одного способа это сделать. Для выбора правильного способа разворачивания модели на своём железе нужно понимать несколько важных моментов и разбираться в способах запуска.

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

Сценарий 1: Запуск для большой нагрузки

Первый сценарий — запуск локальных моделей с помощью графической карты для большой нагрузки. Это такие системы, как API-сервисы, чат-сервисы, масштабный продакшн. Главная цель — обслуживание тысяч запросов в минуту. Самое важное — высокая пропускная способность и низкая задержка ответов.

Для такого способа разворачивания модели требуется достаточно мощное железо: серверы с несколькими видеокартами Nvidia. Инструментарий, который для этого используется:

  • vLLM
  • TensorRT

Если вы будете разворачивать модель на ноутбуке или даже мощном компьютере, такой способ не для вас. Это больше для крупных промышленных компаний. Используется мощное и дорогое железо, обеспечивающее производительность моделей.

Что такое vLLM? Это inference-движок, разработанный для эффективной обработки параллельных запросов. Всё заточено на то, чтобы LLM-модель работала максимально эффективно и быстро. TensorRT — решение для низкоуровневой оптимизации моделей конкретно под архитектуры графических карт Nvidia. Это программные интерфейсы, позволяющие запускать мощные LLM-модели с максимальной производительностью. Если вы начинающий, вам в это лезть не нужно — это дорогостоящая история.

Сценарий 2: Запуск на слабом оборудовании

Следующий сценарий — запуск LLM-модели на ноутбуке или слабом стационарном компьютере. Цель — запуск модели без серверной инфраструктуры, без мощного оборудования, без видеокарт. Можно запускать даже на обычном процессоре. Важны минимальные требования к памяти и доступность.

Инструменты для этого сценария:

  • GGUF-модели — специальные сборки моделей, предназначенные для запуска на слабом железе
  • Ollama — утилита для персональных компьютеров
  • LM Studio — аналог для запуска специальных моделей

GGUF — специализированный формат квантованных моделей, специально оптимизированных для работы на слабом железе. Степень квантования обеспечивается степенью сжатия весов моделей с минимальной потерей качества. Это сжатие похоже на архивирование файлов.

Благодаря сжатию большие модели можно уместить в оперативную память обычного персонального компьютера — 16 ГБ памяти может быть вполне достаточно. Такие модели часто используются в удобных обёртках, как Ollama или LM Studio, чтобы запускать их на слабых компьютерах. Если вы хотите попробовать работу с LLM-моделями на слабом компьютере, GGUF-модели — единственный вариант для комфортной работы.

Сценарий 3: Обучение и файнтюнинг моделей

Следующий вариант — когда нужно обучать и контролировать работу LLM-моделей, добавлять кастомную логику, файнтюнинг, научная работа. Главная цель — полное управление процессом работы с моделью. Приоритет — гибкость и доступ к внутренностям модели: attention, loss-функции и так далее.

В этом случае используется инструмент Transformers от Hugging Face. Transformers — специальная платформа для экспериментов. Вы загружаете оригинальные модели без агрессивной оптимизации, которая может исказить результаты исследования. Здесь можно делать файнтюнинг для обучения модели, создавать кастомные пайплайны и другие задачи по доработке и оптимизации работы LLM-модели.

Модели с помощью Transformers можно поднимать на мощных компьютерах и ноутбуках. Но так как модели работают в оригинальном состоянии, для них требуются достаточно мощные вычислительные ресурсы. Комфортно работать даже на мощном ноутбуке с такими моделями может быть некомфортно или даже невозможно — всё зависит от размера модели.

Сценарий 4: Экосистема Apple Silicon

Последний сценарий — запуск моделей в экосистеме Apple Silicon. Это локальная разработка на специальных чипах M-серии компании Apple. Преимущество в том, что модели оптимизированы под экосистему Apple и работают на процессорах M-серии, позволяя вести эффективную работу с LLM-моделями на macOS без применения графических карт Nvidia. Для этого используется специальный фреймворк MLX — фреймворк для машинного обучения от Apple.

Сравнительная таблица инструментов

Итоговая матрица инструментов для работы с локальными LLM-моделями:

vLLM / TensorRT — максимальная производительность и характеристики. Самое мощное железо, но гибкость средняя и низкая. Акцент на экстремальную скорость работы, требуется очень дорогое оборудование.

GGUF-модели — для слабых компьютеров. Оптимальный выбор при ограниченных ресурсах.

Transformers — максимальная гибкость и настройки модели. Скорость низкая по сравнению с другими способами. Сложность высокая для развёртывания. Железо может быть любое, но для комфортной работы требуется достаточно мощное оборудование.

MLX (Apple) — оптимизировано для macOS. Если у вас macOS, можете попробовать запускать модели с помощью этого инструмента.