Seedance 2.5 is live — 30-second cinematic video with native audio & real-person references
MiniMax H3 Max в реальном времени: как измерять задержку
2026/09/07

MiniMax H3 Max в реальном времени: как измерять задержку

Что означает «реальное время» для MiniMax H3 Max, почему опубликованные цифры различаются и как мерить задержку: очередь, вывод, опросы, загрузку.

MiniMax H3 Max может работать быстрее реального времени в узком определении: fal сообщает о создании пятисекундного клипа менее чем за три секунды на его оптимизированной инфраструктуре. Это не означает, что каждый пятисекундный запрос достигнет экрана пользователя за три секунды, и не означает, что модель потоком доставляет завершённые кадры непрерывно. Очерёдность, расширение промптов, обработка вывода, опросы статуса и загрузка файлов находятся вне узкого измерения вывода.[1]

Различие видно в цифрах первой стороны. MiniMax Design сообщает, что пятисекундное видео H3 Max требует примерно 15 секунд там, а пятнадцатисекундное — около 40 секунд; реальное время варьируется в зависимости от параметров и условий обслуживания.[2] Оба утверждения верны. Они описывают разные системы и границы измерения.

Краткий ответ

  • «Быстрее реального времени» означает, что создание завершается до того, как клип закончит воспроизводиться; это не означает потоковую доставку кадров.
  • Результат fal менее трёх секунд измеряет её собственный оптимизированный стек H3 Max, а не универсальное обещание API.[1]
  • MiniMax Design публикует более длительную оценку на своей поверхности, поэтому приложение должно измерять очередь, создание, передачу и загрузку отдельно.[2]
  • Сообщайте время за принятый клип. Быстрый отклонённый результат не даёт полезной производительности.

Что означает «реальное время» для генерируемого видео

Используйте соотношение прежде, чем применять ярлык. Стандартный практический расчёт:

коэффициент реального времени (RTF) = время создания / длительность воспроизведения

Для пятисекундного вывода:

Измеренное время созданияRTFПростое объяснение
2,5 секунды0,5Быстрее реального времени по этим часам
5 секунд1,0Равно длительности воспроизведения
15 секунд3,0Втрое медленнее воспроизведения

Формула проста; числитель — нет. «Время создания» может означать вывод GPU, время отклика провайдера, время с POST до завершённой задачи или время до того, как плеер загрузит весь MP4. Обозначайте числитель каждый раз, когда публикуете RTF.

Это четыре разных измерения:

  1. RTF вывода: выполнение модели делённое на длительность вывода.
  2. RTF провайдера: от приёма провайдером до финализации вывода, если провайдер это публикует.
  3. RTF наблюдаемого API: от POST клиента до первого конечного ответа.
  4. RTF готовности к воспроизведению: от POST клиента до успешно загруженного или буферизованного файла.

Только последние два описывают ожидание в вашем приложении. RTF вывода всё ещё полезен для сравнения служебной работы, но он не может учитывать очередь, которую клиент не видит.

Создание быстрее реального времени — это не то же самое, что потоковая передача

Обычный паттерн API H3 Max асинхронный: отправьте задачу, получите ID, затем ждите завершённого MP4. Клип может завершиться быстрее его собственной длительности без доставки первого кадра рано. Это быстрое пакетное создание, не доказательство пошагового потока видео.

Система непрерывного воспроизведения может вместо этого создавать предстоящие клипы пока одобренный клип воспроизводится и поддерживать буфер впереди. Это конвейер с буфером. Это может ощущаться непрерывным даже когда каждое создание поступает как завершённый файл.

Почему fal и MiniMax Design публикуют разные времена H3 Max

fal разработал пост-обученный вариант H3 Max и оптимизировал его систему вывода вместе с ним. Объявление о запуске сообщает о пятисекундном клипе менее чем за три секунды стены и примерно в 35 раз больше пропускной способности официальной конечной точки MiniMax H3 в оценке fal.[1] Результат принадлежит комбинации модели и обслуживания fal.

MiniMax Design даёт оценку для конечного пользователя на другой поверхности: примерно 15 секунд для пяти секунд вывода и 40 секунд для пятнадцати секунд. Её страница явно предупреждает, что реальное время варьируется в зависимости от параметров и условий обслуживания.[2]

Разрыв может содержать несколько этапов:

POST отправлен
  -> аутентификация и валидация
  -> приёмка в очередь
  -> опциональная обработка промпта
  -> вывод модели
  -> кодирование и проверки безопасности
  -> хранилище и публикация результата
  -> следующий опрос клиента
  -> загрузка MP4 или буферизация плеера

Различные провайдеры также могут использовать разное оборудование, правила пакетной обработки, ограничения параллелизма, расширение промптов и реализацию конечных точек. Даже внутри одного провайдера, 480P и 768P не обязательно имеют одно и то же распределение задержек. Нет надёжного способа преобразовать одну цифру запуска в обещание для другого маршрута.

Измеряйте MiniMax H3 Max сквозь весь путь на используемом маршруте

Полезный тест задержки начинается до POST и заканчивается, когда вывод действительно пригоден для использования. Держите промпт, длительность, разрешение, исходный ресурс, учётную запись и регион неизменными при измерении исходного уровня. Изменяйте одну переменную за раз после этого.

Записывайте эти временные метки:

Временная меткаСобытиеЧто оно фиксирует
t0Клиент начинает POSTНачало видимого ожидания пользователя
t1Ответ отправки разобранСеть, валидация, приёмка и создание задачи
t2Последнее наблюдаемое состояние processingНижняя граница перед завершением
t3Первое наблюдаемое конечное состояниеВерхняя граница завершения задачи плюс задержка опроса
t4Загрузка вывода завершенаГотовность к воспроизведению для полнофайлового рабочего процесса

Опрос означает, что точный момент завершения находится между t2 и t3. Не сообщайте t3 - t0 с точностью до миллисекунды, как если бы сервер предоставил точную отметку времени завершения. Если вы опрашиваете каждые три секунды, наблюдение может прибыть почти на три секунды позже того, как состояние изменилось; кэширование может расширить эту неопределённость.

reAPI Tasks API рекомендует двух-трёх-секундный интервал опроса и отмечает, что ответы в пути кэшируются на пять секунд. Более быстрый опрос увеличивает нагрузку на запросы без ускорения завершения видео.[4]

Node.js timing harness для reAPI

Скрипт ниже отправляет одну оплаченную пятисекундную задачу 480P, измеряет видимое клиентом время и загружает возвращённый файл в памяти. Он не заявляет об измерении ядра вывода fal. Проверьте текущую страницу модели и вашу учётную запись перед запуском.[5]

const API_BASE = 'https://reapi.ai/api/v1';
const API_KEY = process.env.REAPI_API_KEY;

if (!API_KEY) throw new Error('Set REAPI_API_KEY');

const headers = {
  Authorization: `Bearer ${API_KEY}`,
  'Content-Type': 'application/json',
};

const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));

async function readJson(response) {
  const body = await response.json().catch(() => ({}));
  if (!response.ok) {
    const message = body.error?.message ?? response.statusText;
    throw new Error(`HTTP ${response.status}: ${message}`);
  }
  return body;
}

const t0 = performance.now();

// Submit once. Do not automatically repeat this POST after an ambiguous
// network failure: the first request may already have created a paid task.
const submission = await readJson(
  await fetch(`${API_BASE}/videos/generations`, {
    method: 'POST',
    headers,
    body: JSON.stringify({
      model: 'minimax-h3-max',
      prompt:
        'One continuous shot of a red paper boat moving through a shallow rain gutter while the camera tracks beside it; natural rain and street ambience, no dialogue.',
      aspect_ratio: '16:9',
      duration: 5,
      resolution: '480P',
    }),
  }),
);

const t1 = performance.now();
let lastProcessingAt = t1;
let task;
const deadline = Date.now() + 30 * 60 * 1000;

while (Date.now() < deadline) {
  await sleep(3000);
  task = await readJson(
    await fetch(`${API_BASE}/tasks/${submission.id}`, {
      headers: { Authorization: `Bearer ${API_KEY}` },
    }),
  );

  const observedAt = performance.now();

  if (task.status === 'processing') {
    lastProcessingAt = observedAt;
    continue;
  }

  if (task.status === 'failed') {
    throw new Error(
      `${task.error?.code ?? 'FAILED'}: ${task.error?.message ?? 'Unknown error'}`,
    );
  }

  if (task.status === 'completed') {
    const t3 = observedAt;
    const videoUrl = task.output?.video_urls?.[0];
    if (!videoUrl) throw new Error('Completed task has no video URL');

    const download = await fetch(videoUrl);
    if (!download.ok) {
      throw new Error(`Download failed: HTTP ${download.status}`);
    }
    const bytes = (await download.arrayBuffer()).byteLength;
    const t4 = performance.now();

    console.table({
      task_id: submission.id,
      output_seconds: 5,
      submit_round_trip_ms: Math.round(t1 - t0),
      completion_after_ms_lower_bound: Math.round(lastProcessingAt - t0),
      completion_after_ms_upper_bound: Math.round(t3 - t0),
      playback_ready_ms: Math.round(t4 - t0),
      observed_api_rtf: Number(((t3 - t0) / 5000).toFixed(2)),
      playback_ready_rtf: Number(((t4 - t0) / 5000).toFixed(2)),
      downloaded_bytes: bytes,
    });
    break;
  }
}

if (!task || task.status === 'processing') {
  throw new Error(
    `Local polling deadline reached for ${submission.id}; resume GET requests instead of submitting again.`,
  );
}

Запускайте один и тот же harness на отдельных временных окнах, а не производите большой взрыв, который изменяет очередь, которую вы пытаетесь наблюдать. Сохраняйте каждый результат, включая ошибки. Небольшой пилот может сообщить медиану и диапазон; зарезервируйте процентиль хвоста, такой как p95, для выборки достаточно большой, чтобы его поддержать.

Сравняйте задержку, не случайно меняя задачу

Совпадающие параметры необходимы, но недостаточны. Используйте один и тот же исходный URL, байты промпта, соотношение сторон, длительность и разрешение. Если один провайдер расширяет промпт, а другой нет, записывайте это различие, а не притворяйтесь, что запросы были одинаковыми внутри.

Для каждого запуска сохраняйте:

  • ID модели, провайдер, конечная точка, регион учётной записи и дата наблюдения;
  • режим T2V или I2V и хэш каждого входного ресурса;
  • длительность и разрешение;
  • время кругления отправки, границы завершения и время загрузки;
  • конечный статус и код ошибки;
  • прошёл ли клип проверку творческого приёма.

Не смешивайте пятисекундный черновик 480P H3 Max с пятнадцатисекундным основным клипом H3 и называйте разницу эталоном модели. Аналогично, время вывода fal и время интерфейса MiniMax Design не принадлежат одной колонке «победитель», если таблица не обозначает их границы измерения.

Пропускная способность, параллелизм и принятые клипы — это отдельные числа

Задержка — это ожидание одной задачи. Пропускная способность — это объём работы, которую система завершает с течением времени. Провайдер может иметь отличный одиночный вывод и всё ещё ограничивать параллельные запросы; другой может занимать больше времени за задачу, пока завершая больше задач параллельно.

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

требуемые параллельные рабочие ~= ceil(
  хвостовые секунды сквозь
  / (секунды клипа × коэффициент творческого приёма)
)

Это приближение планирования, не гарантия ёмкости. Если десятисекундный клип занимает 20 секунд при выбранной хвостовой задержке и только половина вывода проходит, один рабочий обеспечивает 0,5 принятых клипов каждые 20 секунд. Заполнение десятисекундного слота воспроизведения потребовало бы около четырёх рабочих до добавления запаса прочности, отказов модерации или редакционного обзора.

Буфер тоже важен. Создавайте несколько одобренных клипов перед началом воспроизведения, затем продолжайте производить следующие слоты пока зрители смотрят текущий. Если буфер достигает нуля, поток зависает независимо от впечатляющей медианы.

Секундомер не может оценить звук или историю

H3 Max сохраняет совместное генерирование аудио-видео H3 согласно объявлению запуска fal.[1] Это делает проверку приёма частью любого заявления о реальном времени. Завершённый клип не пригоден, если неправильный персонаж говорит, диалог переходит между голосами, звуковой сигнал попадает на неправильное действие или следующий кадр забывает предыдущий.

Оценивайте каждый клип на требованиях, которые важны для приложения:

ПроверкаУсловие прохождения
События промптаТребуемые биты появляются в правильном порядке
Непрерывность персонажаЛицо, наряд и роль остаются узнаваемыми
Назначение говорящегоКаждая строка принадлежит предполагаемому голосу
Синхронизация аудиоРечь и эффекты совпадают с видимыми действиями
ПереходПервый и последний кадры связываются правдоподобно при предоставлении
Безопасность/обзорКлип приемлем для пункта назначения

Затем сообщайте как сырую производительность завершения, так и принятую производительность завершения. Последняя — это число, которое может поддерживать приложение.

FAQ

MiniMax H3 Max работает быстрее реального времени?

fal сообщает о пятисекундном видео менее чем за три секунды на его оптимизированном стеке, что быстрее реального времени для этого измерения. Тестируйте маршрут, который вы собираетесь использовать; цифра не гарантирует сквозную задержку где-либо ещё.

Почему MiniMax Design говорит около 15 секунд для пятисекундного клипа?

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

Генерирует ли реальное время H3 Max потоком кадр за кадром живой поток?

Не на основе стандартных асинхронных конечных точек. Они возвращают завершённые файлы видео. Непрерывный опыт может быть построен путём создания более поздних клипов пока более ранние клипы воспроизводятся и поддержания буфера.

Влияет ли разрешение на скорость MiniMax H3 Max?

Это может повлиять на выполняемую работу, но не следует предполагать один множитель. Создайте эталон обоих 480P и 768P на выбранной конечной точке, если оба важны. Текущие контракты MiniMax прямой и reAPI H3 Max не предлагают 2K.[3]

Могу ли я сравнить значение fal timings.inference с моим секундомером reAPI?

Только если таблица обозначает их как разные метрики. Одна — это поле вывода бэкенда на fal; другая — это путь, наблюдаемый клиентом, который может включать приёмку, очерёдность, опросы, хранилище и сетевое время.

Сколько тестов достаточно?

Нет универсального счёта. Запустите достаточно, чтобы охватить промпты, режимы, параметры и временные окна, которые вы будете отправлять. С малым пилотом публикуйте медиану и полный диапазон, а не нестабильный p95, и держите творческие отказы в записи.

Опубликуйте ожидание, которое ваш пользователь действительно ощущает

«MiniMax H3 Max реальное время» защитимо только с названными часами. Результат fal показывает, что может сделать его совместно оптимизированный стек. Оценка MiniMax Design показывает, что другая поверхность продукта может выставить более длительное ожидание. Ваше приложение нуждается в своём собственном номере POST-to-playback, измеренном на его собственном маршруте и связанном с коэффициентом приёма.

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

Ссылки

  1. fal. Introducing H3 Max by fal. Published August 26, 2026. fal.ai
  2. MiniMax Design. MiniMax H3 Max—Fast AI Video Generator. Retrieved September 7, 2026. design.minimax.io
  3. MiniMax API. Create Video Generation Task V2. Retrieved September 7, 2026. platform.minimax.io
  4. reAPI. Tasks API: polling, status, and output. Retrieved September 7, 2026. reapi.ai
  5. reAPI. MiniMax H3 Max model page and request controls. Retrieved September 7, 2026. reapi.ai

Further reading

Автор

avatar for reAPI Team
reAPI Team

Категории

Краткий ответЧто означает «реальное время» для генерируемого видеоСоздание быстрее реального времени — это не то же самое, что потоковая передачаПочему fal и MiniMax Design публикуют разные времена H3 MaxИзмеряйте MiniMax H3 Max сквозь весь путь на используемом маршрутеNode.js timing harness для reAPIСравняйте задержку, не случайно меняя задачуПропускная способность, параллелизм и принятые клипы — это отдельные числаСекундомер не может оценить звук или историюFAQMiniMax H3 Max работает быстрее реального времени?Почему MiniMax Design говорит около 15 секунд для пятисекундного клипа?Генерирует ли реальное время H3 Max потоком кадр за кадром живой поток?Влияет ли разрешение на скорость MiniMax H3 Max?Могу ли я сравнить значение fal timings.inference с моим секундомером reAPI?Сколько тестов достаточно?Опубликуйте ожидание, которое ваш пользователь действительно ощущаетСсылкиFurther reading