Задача
У видеосервиса скопились петабайты роликов без тегов и описаний. Что внутри — не знал никто, архив лежал мёртвым грузом.
Заказчик хотел разметить всё: сцены, объекты, теги, дубликаты. Лобовой прогон на выделенных видеокартах занял бы месяцы и стоил как чугунный мост.
Подход
Архив порезали на короткие сегменты, их параллельно обрабатывали сотни машин. Разметку делало компьютерное зрение — нейросети, которые распознают, что происходит в кадре.
Считали на прерываемых облачных видеокартах: облако сдаёт их со скидкой, но может забрать в любой момент. Конвейер переживает это штатно — обрыв машины не теряет посчитанного. Срочное шло на стабильных серверах, основной объём — на прерываемых.
Стек
Kubernetes · Ray · NVDEC · object storage · spot GPU + Argo
Результат
Впервые за годы в архиве можно ориентироваться. Час обработки обошёлся на 63% дешевле, чем на выделенных видеокартах.