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

Асинхронные вызовы

При отправке асинхронных вызовов возможно задать три вида таймаутов (через заголовок):

  • X_Health_Timeout — таймаут на проверку работоспособности асинхронных вызовов (значение устанавливается в секундах, по умолчанию — 10).

  • X_Request_Timeout— таймаут на время ответа асинхронных вызовов (значение устанавливается в секундах, по умолчанию — 100).

  • X_Full_Live_Timeout — таймаут на общее время доступности инференса (значение устанавливается в секундах, по умолчанию — None).

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

Важно

  • Асинхронному вызову присваивается уникальный идентификатор Request ID — c05541b6-882a-4c25-8bba-865907e60c69. Request ID нужно использовать для получения статуса асинхронного вызова.

  • Для получения списка асинхронных вызовов используйте метод Get Async Inferences.

  • Для проверки статуса асинхронного вызова используйте метод Get Async Inference Status.

  • Для отправки асихронного вызова не нужна авторизация. Не требуется получать Long API Keys.

  • Возможно отправлять вызовы с использованием ключа из вкладки Управление ключами.

  • Отсутствуют ограничения на количество Подов, обрабатывающих асинхронные вызовы.

  • Для проверки результатов асинхронного вызова:

    • Перейдите во вкладку Асинхронные вызовы карточки деплоя и в меню Кнопка с тремя вертикальными точками и нажмите Получить результат запроса. Результат будет загружен в формате JSON.

    • Используйте метод Get Async Inference Result.

Отправка асинхронного вызова с помощью ключа

  1. Получите ключ.

  2. Добавьте к запросу заголовок вида — X-Async-Request: true. В результате запрос примет следующий вид:

    curl --location --request POST 'https://api.aicloud.sbercloud.ru/public/v2/async_inferences/v1/{cluster}/{inference_name}/{predict}' \
    --header 'x-workspace-id: {workspace_id}1' \
    --header 'x-api-key: {ключ, полученный из вкладки "Управление ключами"}' \
    --header 'X-Async-Request: true' \
    --header 'Content-Type: application/json' \
    --data-raw '{"key": "value"}'
    
  3. Отправьте запрос.

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