Входит в расширения:  Сервисы ИИ-инференса

Стадия жизненного цикла модуляExperimental

У модуля есть требования для установки

Модуль настраивается через ModuleConfig. Контракт несёт одну настройку платформенного уровня — связку с каталогом моделей ai-models. Всё, что нужно заказу, — класс, модель и среда исполнения — объявляется в InferenceServiceClass и InferenceService, а не в ModuleConfig.

Минимальная настройка

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: ai-inference
spec:
  enabled: true
  version: 1

Без блока settings связка с каталогом остаётся включённой — это значение по умолчанию.

Связка с каталогом моделей

catalog.mode решает, разрешает ли модуль модель через каталог ai-models.

Оставьте значение по умолчанию, если ai-models установлен: модуль ищет модель в каталоге и получает к нему межмодульный доступ — заказ может называть модель каталога вместо прямого источника.

Отключите связку, если ai-models не установлен или если каждый заказ в кластере называет источник модели прямо. Тогда модуль не создаёт клиента каталога и не просит межмодульных прав; заказы с прямым источником работают по-прежнему, а заказ, называющий модель каталога, получает отказ с причиной в своём состоянии.

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: ai-inference
spec:
  enabled: true
  version: 1
  settings:
    catalog:
      mode: None

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

Где живёт остальная настройка

  • политика публикации, перечень договоров API и политика ускорителей — в InferenceServiceClass;
  • модель, ссылка на класс и параметры среды исполнения одного заказа — в InferenceService;
  • размещение по узлам, класс приоритета и запросы ресурсов составных частей модуля — наследуются от платформы и настройками модуля не выставляются.

Поля обоих ресурсов описаны в Пользовательских ресурсах.

Как явно включить или отключить модуль…

Явно включить или выключить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse. В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль ai-inference, включите (или выключите) переключатель «Модуль включен». Сохраните изменения.

    Пример:

    Интерфейс включения и выключения модуля
  • С помощью Deckhouse CLI (d8).

    Используйте команду d8 system module enable для включения модуля, или d8 system module disable для выключения модуля (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Пример включения модуля ai-inference:

    d8 system module enable ai-inference
  • С помощью ModuleConfig ai-inference.

    Установите spec.enabled в true или false в ModuleConfig ai-inference (создайте его, при необходимости).

    Пример манифеста для включения модуля ai-inference:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: ai-inference
    spec:
      enabled: true

Как настроить модуль…

Настроить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse.

    В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль ai-inference, включите переключатель «Дополнительные настройки». Заполните необходимые поля формы на вкладке «Конфигурация», или укажите настройки модуля в формате YAML на вкладке «YAML», не включая секцию settings. Сохраните изменения.

    Пример:

    Интерфейс настройки модуля

    Вы также можете отредактировать объект ModuleConfig ai-inference на вкладке «YAML» в окне настроек модуля («Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль ai-inference), указав версию схемы в параметре spec.version и необходимые параметры модуля в секции spec.settings.

  • С помощью Deckhouse CLI (d8) (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Отредактируйте существующий ModuleConfig ai-inference (подробнее о настройке Deckhouse читайте в документации), выполнив следующую команду:

    d8 k edit mc ai-inference

    Внесите необходимые изменения в секцию spec.settings. При необходимости укажите версию схемы в параметре spec.version. Сохраните изменения.

    Вы также можете создать файл манифеста ModuleConfig ai-inference, используя пример ниже. Заполните секцию spec.settings необходимыми параметрами модуля. При необходимости укажите версию схемы в параметре spec.version.

    Примените манифест с помощью следующей команды (укажите имя файла манифеста):

    d8 k apply -f <FILENAME>

    Пример файла манифеста ModuleConfig ai-inference:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: ai-inference
    spec:
      version: 1
      enabled: true
      settings: # Параметры модуля из раздела "Параметры" ниже.

Как сменить канал обновлений модуля…

Для смены канала обновлений модуля воспользуйтесь инструкцией.

Требования

К версии Kubernetes: 1.34 и выше.

К версии Deckhouse: 1.75.0 и выше.

Параметры

Версия схемы: 1

  • settings
    объект
    • settings.catalog
      объект
      Управляет интеграцией с модулем каталога ai-models. Отключите её, если заказы используют прямые источники моделей, а ai-models не установлен.

      По умолчанию: { "mode": "Enabled" }

      • settings.catalog.mode
        строка

        Обязательный параметр

        Режим интеграции с каталогом. Enabled сохраняет получение сведений и межмодульные права. None отключает клиентов и права каталога; прямые заказы HuggingFace остаются доступны.

        По умолчанию: Enabled

        Допустимые значения: Enabled, None