HiAPI
Блог

Руководство по использованию

Создание коротких видео с помощью Seedance-2.0-Fast через API hiapi

Sep 15, 2026
Создание коротких видео с помощью Seedance-2.0-Fast через API hiapi

TL;DR

  • Что это: полный рабочий процесс создания вертикальных коротких видео в стиле TikTok/Reels с помощью seedance-2.0-fast через API hiapi — от первого асинхронного вызова до рендеринга целой недели постов с помощью пакетного скрипта. Встроенное ниже короткое видео было сгенерировано с помощью точно таких же запросов, как показано в этом руководстве.
  • Почему эта модель для коротких видео: нативный вывод 9:16, длительность 4–15 секунд, цена рендеринга 720p — $0.1772 за секунду — 5-секундное вертикальное видео стоит около $0.89 (актуальные цены). Черновой тариф 480p — $0.0843 за секунду, что позволяет дешево дорабатывать вступительный хук, прежде чем фиксировать финальный рендер.
  • Проверенные факты об API: prompt, resolution (480p | 720p) и duration (целое число, 4–15) обязательны. aspect_ratio принимает 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive. Видео из изображения передается через image_urls как статичное изображение. Все работает через единый асинхронный эндпоинт /v1/tasks — не нужно изучать отдельный API, специфичный для видео.
  • Рабочий процесс: сначала создайте черновик в 480p, чтобы зафиксировать концепцию, затем перерендерите финальную версию в 720p, и поскольку отправка задач не блокирует, можно параллельно распределять несколько запросов.

Почему seedance-2.0-fast подходит для цикла коротких видео

Контент для коротких видео — это игра масштаба: вы редко публикуете одно видео, вы публикуете целую очередь и оставляете то, что работает. Это меняет реальные требования к видеомодели: быстрый, дешевый, нативный вертикальный вывод важнее исходного качества изображения. seedance-2.0-fast построен именно вокруг такого компромисса:

  • Поминутная оплата делает итерации контролируемыми по стоимости. В 480p 4-секундный черновик стоит около $0.34; 5-секундное видео, как ниже, стоит $0.42 в 480p и $0.89 в 720p. Поскольку оплата рассчитывается строго как duration × rate, duration — ваш единственный рычаг стоимости — нет отдельной надбавки за «качество», которую нужно учитывать в бюджете (проверено по актуальной странице цен).
  • Нативный 9:16. Вы рендерите вертикально напрямую через aspect_ratio, а не обрезаете 16:9 видео, теряя композицию, описанную в запросе.
  • Режим референсного видео дешевле, а не дороже. Передача короткого видео reference_video_urls для руководства стилем/движением снижает тариф до $0.1072 за секунду в 720p и $0.0486 за секунду в 480p — это полезно, когда вы нашли стиль, который хотите повторять во всей партии.

Если вы публикуете акцентные работы, а не ежедневный массовый контент, рабочий процесс ниже все равно применим — для более широкого обзора модели см. нашу сопутствующую статью seedance-2.0-fast для интеграции API.

Подготовка

Вам нужен ключ API hiapi — SDK не требуется:

export HIAPI_API_KEY="sk-..."

Каждая видеомодель на hiapi использует один и тот же асинхронный эндпоинт задач: POST https://api.hiapi.ai/v1/tasks немедленно возвращает taskId, затем вы опрашиваете GET /v1/tasks/{taskId}, пока задача не завершится. Полный справочник см. в документации.

Ваше первое вертикальное короткое видео

Минимальный допустимый запрос требует prompt, resolution и duration. Добавьте aspect_ratio: "9:16" для формата короткого видео:

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer $HIAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-fast",
    "input": {
      "prompt": "Крупный вертикальный план: руки кладут золотистый блин на вершину высокой стопки блинов, блины на стеклянном блюде на деревенском деревянном столе на солнечной кухне в стиле фермерского дома, поднимается пар. Теплый утренний свет падает слева. Затем медленная струя меда выливается на верхний блин, блестя на свету, пар продолжает подниматься. Уютный, естественный, с ощущением съемки с рук, малая глубина резкости, теплые тона. Без текстовых наложений.",
      "resolution": "720p",
      "aspect_ratio": "9:16",
      "duration": 5
    }
  }'

Ответ немедленно возвращает ID задачи:

{"code": 200, "data": {"taskId": "tk-hiapi-..."}, "message": "success"}

Опрашивайте, пока status не станет success, затем сразу скачайте output[0].url — этот URL имеет ограниченный срок действия. Ниже видео, которое фактически сгенерировал этот запрос:

Этот рендер получился 720×1280 (чистый 9:16), длительностью чуть более 5 секунд, оплата составила $0.886 — ровно 5 × $0.1772, что на практике подтверждает поминутную оплату, а не только заявление на странице цен.

Схема входных данных, проверенная на живом API

Схема seedance-2.0-fast строгая — отправка неподдерживаемых полей приводит к 400, а не к молчаливому игнорированию параметров:

Поле Тип Обязательно Значения
prompt string ✅ Описание вашего кадра
resolution string ✅ 480p, 720p
duration integer ✅ 4–15 (секунд)
aspect_ratio string Необязательно 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive
image_urls array Необязательно Исходное статичное изображение для видео из изображения

Если обязательное поле опущено, задача будет отклонена до создания чего-либо — за некорректные запросы не взимается плата. Строго соблюдайте имена полей из этой таблицы; скрипты для коротких видео, написанные для других видеомоделей (с motion_strength, seed, first_frame_url), здесь получат 400, а не будут проигнорированы.

Переиспользуемая функция Python

Отправка, опрос, скачивание — около 30 строк кода покрывают производственный цикл:

import os, time, requests

API = "https://api.hiapi.ai/v1/tasks"
HEADERS = {"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"}

def submit(prompt: str, duration: int = 5, resolution: str = "720p",
           aspect_ratio: str = "9:16", **extra) -> str:
    r = requests.post(API, headers=HEADERS, json={
        "model": "seedance-2.0-fast",
        "input": {"prompt": prompt, "duration": duration,
                  "resolution": resolution, "aspect_ratio": aspect_ratio, **extra},
    }, timeout=60)
    data = r.json()
    task_id = (data.get("data") or {}).get("taskId")
    if not task_id:
        raise RuntimeError(f"submit failed: {data}")
    return task_id

def wait(task_id: str, timeout_s: int = 900) -> dict:
    deadline = time.time() + timeout_s
    while time.time() < deadline:
        task = requests.get(f"{API}/{task_id}", headers=HEADERS, timeout=30).json()["data"]
        if task["status"] == "success":
            return task
        if task["status"] == "fail":
            raise RuntimeError(f"task failed: {task.get('error')}")
        time.sleep(8)
    raise TimeoutError(task_id)

def make_clip(prompt: str, out_path: str, **kw):
    task = wait(submit(prompt, **kw))
    url = task["output"][0]["url"]          # 有时效限制——立即下载
    with open(out_path, "wb") as f:
        f.write(requests.get(url, timeout=120).content)

5-секундный рендер 720p обычно завершается в течение одной-двух минут; при пиковой нагрузке закладывайте до примерно 10 минут, прежде чем считать это таймаутом.

Видео из изображения: начать с фиксированного кадра

Для коротких видео, ориентированных на продукт или бренд, реальный риск — дрейф запроса: вы хотите, чтобы в кадре был ваш продукт или тарелка, а не интерпретация модели. image_urls решает эту проблему: сгенерируйте или снимите статичное изображение, а затем оживите его.

task_id = submit(
    "Стопка блинов мягко опускается, пар продолжает виться вверх, затем мед начинает выливаться из кадра, первые капли падают на верхний блин. Медленное, стабильное движение с ощущением съемки с рук, теплый утренний свет.",
    duration=5, resolution="720p", aspect_ratio="9:16",
    image_urls=["https://your-cdn.example/pancake-still.jpg"],
)

Композиция, освещение и положение субъекта фиксируются на вашем референсном изображении — запрос должен только описать последующее движение. Это идеально для любого видео, где начальный кадр важнее интуиции модели (блюдо, изображение продукта, брендовая сцена).

Пакетная генерация видео на день

Поскольку /v1/tasks асинхронен, массовое производство — это просто: отправить все, затем собрать.

briefs = [
    ("hook-pancakes", "Крупный вертикальный план: руки складывают золотистые блины в стопку……"),
    ("hook-latte",    "Вертикальный план: пар поднимается над свежим латте, когда вливается молоко……"),
    ("hook-citrus",   "Вертикальный макроплан: нож разрезает цитрусовый фрукт……"),
]

tasks = {name: submit(p, duration=5) for name, p in briefs}   # параллельная отправка
for name, tid in tasks.items():                                # сбор результатов
    result = wait(tid)
    url = result["output"][0]["url"]
    open(f"{name}.mp4", "wb").write(requests.get(url, timeout=120).content)

Стоимость остается предсказуемой, поскольку оплата строго по duration × rate:

Сценарий Характеристики Стоимость
1 итерация черновика 4 секунды · 480p около $0.34
1 готовое к публикации видео 5 секунд · 720p около $0.89
5 видео (ежедневная партия) 5 × 5 секунд · 720p около $4.43
Партия с согласованием стиля 5 секунд · 720p с reference_video_urls около $0.54 за штуку

Рабочий процесс, который выдерживает практику: создайте черновики каждого идеи в 480p, оставьте те, что достойны публикации, и перерендерите только их в 720p. Как только вы найдете стиль, достойный повторения, reference_video_urls зафиксирует стиль по более низкому поминутному тарифу, чем свежий рендер 720p.

Советы по запросам для ленты

Факторы, которые действительно формировали вывод в тестовых рендерах, особенно для коротких видео:

  • Описывайте кадр как вертикальный и устанавливайте aspect_ratio: "9:16" для соответствия. Запросы, написанные для сцен 16:9, при принудительном переводе в 9:16 обрезаются по центру; заранее описывайте крупную вертикальную композицию (как в видео с блинами выше), чтобы субъект заполнял кадр.
  • Начинайте с движения, а не с обстановки. Начальный момент короткого видео для ленты должен уже что-то делать — рука уже складывает, мед уже льется — а не начинать с медленного установочного кадра перед вознаграждением.
  • Держите одно четкое действие на видео. 5-секундный рендер выше делает ровно две вещи по порядку (складывание, затем полив), и читается ясно; если впихнуть в одно видео три несвязанных действия, они часто все становятся размытыми.
  • Указывайте освещение и материалы. «Теплый утренний свет», «поднимается пар», «блестя на свету» — конкретные сенсорные детали — это то, что отличает конкретный, аппетитный рендер от обобщенного.

Часто задаваемые вопросы

Особенно ли seedance-2.0-fast подходит для TikTok и Reels? Да — нативная поддержка 9:16 и поминутная оплата (а не фиксированная цена за штуку) делают его очень подходящим для ритма публикаций, когда вы рендерите несколько коротких вариантов и оставляете самый сильный.

Сколько стоит одно короткое видео? В 720p стоимость составляет длительность (секунды) × $0.1772. 5-секундное видео — $0.886; 10-секундное видео — $1.772. В 480p тариф снижается до $0.0843 за секунду. Перед бюджетированием целой партии обязательно проверьте актуальные тарифы на странице цен.

Могу ли я оживить статичное изображение, а не генерировать только из текста? Да, через image_urls в запросе — см. раздел о видео из изображения выше. Это более надежный путь, когда конкретный продукт, тарелка или сцена должны появиться точно такими, как на съемке.

Какое самое короткое и самое длинное видео я могу сгенерировать? duration принимает целые числа от 4 до 15 секунд. Дробные части секунд не поддерживаются.

Влияет ли разрешение на что-то кроме размера пикселей и цены? В самой схеме — нет: resolution управляет только размером вывода и поминутным тарифом. Композиция и движение полностью определяются запросом и aspect_ratio.

Итог

Создание коротких видео с seedance-2.0-fast сводится к одному асинхронному эндпоинту, трем обязательным полям и поминутной оплате, которая поощряет итерации перед фиксацией: создавайте черновики вертикальных концепций в 480p, если конкретный продукт или субъект должен появиться точно, используйте image_urls, чтобы зафиксировать начальный кадр победного варианта, затем перерендерите финальную версию в 720p. Получите ключ API и начните с запроса в начале этого руководства — страница модели seedance-2.0-fast содержит полный справочник параметров и актуальные цены, чтобы продолжить изучение.

Похожие статьи

Все статьи →

Начните работать с постоянными артефактами ИИ

Получите API-ключ и вызывайте модели изображений, видео и аудио через один API на основе tasks.

Читать документацию API