LM Studio превращается в сервер одним переключателем: программа начинает принимать запросы по адресу, совместимому с OpenAI, и внутреннее приложение обращается к локальной модели так же, как к облачной. Пока сервер слушает только свой компьютер, риск невелик, а после открытия сети вся защита ложится на настройки авторизации и на правила вокруг машины. Для небольшой команды и внутренних инструментов такой схемы хватает, когда же одновременных пользователей десятки, нужен серверный движок.

Сервер вместо чата

TL;DR

Сервер LM Studio запускается переключателем на вкладке Developer или командой lms server start. Он отдаёт OpenAI-совместимые методы для чата, ответов, эмбеддингов и списка моделей. По умолчанию авторизации нет, поэтому до открытия сети её включают.

Ручной чат на компьютере сотрудника и сервер для приложения решают разные задачи. В первом случае человек выбирает модель и читает ответ сам, во втором программа отправляет запросы по сети, и ей нужны стабильный адрес, предсказуемое время ответа и защита. Работу с моделями в окне программы мы описывали в статье про LM Studio для работы с локальными моделями, а поиск по файлам — в материале про LM Studio RAG.

По документации, поддерживаются методы списка моделей, чат-запросов, ответов, обычных дополнений и эмбеддингов. Существующий клиент OpenAI переключают на локальный сервер заменой базового адреса, остальной код остаётся прежним. Это главное достоинство схемы: приложение можно разработать на облачной модели, а затем перевести на локальную без переписывания.

Перед проектом откройте раздел документации о сервере LM Studio: набор настроек и методов обновляется вместе с версиями программы.

Запуск без окна

Для постоянной работы сервер обязан работать независимо от открытого окна на чьём-то ноутбуке. Документация предлагает два пути: автономная служба llmster без графического интерфейса, которая подходит для серверов Linux, облачных машин и стоек с видеокартами, либо настольная программа в фоновом режиме.

  • Служба llmster: устанавливается скриптом, запускается командой демона и подходит для серверов и стоек с видеокартами.
  • Настольная программа в фоне: в настройках включается запуск сервера при входе в систему, окно сворачивается в трей, а сервер продолжает работу.
  • Автозапуск: последнее состояние сервера восстанавливается при старте программы или службы, а из терминала его поднимает та же команда lms server start.
  • Загрузка моделей по требованию: при включённой опции первый запрос загружает нужную модель в память, а список моделей показывает все скачанные.

Отдел разработки пишет внутренний помощник для проверки текстов и хочет сначала отладить его на локальной модели. Разработчик поднимает службу на выделенной машине с видеокартой, включает токены и направляет клиент на её адрес. Когда помощник заработает, модель можно заменить на более крупную или облачную одной строкой настроек, потому что интерфейс обращения остался прежним.

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

Адрес и клиенты

Клиентам нужны три вещи: базовый адрес, порт и имя модели из LM Studio. В примерах документации используется порт 1234, но он настраивается, поэтому сверяйте значение в настройках сервера.

КлиентЧто указатьЧто проверить
Приложение на том же компьютереЛокальный адрес и порт сервераКакое имя модели возвращает список моделей
Приложение в контейнере на этой машинеАдрес хоста, достижимый из контейнераСлушает ли сервер сетевой интерфейс помимо локального
Другая машина в локальной сетиАдрес машины с LM StudioВключена ли опция доступа из сети и открыт ли порт
Браузерное приложениеАдрес и разрешение для чужих источников (CORS)Включена ли настройка CORS и насколько она широка
Агент или IDEБазовый адрес в настройках клиентаПоддерживает ли клиент нужный метод, например ответы

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

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

● Discovery · 1 час · бесплатно

Какое приложение будет обращаться к вашему серверу LM Studio?

Прийти на Discovery →

Защита доступа

По умолчанию LM Studio работает без авторизации, и любой, кто достучался до порта, получает доступ к модели и нагрузке на видеокарту. Для сети этого недопустимо, поэтому защита включается до первого запроса с другой машины.

  • Токены API: в настройках сервера включается обязательная авторизация (по документации, функция требует LM Studio 0.4.0 или новее), токены создаются в диспетчере токенов с названием и правами, значение показывается один раз.
  • Отдельный токен на каждое приложение: утечка одного токена закрывается его отзывом, остальные интеграции продолжают работать.
  • Доступ из сети только при необходимости: опцию Serve on Local Network (в терминале это ключ --bind 0.0.0.0) включают на машине-сервере и оставляют выключенной на рабочих ноутбуках.
  • Подключение внешних инструментов (MCP): разрешение на вызов серверов из конфигурации опасно, если у них есть доступ к файлам, и требует включённой авторизации.
  • Межсетевой экран: порт открыт только адресам внутренних сервисов, остальные получают отказ.

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

Токены и права нужны всегда, в том числе вне корпоративной сети: забытый сервер на ноутбуке в гостевой сети превращается в открытую модель для соседей. Подобные схемы подключения внутренних сервисов к чату разобраны в статье про Open WebUI API, принципы ключей там применимы и здесь.

Нагрузка и границы

// первая проверка

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

LM Studio удобен для разработки, прототипов и небольших команд: интерфейс помогает выбрать модель, сервер запускается за минуты. Для постоянной нагрузки от многих пользователей чаще подходят серверные движки с пакетной обработкой, например vLLM, о запуске которого в контейнере мы писали в статье про vLLM Docker.

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

Частые вопросы

Как запустить сервер в LM Studio?
Откройте вкладку Developer и включите переключатель запуска сервера либо выполните команду lms server start. Для работы без окна используйте службу llmster или фоновый режим настольной программы.
Совместим ли сервер LM Studio с OpenAI?
Да, по документации поддерживаются методы списка моделей, чата, ответов, обычных дополнений и эмбеддингов. Клиент OpenAI переключают заменой базового адреса.
Как открыть сервер LM Studio для других компьютеров?
Включите в настройках сервера доступ из локальной сети, откройте порт на машине и обязательно включите авторизацию по токенам. Без авторизации любой в сети получит доступ к модели.
Нужна ли авторизация на сервере LM Studio?
По умолчанию авторизация выключена. Для сети её включают в настройках сервера и выдают отдельный токен каждому приложению с нужными правами.
Хватит ли LM Studio для нагрузки всей компании?
Для прототипов и небольшой команды хватит. При многих одновременных пользователях время ответа растёт, и подходят серверные движки с пакетной обработкой запросов.