Отправить синхронный HTTP-запрос к развернутой модели

После развертывания образа с моделью можно отправлять запросы на хост.

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

Структура запроса

REST API сервиса использует протокол HTTP для отправки данных и ответы в формате JSON. HTTP-запросы можно отправить из консоли с помощью инструмента командной строки curl.

Для проверки корректности запросов с клиента на сервис и получения ответа от бэкенда рекомендуется использовать набор инструментов Postman.

Стандартный HTTP-запрос состоит из следующих частей:

  • Конечная точка. URL, который клиент использует для связи с сервисом.

  • Метод HTTP. Сообщает сервису, какое действие хочет выполнить клиент.

  • Заголовок (header). Используется для передачи дополнительной информации между сервисом и клиентом.

  • Тело. Данные, которые отправляются на сервис.

Отправить синхронный запрос, используя ключ

Ключи для получения предсказаний от развернутого деплоя позволяют отправлять запросы к нему, минуя этап аутентификации.

Для отправки запроса к деплою по ключу:

  1. В главном меню платформы перейдите в Deployments → Деплои.

  2. Перейдите в карточку нужного деплоя.

  3. Во вкладке Управление ключами нажмите Сгенерировать ключ.

    ../../../_images/s__key_control.png

    Созданный ключ является уникальным.

  4. (Опционально) Задайте описание ключа, нажав на плюс в столбце Описание.

  5. Во вкладке Тест API нажмите cURL, чтобы скопировать запрос.

    ../../../_images/s__deploy_curl.png

    Запрос будет иметь следующий вид:

    Пример скопированного запроса
    curl 'https://mlspace.ai.cloud.ru/deployments/dgx2-inf/kfserving-1629374788/v1/models/kfserving-1629374788:predict' \
      -H 'content-type: application/json' \
      -H 'x-workspace-id: ee8cd85f-1886-4bbe-a2db-12ce69206a26' \
    --data-raw '{"key": "value"}'
    
  6. Отправьте запрос.

    Пример Python-запроса
    import requests
    BASE_URL = "https://mlspace.ai.cloud.ru/deployments/dgx2-inf/kfserving-1629374788/v1/models/kfserving-1629374788:predict"
    
    results = requests.post(
                BASE_URL,
                json={"key": "value"},
                headers={
                  "x-workspace-id": "ee8cd85f-1886-4bbe-a2db-12ce69206a26",
                  "content-type":"application/json",
                  "x-api-key":"116708e901aa481a9c9d4200357ed31d"
                }
              )
    

    После отправки запроса счетчик в поле Предсказания увеличится на единицу.

Удалить ключ

Для удаления ключа:

  1. В главном меню платформы перейдите в Deployments → Деплои.

  2. Перейдите в карточку нужного деплоя.

  3. Во вкладке Управление ключами выберите ключ, который необходимо удалить, отметив чекбокс.

  4. Нажмите на иконку Кнопка удаления в соответствующей строке списка.

  5. В появившемся диалоговом окне подтвердите действие.

Запустили Evolution free tier
для Dev & Test
Получить