Как генерировать видео через API: пошаговая инструкция
Живые данные: 2 пользователей · 0 оплаченных заказов
# Как генерировать видео через API: пошаговая инструкция
Генерация видео перестала быть уделом студий: модели семейства Wan 2.2 создают ролики по текстовому описанию или по фотографии, а доступ к ним открывается через обычный OpenAI-совместимый API. Ниже — полный цикл для разработчика: от получения ключа до готового mp4-файла на диске.
Что понадобится
- Python 3.10+ и pip
- Ключ API из личного кабинета
- Текстовый промпт или исходное изображение
- 5–10 минут на первый запуск
Шаг 1. Получите ключ
Зарегистрируйтесь в личном кабинете, пополните баланс и создайте API-ключ. Храните его в переменной окружения `VIDEO_API_KEY`, а не в коде — так безопаснее и удобнее для CI.
Полезная гарантия: неудачные задачи не тарифицируются. Если генерация упала по технической причине, платить за неё не придётся — можно просто перезапустить.
Шаг 2. Установите SDK
Достаточно официального пакета OpenAI: `pip install -U openai`. Отдельные библиотеки для видеомоделей не нужны — endpoint совместим по схеме запросов.
Шаг 3. Выберите модель
Доступны две видеомодели Wan 2.2 в разрешении 480p:
- **wan22-t2v** — текст→видео. Описываете сцену словами, получаете анимированный ролик. Подходит для прототипов, заставок и b-roll.
- **wan22-i2v** — фото→видео. Загружаете изображение, модель его оживляет. Даёт контроль над композицией: сначала делаете статичный кадр, потом анимируете его.
Тариф — $0.4 за секунду видео; в каталоге указана стоимость $0.40 за ролик. По курсу 1$ = 88₽ это примерно 35₽ за секунду — заметно дешевле съёмки даже простого стокового фрагмента.
Шаг 4. Запустите генерацию
Код совместим с OpenAI SDK — меняются только `base_url` и ключ:
import time
from openai import OpenAI
client = OpenAI(
api_key="sk-ваш-ключ", # ключ из личного кабинета
base_url="https://api.example-ai.ru/v1", # endpoint сервиса
)
# 1. Текст → видео
job = client.videos.generate(
model="wan22-t2v",
prompt="Дрон летит над заснеженным лесом на рассвете, "
"кинематографичный свет, плавное движение камеры",
)
# Для фото → видео: model="wan22-i2v" и добавьте
# input_reference=open("photo.jpg", "rb")
# 2. Ждём завершения задачи
while job.status not in ("completed", "failed"):
time.sleep(10)
job = client.videos.retrieve(job.id)
print("Статус:", job.status)
# 3. Скачиваем результат
if job.status == "completed":
client.videos.download_content(job.id).write_to_file("result.mp4")
print("Готово: result.mp4")
else:
print("Задача не выполнена — не тарифицируется, можно перезапустить")
Что происходит в коде:
1. Создаём клиент с нашим `base_url` и ключом. 2. Отправляем задачу через `videos.generate` — передаём модель и промпт. 3. Опрашиваем статус каждые 10 секунд: генерация занимает от одной до нескольких минут. 4. Скачиваем готовый mp4 через `download_content`.
Для сценария фото→видео смените модель на `wan22-i2v` и добавьте в вызов параметр `input_reference=open("photo.jpg", "rb")` — остальной код не меняется.
Шаг 5. Усильте промпт через LLM
Качество ролика напрямую зависит от детализации промпта. Дешёвый приём — развернуть короткую фразу в полноценную сцену через языковую модель, например `glm-5.3-flash` ($0.15 за вход / $0.55 за выход за миллион токенов). Попросите её дописать ракурс, освещение, движение камеры и стиль. Запрос идёт через тот же клиент — меняется только имя модели, а вызов превращается в `chat.completions.create`.
Сколько это стоит
- wan22-t2v и wan22-i2v: $0.4/сек (≈35₽), в каталоге указано $0.40 за ролик (≈35₽)
- Промпт через glm-5.3-flash: доли цента
- Исходный кадр через kolors: $0.005 за изображение 1024×1024 (≈0,4₽)
- Неудачные задачи не тарифицируются
Советы по качеству
- Пишите промпты подробно: объект, действие, окружение, свет, стиль. «Кот идёт по улице» даст слабый результат, «рыжий кот идёт по вечерней улице, неон, кинематографичный свет» — заметно лучший.
- Для контроля кадра используйте связку: сначала картинка (kolors — $0.005 или qwen-image — $0.08), затем `wan22-i2v`.
- Тестируйте идеи короткими сценами, прежде чем генерировать длинные ролики — так дешевле искать удачный промпт.
- Обрабатывайте статус `failed`: задача не тарифицируется, просто повторите запрос.
Итог
Весь конвейер — четыре действия: ключ → SDK → `videos.generate` → скачивание mp4. Wan 2.2 закрывает сценарии «текст→видео» и «фото→видео» по $0.4 за секунду, а связка с дешёвой LLM для промптов и image-моделью для исходных кадров превращает API в полноценную видеостудию без съёмочной команды.
Актуальные цены
| Модель | Описание | Цена |
|---|---|---|
kolors | 1024×1024 · Kuaishou Kolors | $0.005 $/шт ≈0.4₽ |
qwen-image | Qwen-Image · высокое качество | $0.08 $/шт ≈7.0₽ |
qwen-image-2512 | 1024×1024 · Qwen-Image 2512 · новое поколение | $0.08 $/шт ≈7.0₽ |
deepseek-v4-flash | быстрые рассуждения DeepSeek | $0.6 / $2.4 $/1M ток |
deepseek-v4-pro | мощные рассуждения DeepSeek | $2.6 / $7 $/1M ток |
glm-4.5-air | быстрая и дешёвая · RU | $0.25 / $1.2 $/1M ток |
glm-4.5v | зрение GLM · RU | $0.3 / $1.5 $/1M ток |
glm-5.2 | Zhipu · баланс цена/качество | $1.3 / $5.2 $/1M ток |
glm-5.3 | флагман Zhipu · reasoning | $1.8 / $7 $/1M ток |
glm-5.3-flash | флагманская flash-модель · reasoning · RU | $0.15 / $0.55 $/1M ток |
kimi-k2.7-code | код и агенты Moonshot | $1.4 / $6 $/1M ток |
qwen3-vl-32b | зрение: фото → текст | $0.25 / $1 $/1M ток |
qwen3.5-122b | флагманский MoE Alibaba | $0.6 / $2.4 $/1M ток |
qwen3.6-35b | универсальный чат Alibaba | $0.5 / $2.2 $/1M ток |
qwen3.8-27b | новейшая модель Alibaba · reasoning | $0.5 / $2.5 $/1M ток |
kimi-k3 | флагман Moonshot · агенты и длинный текст | $5 / $25 $/1M ток |
bge-m3 | эмбеддинги для RAG · ru/en/zh + 100 языков | $0.01 $/1M ток |
wan22-t2v | 480p · Wan 2.2 текст→видео · $0.40 за ролик | $0.4 $/сек ≈35.2₽ |
wan22-i2v | 480p · Wan 2.2 фото→видео · $0.40 за ролик | $0.4 $/сек ≈35.2₽ |
Курс: 1$ ≈ 88₽. Неудачные задачи не тарифицируются.