Анимация изображений с помощью API Yes Ai - Stable Video Diffusion

Проект Yes Ai предоставляет нейросеть Анимация изображений с помощью API Yes Ai - Stable Video Diffusion. Вы можете использовать наш API для интеграции анимации в ваши существующие проекты, сайты или боты. Мы предоставляем подробную документацию и поддержку для разработчиков, чтобы помочь вам в реализации вашего проекта.

Анимация изображений с помощью API Yes Ai - Stable Video Diffusion
Анимация изображений с помощью API Yes Ai - Stable Video Diffusion

Подробная документация API для анимации изображений с помощью Stable Video Diffusion

Создание персонализированного приложения или веб-сайта, которое предлагает услуги анимации изображений через наше API, вполне выполнимо. Вам понадобится:

  • аккаунт в мессенджере Telegram
  • регистрация в боте @yes_ai_bot
  • свой уникальный ключ <token> для работы с API

Для того чтобы создать персональный ключ доступа <token> для выполнения запросов, необходимо направить команду /api боту @yes_ai_bot в мессенджере Telegram, после чего он будет сгенерирован.

ОБРАТИТЕ ВНИМАНИЕ ‼ Строго воспрещается использование сервисов Yes Ai в целях, противоречащих закону. Рекомендуется также производить отсев задач на вашей стороне, чтобы исключить возможность неправомерных действий со стороны ваших пользователей.

ОБРАТИТЕ ВНИМАНИЕ ‼ Недопустима передача личных ключей доступа к API третьим лицам, поскольку это может привести к их использованию злоумышленниками для осуществления операций с ресурсами вашего аккаунта в Yes Ai. Пожалуйста, учтите, что возврат средств, потраченных без вашего согласия, не производится.

За выполненные задания, отправленные через API, оплата всегда происходит за счет 🔆 монет, а не ⭐ баллов. Рекомендуем пополнить счет в @yes_ai_bot перед началом тестирования.

Прежде чем приступить к интеграции API и созданию собственных проектов, настоятельно советуем протестировать сервис с помощью нашего бота в Telegram @yes_ai_bot, чтобы убедиться в его соответствии вашим требованиям.

Инструкция: подача нового заказа на анимацию изображения Stable Video Diffusion через API Yes Ai

POST https://api.yesai.su/v2/yesvideo/aniphoto/svd
headers: { Content-Type: application/json, Authorization: Bearer <token> }

Образец заявки на создание анимации Stable Video Diffusion:

curl -X POST https://api.yesai.su/v2/yesvideo/aniphoto/svd

-H "Authorization: Bearer <token>"

-H "Content-Type: application/json"

-d '{

"photo_url": "https://yoururl.com/image1.jpeg",

}'

Параметры:

photo_url = '...' (ссылка на фото, обязательно)

Список возможных ошибок:

['success' => false, 'message' => 'PHOTO_URL_IS_EMPTY'], 400
['success' => false, 'message' => 'PHOTO_URL_NOT_VALID'], 400
['success' => false, 'message' => 'PHOTO_FILE_SIZE_NOT_VALID'], 400
['success' => false, 'message' => 'PHOTO_MIME_TYPE_NOT_VALID'], 400
['success' => false, 'message' => 'UNAUTHORIZED'], 401
['success' => false, 'message' => 'PHOTO_NOT_FOUND'], 404
['success' => false, 'message' => 'NOT_ENOUGH_RPOINTS'], 409
['success' => false, 'message' => 'TASK_LIMIT_EXCEEDED'], 409
['success' => false, 'message' => 'TOO_MANY_REQUESTS'], 429
['success' => false, 'message' => 'INTERNAL_SERVER_ERROR'], 500

Формат ответа при успешной подаче нового задания:

['success' => true, 'message' => 'OK', 'results' => ['animation_data' => [ ... ]]], 200

Как только ваше задание будет успешно принято, вам будет предоставлен специальный идентификационный номер "id". Этот номер будет необходим для последующего отслеживания статуса выполнения вашего запроса. Пожалуйста, сохраните этот номер в надежном месте.
В случае возникновения вопросов или проблем, вы сможете обратиться в службу поддержки (@yes_ai_support), предоставив ваш уникальный идентификационный номер. Мы постараемся решить вашу проблему в кратчайшие сроки.

Проверяем статус выполнения конкретного задания по его iD

GET https://api.yesai.su/v2/yesvideo/animations/{id}
headers: { Content-Type: application/json, Authorization: Bearer <token> }

Образец запроса на получение информации о состоянии выполнения конкретного задания Stable Video Diffusion:

curl -X GET https://api.yesai.su/v2/yesvideo/animations/{id}

-H "Authorization: Bearer <token>"

-H "Content-Type: application/json"

Параметры:

{id} = 12345 (обязательно, id задания)

Возможные ошибки:

['success' => false, 'message' => 'ID_IS_EMPTY'], 400
['success' => false, 'message' => 'ID_NOT_VALID'], 400
['success' => false, 'message' => 'ID_NOT_FOUND'], 404
['success' => false, 'message' => 'UNAUTHORIZED'], 401
['success' => false, 'message' => 'TOO_MANY_REQUESTS'], 429
['success' => false, 'message' => 'INTERNAL_SERVER_ERROR'], 500

Формат ответа при успешной подаче нового задания:

['success' => true, 'message' => 'OK', 'results' => ['animation_data' => [ ... ]]], 200

Возможные коды статусов:

"status": 0 ("status_description":"in queue") - задание находится в очереди (следует подождать)
"status": 1 ("status_description":"in progress") - задание взято в работу (следует подождать)
"status": 2 ("status_description":"completed") - задание успешно выполнено (можно обрабатывать результат)
"status": 3 ("status_description":"rejected with error") - задание отклонено с ошибкой (следует проверить описание причины отклонения из блоков "comment_ru" и "comment_en")
"status": 4 ("status_description":"rejected due to timeout") - задание отклонено по таймауту (следует подать задание повторно)

Проверяем статусы выполнения группы последних заданий

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

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

GET https://api.yesai.su/v2/yesvideo/animations?type=4&status={status}
headers: { Content-Type: application/json, Authorization: Bearer <token> }

Образец запроса на получение информации о состоянии выполнения последних заданий Stable Video Diffusion:

curl -X GET https://api.yesai.su/v2/yesvideo/animations?type=4&status={status}

-H "Authorization: Bearer <token>"

-H "Content-Type: application/json"

Параметры:

{status} = 2 (обязательно, статус заданий. Допускается перечисление нескольких типов статусов в одном запросе через запятую, например: status=1,2,3)
{type} = 4 (обязательно, тип услуги Stable Video Diffusion)

Параметр {status} может принимать следующие значения:

0 - список заданий, которые находятся в очереди на выполнение
1 - список заданий, которые уже выполняются
2 - список заданий, которые уже выполнены
3 - список заданий, которые отклонены системой
4 - список заданий, которые отклонены по таймауту

Возможные ошибки:

['success' => false, 'message' => 'TYPE_IS_EMPTY'], 400
['success' => false, 'message' => 'TYPE_NOT_VALID'], 400
['success' => false, 'message' => 'TYPES_NOT_VALID'], 400
['success' => false, 'message' => 'STATUS_IS_EMPTY'], 400
['success' => false, 'message' => 'STATUS_NOT_VALID'], 400
['success' => false, 'message' => 'LIMIT_OFFSET_IS_EMPTY'], 400
['success' => false, 'message' => 'LIMIT_OFFSET_NOT_VALID'], 400
['success' => false, 'message' => 'LIMIT_COUNT_IS_EMPTY'], 400
['success' => false, 'message' => 'LIMIT_COUNT_NOT_VALID'], 400
['success' => false, 'message' => 'SORT_FIELD_IS_EMPTY'], 400
['success' => false, 'message' => 'SORT_FIELD_NOT_VALID'], 400
['success' => false, 'message' => 'SORT_ORDER_IS_EMPTY'], 400
['success' => false, 'message' => 'SORT_ORDER_NOT_VALID'], 400
['success' => false, 'message' => 'DATA_TYPE_IS_EMPTY'], 400
['success' => false, 'message' => 'DATA_TYPE_NOT_VALID'], 400
['success' => false, 'message' => 'ID_OFFSET_IS_EMPTY'], 400
['success' => false, 'message' => 'ID_OFFSET_NOT_VALID'], 400
['success' => false, 'message' => 'UNAUTHORIZED'], 401
['success' => false, 'message' => 'TOO_MANY_REQUESTS'], 429
['success' => false, 'message' => 'INTERNAL_SERVER_ERROR'], 500

Ответ API в формате JSON при проверке статуса выполнения задания

Пример:

{ "success": true, // Информация была успешно принята
"message": "OK",
"results": {
"animation_data": {
"id": 1, // в системе Yes Ai присвоен уникальный идентификатор
"user_id": 1, // ID пользователя, инициировавшего запрос
"tariff_id": 30, // тариф пользователя (0 - Demo, 5 - Micro, 10 - Start, 20 - Standard, 30 - VIP)
"type": 4, // тип завершенного задания, 4 - Stable Video Diffusion
"photo_url": "https://yourdomain.com/image1.jpeg", // ссылка на исходное изображение, предназначенное для создания анимации
"audio_url": "", // в этом типе заданий переменная не используется
"video_url": "", // в этом типе заданий переменная не используется
"result_url": "https://yesai.su/files/video/1_1234567890.mp4", // завершенное задание представленное в формате MP4, которое необходимо загрузить на личный сервер
"result_type": "video", // тип файла для выполненного задания, для Stable Video Diffusion это всегда 'video'
"result_data": {
"video_width": 768, // ширина видео в пикселях, которое является результатом выполнения задания
"video_height": 768, // высота видео в пикселях, которое является результатом выполнения задания
"video_duration": 3, // продолжительность видео в секундах
"video_durrange": 0, // переменная не используется в этом типе задания
"video_fps": 40 // количество кадров в секунду
},
"comment_ru": "", // если возникли проблемы с выполнением задания, предусмотрено поле для комментариев на русском
"comment_en": "", // если возникли проблемы с выполнением задания, предусмотрено поле для комментариев на английском языке
"accounting": {
"total_cost": 35.094528, // отображена итоговая стоимость выполнения запроса в условных единицах
"spent_points": 0, // количество ⭐баллов, которые были сняты с баланса за выполнение задания. Для Stable Video Diffusion поле всегда будет равно 0, т.к. оплата производится в 🔅монетах
"spent_rpoints": 35.094528, // количество 🔅монет, которые были сняты с баланса за выполнение задания
"spent_repost_points": 0, // количество бонусных баллов за репосты, которое было снято за выполнение задания. Для Stable Video Diffusion поле всегда будет равно 0, т.к. оплата производится в 🔅монетах
"spent_balance": 0, // количество денег с основного баланса, которое было снято за выполнение задания. Для Stable Video Diffusion поле всегда будет равно 0, т.к. оплата производится в 🔅монетах
"spent_rbalance": 0, // количество денег с бонусного баланса, которое было снято за выполнение задания. Для Stable Video Diffusion поле всегда будет равно 0, т.к. оплата производится в 🔅монетах
"remaining_points": 820, // остаток средств на балансе ⭐баллов после выполнения задания
"remaining_rpoints": 3739.2603184, // остаток средств на балансе 🔅монет после выполнения задания
"remaining_repost_points": 0, // остаток баллов на балансе репостов после выполнения задания
"remaining_balance": 0, // остаток средств на основном балансе после выполнения задания
"remaining_rbalance": 3341.37 // остаток средств на бонусном балансе после выполнения задания
},
"language": "", // переменная не используется для Stable Video Diffusion
"prompt": "", // переменная не используется для Stable Video Diffusion
"status": 2, // статус задания, где 2 - успешное завершение
"status_description": "completed", // текстовое пояснение у статусу задания, где completed означает успешное завершение
"start_at": 1711501452, // unixtime, время начала выполнения задания
"finish_at": 1711501554, // unixtime, время завершения выполнения задания
"created_at": 1711501412, // unixtime, время подачи задания клиентом
"updated_at": 1711501554 // unixtime, время последнего обновления статуса задания
}
}
}

Порядок обработки выполненных заданий по анимации изображений (Stable Video Diffusion), поданных через API Yes Ai

В случае, если задача по анимации изображений будет выполнена корректно, вам будет предоставлена эксклюзивная ссылка для загрузки видеоролика в формате "MP4". Данный файл будет доступен на нашем сервере в течение одного часа.
Рекомендуем незамедлительно произвести загрузку результата работы на ваш сервер.

Лимиты при подаче и отслеживании статусов заданий

В Yes Ai через API предоставляется пользователям отслеживание текущего состояния заданий.

Критерии для изображений, предоставляемых в рамках подачи новых заданий:

  • Лимит веса для загружаемых изображений для анимации составляет 5 мегабайт.
  • Поддерживаемые форматы файлов включают jpeg, jpg и png.

Отправка запросов POST для создания новых заданий через API:

  • Запросы на выполнение задач можно отправлять не более одного раза каждые 60 секунд.

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

Лимит очереди для заданий в Yes Ai (при этом учтите, что данная очередь является совместной для всех видов заданий, которые подаются через API Yes Ai):

  • Не более 8 заданий в очереди.

Для запроса информации о состоянии заданий, которые были отправлены ранее, следует использовать GET запросы с определенной регулярностью:

  • Состояние заданий следует проверять не более одного раза в секунду.

Примеры анимаций изображений с помощью API Yes Ai можете посмотреть в нашем сообществе в телеграм:

Для получения информации по работе с API компании Yes Ai рекомендуется обращаться в службу технической поддержки - @yes_ai_support

1111
4 комментария

Примеры анимаций где !?

1
Ответить

Здравствуйте, добавили примеры в конце статьи, можете посмотреть.

Ответить

Очень интересно, но ничего не понятно(

Ответить

Это полная инструкция для создания своего сервиса (бота, сайта, мобильного приложения), если нужно помощь по этому вопросу, то напишите нам в поддержку в телеграмм @yes_ai_support

Ответить