Обзор

Runtime Local LLM — это плагин, который запускает большие языковые модели полностью на устройстве с помощью llama.cpp, без необходимости подключения к интернету во время выполнения. Он поддерживает файлы моделей GGUF и предоставляет полный API Blueprint для загрузки моделей, отправки сообщений и получения ответов токен за токеном, всё это в фоновом потоке с обратными вызовами на игровом потоке.
Плагин поддерживает Windows, Mac, Linux, Android (включая Meta Quest и другие платформы на базе Android), а также iOS.
Ключевые особенности
- Полный офлайн-инференс: Никаких облачных сервисов или ключей API во время выполнения
- Поддержка моделей GGUF: Загружайте любые модели в формате GGUF (Llama, Mistral, Phi, Gemma, Qwen и др.)
- Актуальная версия llama.cpp: Регулярно обновляется на Fab, чтобы идти в ногу с релизами llama.cpp, поэтому всегда поддерживаются новейшие форматы моделей GGUF
- Ускорение GPU: Использует Vulkan на Windows и Linux, Metal на Mac и iOS, а также CPU + инструкции на Android и Meta Quest
- Несколько способов загрузки моделей:
- Загрузить из локального файла
- Загрузить по имени модели (выбор из выпадающего списка в Blueprints)
- Скачать по URL и загрузить автоматически
- Только скачивание для предварительного кэширования моделей
- Потоковая передача токен за токеном: Получайте каждый токен по мере его генерации для отображения в реальном времени
- Асинхронные ноды Blueprint: Ноды с выходными делегатами для загрузки, отправки сообщений и скачивания
- Настраиваемые параметры инференса: Температура, Top-P, Top-K, штраф за повторения, выгрузка слоев на GPU, размер контекста, сид, количество потоков и системный промпт
- Управление диалогами: Многоходовые беседы со сбросом контекста, сохранением/загрузкой на диск, снимками в памяти и автоматическим обобщением для длительных чатов
- Редакторский менеджер моделей: Просматривайте, скачивайте, импортируйте, удаляйте и тестируйте модели прямо в настройках проекта
- Кроссплатформенная упаковка: Модели поставляются с вашим проектом через стадирование NonUFS
Как это работает
- Управление моделями в редакторе: Используйте панель настроек плагина для просмотра каталога предопределенных моделей, их загрузки или импорта собственных GGUF-файлов
- Загрузка модели во время выполнения: Вызовите одну из функций загрузки (по файлу, по имени, по URL или по метаданным) с вашими параметрами вывода
- Отправка сообщений: Передайте сообщение пользователя экземпляру LLM; токены поступают обратно через делегаты по мере генерации ответа моделью
- Использование ответа: Отображайте токены в интерфейсе чата, управляйте диалогами NPC, генерируйте динамический контент или передавайте в другие системы
Все вычисления выполняются в выделенном фоновом потоке. Обратные вызовы (генерация токенов, завершение, ошибки) срабатывают в игровом потоке, поэтому вы можете безопасно обновлять из них интерфейс и состояние игры.
Типичные сценарии использования
- Внутриигровые чат-боты и ассистенты: Вопросы и ответы, справочные системы, динамические руководства
- Диалоги NPC: Разговорные NPC с постоянной памятью на персонажа, использующие снимки бесед
- Длительные ролевые игры и повествовательные системы: Автоматическое обобщение позволяет удерживать многочасовые разговоры в пределах контекста без потери ключевых фактов
- Процедурный контент: Генерация описаний заданий, предысторий предметов, деревьев диалогов на лету
- Приложения, работающие в первую очередь офлайн: Всё, что требует возможностей LLM без подключения к сети
Хранение и упаковка моделей
Модели хранятся в виде файлов .gguf в каталоге Content/RuntimeLocalLLM/Models вашего проекта. Плагин автоматически настраивает Дополнительные каталоги, не являющиеся ассетами, для копирования (DirectoriesToAlwaysStageAsNonUFS), чтобы файлы моделей поставлялись вместе с упакованным проектом и оставались доступными через стандартный файловый ввод-вывод во время выполнения.
Каждая модель также имеет сопутствующий файл .json, в котором хранятся её метаданные (отображаемое имя, семейство, вариант, описание, количество параметров).
Поддерживаемые модели
Плагин работает с любой моделью в формате GGUF. Редактор предоставляет каталог популярных предустановленных моделей для загрузки в один клик, а также позволяет импортировать любой пользовательский GGUF-файл. Распространённые семейства моделей включают:
- Llama (Meta) — 1B, 3B, 8B и больше
- Mistral / Mixtral — 7B и больше
- Phi (Microsoft) — 2B, 3B, 4B
- Gemma (Google) — 2B, 7B
- Qwen (Alibaba) — 1.5B, 7B и больше
- TinyLlama — 1.1B
- И многие другие модели сообщества
Квантование
Модели бывают различных уровней квантизации, которые позволяют находить компромисс между качеством, размером и скоростью:
| Квантование | Качество | Size | Скорость |
|---|---|---|---|
| Q2_K | Нижний | Самый маленький | Самый быстрый |
| Q4_K_M | Good | Средний | Fast |
| Q5_K_M | Лучше | Более крупный | Умеренный |
| Q8_0 | High | Большой | Медленнее |
| F16 / F32 | Высочайшее | Крупнейший | Самый медленный |
Для мобильных устройств и VR-гарнитур рекомендуются меньшие квантования (Q2_K–Q4_K_M) с компактными моделями (1–3 млрд параметров). Для настольных ПК можно использовать более крупные модели и более высокие уровни квантования в зависимости от доступной оперативной памяти и ресурсов CPU/GPU.
Дополнительные ресурсы
- Get it on Fab
- Веб-сайт продукта
- Скачать демо (Windows)
- Видеоурок
- Поддержка плагина и индивидуальная разработка: [email protected] (индивидуальные решения для команд и организаций)