Kling 4.0 через API стал считать 1080p вместо 720p
Команда агрегатора Aigena заметила в Kling 4.0 неприятную особенность: при оживлении фото модель могла сама выбрать 1080p и выставить более высокий счёт, даже если пользователь просил 720p. Разбор полезен тем, кто подключает видеогенерацию в продукте и не хочет случайно переплачивать за каждый ролик.
Как нашли проблему в Kling 4.0
Aigena подключает новые видеомодели почти сразу после релиза, поэтому Kling 4.0 от Kuaishou начали тестировать через API уже в конце октября 2026 года. Спецификация у провайдера сначала была неполной, поэтому разработчики проверяли поведение модели простыми пробными запросами и смотрели, какие ошибки возвращает API.
Так выяснили базовые правила Kling 4.0: есть два уровня качества — 720p и 1080p, поддерживаются четыре соотношения сторон, длительность ролика может быть от 3 до 30 секунд, а отдельного параметра resolution у модели нет. Звук тоже нельзя отключить через старый параметр providerSettings.klingai.sound — в этой версии он генерируется всегда.
Почему это опасно для продукта и бюджета
Проблема всплыла на оживлении фото. В старой логике для других видеомоделей размеры часто не передавались, чтобы не ломать пропорции кадра. Но у Kling 4.0 одна модель отвечает сразу за все качества, и если не указать ширину и высоту, она может сама решить рендерить в 1080p. Именно это и произошло в тесте: пользователь видел цену 720p, а провайдер считал генерацию как 1080p.
Для сервиса это риск двойной: клиенту обещана одна цена, а фактическая себестоимость выше. В статье приводят пример, когда разница могла бы сделать ролик примерно в полтора раза дороже ожидаемого. Дополнительно команда заметила, что реальная стоимость через API оказалась ниже прайса на странице модели, поэтому расходы они проверяют не по витрине, а по полю cost в ответе API.
Что изменили в коде и как проверяют ролики теперь
Чтобы не сломать поведение других моделей вроде Seedance, Wan и Kling 3.0, логику не переписывали целиком. Вместо этого в настройках модели появился отдельный флаг dimensions_with_frames: он говорит, нужно ли передавать размеры вместе с кадрами. Для Kling 4.0 это важно: без явных width и height модель может выбрать максимальное качество сама.
Перед тем как открыть модель пользователям, команда прогнала все сочетания сценариев через тот же серверный код: текст и фото, 720p и 1080p, разные пропорции. После этого они ещё и автоматизировали проверку готовых роликов: размер, стереозвук, время склеек и совпадение звука с действием смотрят через ffprobe и ffmpeg, не открывая видео в плеере. Это экономит время и помогает быстро ловить ошибки в продакшене.