Поделиться через


Руководство по развертыванию и выполнению запросов к пользовательской модели

В этой статье приведены основные шаги по развертыванию и запросу настраиваемой модели, которая является традиционной моделью машинного обучения с помощью службы модели ИИ Мозаики. Модель должна быть зарегистрирована в каталоге Unity или в реестре моделей рабочей области.

Дополнительные сведения о обслуживании и развертывании моделей сгенерированных ИИ см. в следующих статьях:

Шаг 1. Регистрация модели

Существуют различные способы регистрации модели для обслуживания моделей:

Метод логирования Описание
Автологирование Это автоматически включается при использовании Databricks Runtime для машинного обучения. Это самый простой способ, но дает вам меньше контроля.
Логирование с использованием встроенных функций MLflow Вы можете вручную записать модель с помощью встроенных вариантов модели MLflow.
Настраиваемое ведение журнала с помощью pyfunc Используйте это, если у вас есть пользовательская модель или если вам нужны дополнительные шаги до или после вывода.

В следующем примере показано, как регистрировать вашу модель MLflow с помощью формата transformer и указать параметры, необходимые для вашей модели.

with mlflow.start_run():
    model_info = mlflow.transformers.log_model(
        transformers_model=text_generation_pipeline,
        artifact_path="my_sentence_generator",
        inference_config=inference_config,
        registered_model_name='gpt2',
        input_example=input_example,
        signature=signature
    )

После регистрации модели убедитесь, что она зарегистрирована либо в каталоге Unity, либо в реестре моделей MLflow.

Шаг 2. Создание конечной точки с помощью пользовательского интерфейса обслуживания

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

  1. Нажмите Сервировка на боковой панели, чтобы отобразить интерфейс Сервировка.

  2. Нажмите кнопку "Создать конечную точку обслуживания".

    Окно обслуживания модели в пользовательском интерфейсе Databricks

  3. В поле "Имя" укажите имя конечной точки.

  4. В разделе "Обслуживаемые сущности"

    1. Щелкните в поле сущности , чтобы открыть форму выбора обслуживаемой сущности .
    2. Выберите тип модели, которую вы хотите обслуживать. Форма динамически обновляется на основе вашего выбора.
    3. Выберите модель и версию модели, которые вы хотите использовать для обслуживания.
    4. Выберите процент трафика для маршрутизации в обслуживаемую модель.
    5. Выберите используемый размер вычислительных ресурсов.
    6. В разделе Горизонтальное масштабирование вычисленийвыберите размер узла масштабирования, соответствующий количеству запросов, которые эта обслуживаемая модель может обрабатывать одновременно. Это число должно быть примерно равно времени выполнения модели QPS x.
      1. Доступные размеры: небольшие для 0-4 запросов, средних 8-16 запросов и больших для 16-64 запросов.
    7. Укажите, следует ли масштабировать конечную точку до нуля, если она не используется.
  5. Нажмите кнопку Создать. Откроется страница "Конечные точки обслуживания" с состоянием конечной точки, отображаемым как "Не готово".

    Создание конечной точки обслуживания модели

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

Шаг 3. Запрос конечной точки

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

  1. На странице конечная точка обслуживания выберите конечная точка запроса.

  2. Вставьте входные данные модели в формате JSON и нажмите Отправить запрос. Если модель была зарегистрирована с примером ввода, нажмите Показать пример, чтобы загрузить его.

       {
       "inputs" : ["Hello, I'm a language model,"],
       "params" : {"max_new_tokens": 10, "temperature": 1}
       }
    

Чтобы отправить запросы на оценку, создайте JSON с одним из поддерживаемых ключей и объектом JSON, соответствующим входным форматом. Ознакомьтесь с конечными точками обслуживания запросов для пользовательских моделей для поддерживаемых форматов и рекомендаций по отправке запросов оценки с помощью API.

Если вы планируете получить доступ к конечной точке обслуживания за пределами пользовательского интерфейса обслуживания Azure Databricks, вам потребуется DATABRICKS_API_TOKEN.

Внимание

В качестве лучшей практики по безопасности для эксплуатационных сценариев Databricks рекомендует использовать машинно-машинные токены OAuth для аутентификации в процессе эксплуатации.

Для тестирования и разработки Databricks рекомендует использовать личный маркер доступа, принадлежащий субъектам-службам , а не пользователям рабочей области. Сведения о создании маркеров для субъектов-служб см. в разделе "Управление маркерами" для субъекта-службы.

Примеры записных книжек

См. следующую записную книжку для обслуживания модели MLflow transformers с помощью службы модели.

Развертывание ноутбука модели трансформеров от Hugging Face

Получите ноутбук

См. следующую записную книжку для обслуживания модели MLflow pyfunc с помощью службы модели. Дополнительные сведения о настройке развертываний модели см. в статье "Развертывание кода Python с помощью службы моделей".

Развертывание записной книжки модели MLflow pyfunc

Получите ноутбук