Viper LLM
Серверный мод для Fabric, который связывает чат Minecraft с провайдерами LLM (OpenAI, Anthropic, Gemini, Ollama, OpenRouter, LM Studio). Клиентские моды не требуются.
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 802
- Подписчиков на Modrinth
- 1
- версий
- 15
- Обновлён
- 29 сентября 202629 сент.
- Опубликован
- в 2026
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
ViperLLM
ViperLLM — это мод для Fabric, который подключает ванильный чат Minecraft к провайдерам больших языковых моделей. Игроки общаются с ИИ-ассистентами через обычный чат, а ассистенты могут читать данные игры в реальном времени (инвентарь, рецепты, позицию, погоду, контейнеры, таблички, книги и многое другое) через встроенную систему @tool. Работает на выделенных серверах и в одиночной игре (встроенный сервер). Клиентский мод не нужен: ванильные клиенты могут подключиться к серверу ViperLLM и сразу им пользоваться.
Поддерживаемые провайдеры: OpenAI, OpenRouter, LM Studio, Ollama, Anthropic и любые OpenAI-совместимые эндпоинты, с автоматическим определением эндпоинта и фолбэком.
Поддерживаемые версии
| Minecraft | Java | Загрузчик |
|---|---|---|
| 1.21.1 | 21 | Fabric Loader 0.19.x |
| 26.1 | 25 | Fabric Loader 0.19.x |
| 26.2 | 25 | Fabric Loader 0.19.x |
| 26.3 | 25 | Fabric Loader 0.19.5 |
Скачайте файл, номер версии которого совпадает с вашей точной версией Minecraft (например, 1.0.0+1.21.1 для Minecraft 1.21.1). Миксины привязаны к точной версии, поэтому несовпадающие сборки не загрузятся.
Установка
Одиночная игра: положите jar в папку mods вашего клиента и запустите профиль Fabric. Откройте свой мир и выполните команды настройки ниже (читы должны быть включены).
Выделенный сервер: положите jar в папку mods сервера и перезапустите его. Подключайтесь любым ванильным клиентом. API-ключ не входит в комплект: каждый игрок настраивает свой ключ командами ниже.
Настройка
/llm configure cloud
/llm set cloud apikey YOUR_API_KEY
/llm test
/llm ask Hello!Для локального сервера моделей (LM Studio / Ollama, по умолчанию только для оператора):
/llm scan http://192.168.1.50:1234
/llm configure local http://192.168.1.50:1234 qwen3.5-4b YOUR_API_KEY
/llm select local
/llm set local model listКоманды
| Команда | Описание |
|---|---|
| `/llm configure ` | Создать и активировать экземпляр из глобальных настроек по умолчанию |
| `/llm configure [api_key]` | Определить и настроить пользовательский эндпоинт, при необходимости с API-ключом |
| `/llm scan [api_key]` | Определить формат эндпоинта и доступные модели (ключ используется только для сканирования) |
| `/llm select ` | Выбрать существующий экземпляр |
| `/llm delete ` | Удалить экземпляр |
/llm info | Показать профиль и сведения об активном экземпляре |
/llm test | Отправить тестовое OK через активный экземпляр |
| `/llm ask ` | Отправить сообщение активной LLM |
| `/llm upload ` | Отправить URL медиа вместе с запросом |
/llm clearmemory | Очистить память диалога (краткосрочную историю и долгосрочное резюме) |
/llm mode PRIVATE|GLOBAL | Изменить режим маршрутизации ответов |
/llm global | Переключить маршрутизацию всего вашего чата к LLM (сообщения остаются видимыми в чате) |
/llm commands | Переключить разрешение на инструмент команд для вашего профиля |
| `/llm set apikey ` | Задать API-ключ для экземпляра |
| `/llm set url ` | Изменить эндпоинт экземпляра |
| `/llm set model ` | Изменить модель экземпляра |
| `/llm set model list` | Показать доступные модели эндпоинта в виде книги в игре |
| `/llm set prompt ` | Добавить пользовательские инструкции после встроенных правил |
| `/llm set temperature <0-2>` | Изменить температуру сэмплирования |
| `/llm set timeout <5-120>` | Задать таймаут HTTP в секундах |
| `/llm set prefix ` | Изменить префикс ответа |
`/llm set color ` | Изменить цвет ответа |
| `/llm set context playerdata <true|false>` | Переключить контекст данных игрока |
| `/llm set context inventory <true|false>` | Переключить контекст инвентаря |
| `/llm set context recipes <true|false>` | Переключить контекст рецептов |
| `/llm set context maxrecipes ` | Задать лимит контекста рецептов |
Инструменты LLM
Ассистент вызывает их сам, когда ему нужны живые данные. Вызовы инструментов никогда не появляются в чате, только финальный ответ. Некорректная разметка вызовов (например, вывод в стиле DSML от небольших локальных моделей) автоматически исправляется в настоящие вызовы инструментов, и модель просят повторить попытку, если вызов не удаётся разобрать.
| Инструмент | Что возвращает |
|---|---|
@player_stats | Измерение, здоровье, еда, опыт, режим игры, позиция |
@inventory | Предметы в руках, броня, хотбар и весь основной инвентарь (все 27 слотов) |
@search_recipes | Рецепты крафта для предмета (нечёткий поиск, поддержка модовых namespace:item) |
@search_items / @search_blocks | Совпадающие зарегистрированные ID предметов / блоков |
@biome / @time / @weather / @difficulty | Текущий биом, время и фаза, погода, сложность |
@effects | Активные эффекты зелий с длительностью |
@look / @standing / @spawn | Блок в прицеле, блок под ногами, точка спавна мира |
@nearby | Ближайшие сущности плюс то, на что смотрит игрок |
@online | Игроки, находящиеся сейчас на сервере |
@enchant | Зачарования на предмете в руке |
@stats | Смерти, урон, убийства, время игры, расстояние |
@advancements | Выполненные достижения |
@read_book | Название, автор и страницы книги в руке или в хранилище |
@chest_inv | Содержимое сундука, бочки, шалкера, воронки, эндер-сундука или вагонетки в прицеле |
@read_sign | Текст с лицевой и обратной стороны таблички в прицеле |
@find_block | Ближайший подходящий блок в заданном радиусе |
@look_around | Полная сводка об окружении |
@command | Выполняет команду Minecraft с уровнем прав самого игрока |
@tools | Список доступных инструментов |
Глобальная конфигурация
Файл: config/viperllm.json (перезапустите сервер после редактирования).
| Поле | Описание |
|---|---|
defaultProvider | Тип провайдера, используемый для экземпляров по умолчанию |
defaultModel | Идентификатор модели по умолчанию |
defaultUrl | Полный эндпоинт чата по умолчанию |
defaultApiKey | Необязательный глобальный резервный ключ, по умолчанию пуст |
defaultMaxTokens | Лимит выходных токенов по умолчанию |
defaultTemperature | Температура сэмплирования по умолчанию |
defaultTopP | Значение nucleus-sampling по умолчанию |
debug | Дополнительное диагностическое логирование |
contextPlayerData | Глобальное значение контекста данных игрока по умолчанию |
contextInventory | Глобальное значение контекста инвентаря по умолчанию |
contextRecipes | Глобальное значение контекста рецептов по умолчанию |
contextMaxRecipes | Глобальный лимит контекста рецептов |
allowCommandExecution | Общий серверный переключатель для @command (по умолчанию true) |
allowPrivateNetworkScanning | Разрешить всем игрокам сканировать LAN-эндпоинты (по умолчанию false) |
allowPrivateNetworkScanningForOperators | Разрешить операторам сканировать LAN-эндпоинты (по умолчанию true) |
findBlockRadius | Радиус поиска для @find_block (по умолчанию 16) |
Системный промпт по умолчанию встроен в мод. `/llm set prompt ` добавляет ваши собственные инструкции поверх него.
Безопасность
@commandтребует и глобального, и персонального переключателя, и всегда выполняется с уровнем прав самого игрока. Он никогда не повышает права.- Сканирование localhost и LAN-эндпоинтов ограничено операторами, если конфиг сервера не откроет его, так что обычные игроки не могут использовать сканер как сетевой зонд.
- API-ключи хранятся в открытом виде в серверных профилях (`world/viperllm/players/.json`). Защищайте директорию мира и резервные копии.
Лицензия
MIT. Требуется только Fabric Loader. Fabric API не нужен.
Частые вопросы
Как установить Viper LLM?
Установите Fabric под свою версию Minecraft, скачайте Viper LLM под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Viper LLM?
У Viper LLM есть сборки для Minecraft 1.21–26.3.
Нужен ли Viper LLM на сервере?
Ставится только на сервер; игрокам ставить не нужно