Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Пользователь нажимает кнопку «Сгенерировать видео» и ждёт. Через двадцать секунд ничего не происходит, через минуту тоже. Именно в этот момент выясняется, что продукт на самом деле пообещал: понятный путь к результату или молчащий спиннер.

Подтверждённый доступ к Veo отвечает только на вопрос, что умеет сервер. Он не отвечает на вопрос, что человек увидит на четвёртой минуте ожидания или после того, как генерация тихо остановилась из-за фильтра. Пользователь платит за обещание: путь от кнопки до готового ролика или до честного отказа, а не за строку в консоли с кодом ответа 200.

Поэтому порядок работы стоит перевернуть. Сначала описывается storyboard состояний: запуск, ожидание, ограничение, ошибка, повтор, выдача результата, и только после этого решается вопрос доступа и оплаты. Разбор ниже построен по документации Gemini API и Vertex AI, подтверждённой на 2026-07-18, и по одному наблюдаемому случаю сбоя из открытого репозитория Google.

Что покупает пользователь: доступ или обещание?

«Есть ключ» и «есть обещание»— не одно и то же: первое про техническую готовность, второе про продуктовую. Получить api key veo можно за пять минут: оформить доступ, вызвать модель, убедиться, что запрос проходит. Но это ещё не обещание пользователю. Пока нет ответа на три вопроса, что показывать при долгой задержке, что показывать при ошибке и что делать после сбоя, функция не имеет проверяемого контракта.

По общему запросу api veo люди чаще всего попадают на техническую документацию: она отвечает, как вызвать модель, но не отвечает, что произойдёт, если фильтр безопасности заблокирует именно этот промпт. Тот же разрыв виден и в запросе veo api: он уже ближе к интеграции, но по-прежнему не про сценарий отказа.

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

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

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

Генерация видео через veo 3.1 api асинхронна. По документации Gemini API вызов generate_videos() возвращает объект длительной операции с флагом done, и клиент обязан опрашивать operations.get(), пока флаг не станет истинным; только тогда результат читается из operation.response. Официальный пример опрашивает каждые 10 секунд. Это не деталь бэкенда: это причина, по которой у ожидания должен быть отдельный экран с честным сообщением, а не бесконечная анимация.

Насколько долгим бывает ожидание, документация говорит прямо: минимум 11 секунд, максимум 6 минут в пиковые часы. Проектировать экран ожидания нужно под худший случай в несколько минут, а не под мгновенный ответ. Пользователь, которому обещали видео за пару секунд, на третьей минуте решит, что всё сломалось, и уйдёт, хотя генерация в этот момент идёт штатно.

import time from google import genai client = genai.Client(api_key=API_KEY) # запуск: операция асинхронная, сразу видео не будет operation = client.models.generate_videos( model="veo-3.1-generate-preview", prompt="...", ) # ожидание: опрашиваем, пока done != True # официальный пример опрашивает раз в 10 секунд while not operation.done: time.sleep(10) operation = client.operations.get(operation) # результат читаем только после done == True video = operation.response.generated_videos[0]

Здесь же первое правило хранения. Google хранит сгенерированное видео максимум 2 дня. Любое обещание вроде «скачаешь позже» или «вернись за роликом завтра» должно учитывать это окно: через двое суток ссылки уже нет, и если файл не сохранён на своей стороне, обещание оказывается пустым. В storyboard это отдельный узел, а не сноска мелким шрифтом.

И ещё одна честность про версии. Через Gemini API доступны варианты veo-3.1-generate-preview, veo-3.1-fast-generate-preview и veo-3.1-lite-generate-preview. Стандартный, fast и lite на момент доступа документированы как preview, а не как general availability. Статус preview означает, что эндпоинты, идентификаторы моделей и поведение, включая задержку, могут измениться до общего релиза, поэтому условия доступа перепроверяются прямо перед интеграцией, а не берутся из статьи полугодовой давности.

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Сколько это стоит и когда с тебя не спишут

У Veo нет бесплатного тарифа: нужен платный уровень, а цена считается посекундно и отдельно для каждого варианта и разрешения. По документации о ценах Gemini API Veo 3.1 standard стоит $0.40 за секунду в 720p и 1080p и $0.60 за секунду в 4K, Fast — $0.10–0.30 за секунду, Lite — $0.05–0.08 за секунду (данные подтверждены на момент доступа 2026-07-18). Общая формулировка api veo 3 не говорит, какой именно вариант и какое разрешение имел в виду человек, а цена между ними отличается в разы.

Хорошая новость встроена в биллинг. Google прямо указывает: пользователя спишут только при успешной генерации, и отдельно отмечает, что проблема с обработкой аудио может помешать генерации. То есть отвалившаяся или отфильтрованная попытка — документированный неоплачиваемый исход, а не тихое списание. Экран ошибки обязан это показывать прямым текстом: «Не получилось, деньги не списаны» снимает половину тревоги пользователя.

Тарифная развилка— это ещё и продуктовая развилка: Lite дешевле standard в разы, и если обещание пользователю звучит как «быстрый черновик», логично считать его именно в дешёвом варианте, а дорогой standard оставлять на финальный рендер. Запрос veo3 api купить встречается у людей, которые уже готовы платить, но пока не знают, за какой путь ожидания и отказа отдают деньги: это тот самый читатель, ради которого и нужен storyboard.

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Ошибка, которая проходит со второй попытки

Самое недооценённое состояние— не отказ сервера, а срабатывание фильтра. Документация Vertex AI об ответственном ИИ подтверждает: промпты и результаты Veo проверяются категориями безопасности (насилие, сексуальный, уничижительный, токсичный контент), и заблокированная генерация может проявиться либо явной ошибкой вида «The prompt couldn't be submitted or it might violate our policies», либо меньшим числом роликов, чем запрошено, с кодом сработавшей категории. «Результат» и «ошибка» здесь не бинарны: можно запросить четыре ролика и честно получить два.

Дальше начинается неприятное. В issue репозитория js-genai зафиксировано, что аудио-фильтр безопасности Veo 3.1 даёт недетерминированные ложные блокировки: один и тот же промпт с той же картинкой падает, а затем проходит. Репортеры пишут, что повтор точно того же запроса три-пять раз обычно даёт хотя бы один успех. Это пользовательское наблюдение в репозитории Google, а не официальное заявление о штатном поведении, но оно операционно оправдывает кнопку повтора: одиночный сбой не обязательно окончателен.

Тот же тред закрыт мейнтейнерами со статусом «not planned», без предметного исправления. Недетерминированность фильтра стоит считать не временным багом, который вот-вот починят, а устойчивым условием, под которое проектируется продукт. И это не повод обобщать: из одного issue нельзя выводить общую надёжность Veo по всем промптам, регионам и датам, это конкретный наблюдаемый паттерн, а не гарантия.

Отсюда правило повтора для storyboard: после ошибки фильтра пользователю не показывают тупик, а предлагают повторить, но с ограничением числа попыток и честной подписью, что деньги списываются только за успешную генерацию. Повтор без счётчика превращается в дорогую петлю, повтор без объяснения выглядит как поломка продукта. Ни то ни другое не стоит продавать как обещание.

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Доступ — это не одно условие

Прежде чем платить за генерацию, стоит уточнить, что доступ к Veo не единый. Обзорная документация Vertex AI описывает доступ к Veo как часть более широкой поверхности Vertex AI Generative AI: через проект Google Cloud с включённым Vertex AI. Это отдельный путь от доступа по ключу через Gemini API. Порядок слов в запросе veo 3 api не меняет сути: интеграцию всё равно приходится проверять отдельно для каждого из двух путей, а не считать их одинаковыми по умолчанию.

С лимитами похожая неопределённость. Страница о лимитах Gemini API не публикует фиксированных чисел RPM и конкуррентности: они зависят от тарифа и проверяются в живом дашборде Google AI Studio по конкретному аккаунту. Кто ищет запрос google veo api, обычно хочет попасть на первоисточник, а не на пересказ через сторонний блог, и это правильный инстинкт: конкретные цифры лимитов из сторонних материалов проверенным фактом не являются, любое допущение о параллельности запросов остаётся гипотезой, пока лимиты не проверены по своему аккаунту.

Для российской команды к этим двум развилкам добавляется третья: оплата. У Google своя платёжная модель, и вопрос, чем и как платить, встаёт раньше, чем вопрос UX. Если нужен именно Veo, storyboard ожидания и ошибки всё равно придётся закрывать по документации выше. Если же важна не конкретно эта модель, а рабочая генерация видео из России, у части команд решением становится отдельный медиасервис: например, в provod.ai есть собственный видеоредактор и генерация видео, доступ к которым оплачивается рублём, картой, через СБП или по счёту, без зарубежной карты и VPN. Это самостоятельный продукт со своим сценарием, а не переупаковка Veo, и выбор между ними определяется тем, какое обещание удобнее держать перед пользователем.

Ниже собранный storyboard состояний с правилом продукта на каждое. Его стоит утвердить до вопроса о доступе.

  • Состояние: Запуск • Что видит пользователь: «Отправлено, генерация началась» • Правило продукта: Операция асинхронная, результата сразу нет
  • Состояние: Ожидание • Что видит пользователь: Прогресс и таймер до 6 минут • Правило продукта: Опрос каждые 10 сек, экран, а не спиннер
  • Состояние: Ограничение • Что видит пользователь: «Много запросов, встали в очередь» • Правило продукта: RPM неизвестен заранее, проверяется по аккаунту
  • Состояние: Ошибка фильтра • Что видит пользователь: Понятное сообщение и причина • Правило продукта: «Списания нет», без формулировки вины пользователя
  • Состояние: Повтор • Что видит пользователь: Кнопка с лимитом попыток • Правило продукта: 3–5 попыток оправданы наблюдением, но со счётчиком
  • Состояние: Результат • Что видит пользователь: Видео и явное «скачай сейчас» • Правило продукта: Хранение максимум 2 дня, файл нужно забрать себе

Границы storyboard: доступ, версия, доверие, инфраструктура

Storyboard не подтверждает доступность Veo и не заменяет проверку региональных условий. Он описывает, что пообещать пользователю, но не гарантирует, что модель доступна именно сегодня и именно в конкретном регионе: персонажные и региональные ограничения Google меняет без анонса, их читают на актуальной странице политики перед интеграцией, а не в статье.

Он не отменяет проверку версии: veo-3.1 в статусе preview может измениться по эндпоинтам, идентификаторам и поведению до общего релиза. Дата ревалидации условий в этом разборе — 2026-07-18, и её нужно переставить перед реальным запуском.

Он не измеряет доверие пользователя. Гипотеза, что понятная деградация (сообщение об ожидании, честный текст ошибки, кнопка повтора) улучшит управляемость ожидания, выглядит разумной, но остаётся гипотезой: первого замера ещё нет, storyboard — проектный метод, а не готовое доказательство.

И он не заменяет инфраструктуру. Ни один внешний сервис, включая provod.ai, не подменяет платформы автоматизации, GigaChat, приватный или on-prem контур, функции из чужих подписок и работу по внедрению. Решение об интеграции стоит принимать в таком порядке: сначала утвердить storyboard состояний, потом проверить актуальные условия доступа и региональные ограничения по официальной документации, и только после этого открывать платный доступ.

FAQ

Можно ли показать пользователю только успешную генерацию и пропустить экран ошибки? Технически да, продуктово нет. Без сообщения об ожидании, честного состояния ошибки и правила повтора у функции нет проверяемого обещания. Фильтр Veo даёт недетерминированные блокировки, и молчание в этот момент читается как поломка.

Сколько ждать, прежде чем показывать таймаут? Ориентир — документированный максимум: 6 минут в пиковые часы по документации Gemini API. Порог таймаута ниже этого значения будет прерывать штатные, но долгие генерации.

Спишутся ли деньги за отфильтрованную попытку? По правилу биллинга Google — нет: списание идёт только за успешную генерацию, а сбой аудиообработки прямо назван причиной неоплачиваемого неуспеха. Это стоит писать прямо в сообщении об ошибке, а не оставлять пользователя гадать.

Значит ли готовность заплатить, что можно продавать доступ без storyboard? Нет. Готовность платить не заменяет ответа на вопрос, что человек увидит при долгом ожидании или отказе. Пока эти состояния не описаны, продавать пользователю нечего, кроме неопределённости.

Veo API перед покупкой генерации: какой UX выдержит ожидание и ошибку

Если storyboard закрыт и вопрос уже не в конкретно Veo, а в том, где команде из России держать генерацию видео, у provod.ai для этого есть отдельный видеоредактор, а доступ к генерации оплачивается рублём — картой, через СБП или по счёту, без зарубежной карты и VPN. Выбор конкретного сервиса не отменяет того же вопроса, что и storyboard выше: какой путь ожидания и отказа получит пользователь на экране, а не только какая модель стоит за кнопкой.

Источники

  • Google AI for Developers, Gemini API docs (Veo), доступ 2026-07-18: асинхронная операция и опрос, диапазон задержки, статус preview, срок хранения видео 2 дня.
  • Google AI for Developers, Gemini API pricing, доступ 2026-07-18: отсутствие бесплатного тарифа, посекундные цены, списание только при успехе.
  • Google AI for Developers, Gemini API rate limits, доступ 2026-07-18: лимиты RPM зависят от тарифа и проверяются в дашборде AI Studio.
  • Google Cloud, Vertex AI responsible-AI docs, доступ 2026-07-18: категории фильтрации, текст ошибки политики, меньшее число роликов.
  • Google Cloud, Vertex AI overview, доступ 2026-07-18: доступ через Vertex AI отдельно от Gemini API.
  • GitHub, googleapis/js-genai, issue 1272, доступ 2026-07-18: недетерминированные блокировки аудиофильтра, повтор и статус not planned.

provod.ai — выбирайте по результату, а не по сложности доступа

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

В одном каталоге — актуальные модели для текста и медиа: GPT от OpenAI, Claude от Anthropic, Gemini от Google, Grok от xAI, DeepSeek, Qwen, GLM, Kimi и MiniMax; для изображений — Nano Banana 2 Pro и GPT Image; для видео — последние версии Seedance, Kling, Veo и Google Omni. Также доступны модели для reasoning, поиска, документов, эмбеддингов, музыки и аудио.

Сравнение остаётся честным по цене: каждый вариант считается 1:1 по официальному тарифу провайдера, без собственной надбавки provod.ai.

1