Это разработка питерская: топ технологий ВКонтакте за 2021 год

Уже 15 лет мы развиваем ВКонтакте в духе времени — и сейчас время требует качественного видео, высоких скоростей и ML-технологий.

Если в 2006-м было нормой загружать ролик 240p полчаса, то сейчас стриминговые сервисы предлагают контент в разрешении 4К и конкурируют за доли секунды. 2021 год был богат на технологические решения, которые родились внутри команды, — рассказываем о некоторых из них в статье.

Ускорили ВКонтакте на базе QUIC и расширенной сети доставки контента

Заметнее всего в метро или на Дальнем Востоке

Думать про слабые сети в эпоху появления 5G на первый взгляд может показаться странным. В крупных городах привыкли, что почти повсеместно ловит 4G. Но на самом деле даже 3G есть далеко не везде — и его уже недостаточно для быстрой работы многим сервисам.

Зона покрытия сотовой связью 3G в России на февраль 2019 г. Все операторы
Зона покрытия сотовой связью 3G в России на февраль 2019 г. Все операторы

До внедрения QUIC мы замеряли время появления картинок в Санкт-Петербурге (где находится наша штаб-квартира) и в Петропавловске-Камчатском. Выяснили, что четверть пользователей с Дальнего Востока могут замечать задержку загрузки изображений от 933 мс — это почти целая секунда. Deloitte заявляет, что ускорение времени загрузки страницы всего на 100 мс может увеличить конверсию на 8%. Конечно, и мы ВКонтакте боремся за каждые 100 мс, чтобы пользователи тратили как можно меньше времени на ожидание и проводили свои миллисекунды продуктивно.

Поэтому в сентябре ВКонтакте первой среди крупных сервисов в России переехала на новый интернет-протокол QUIC — и доставка контента ускорилась в два раза. Это значит, что обмениваться фотографиями и другим контентом в соцсети теперь получается гораздо быстрее. Даже при слабом интернете, например на даче, в метро или в регионах, где далеко не везде ловит 4G.

Один из первых наглядных тестов: мы запустили QUIC на iOS, включили 3G-интернет и посмотрели, как это работает

Люди, у которых не очень хороший интернет и которые из-за этого в принципе не очень активно пользуются интернет-сервисами, стали смотреть ВКонтакте на 10% больше контента.

Продолжая битву за скорость, мы расширили свою геораспределённую сеть доставки контента (Content Delivery Network, или CDN). Cейчас она включает в себя больше 50 узлов — серверов, которые расположены в разных точках России и мира, — как можно ближе к пользователю, чтобы он получил быстрый доступ к видеоконтенту. Благодаря этому решению видео и трансляции ВКонтакте стали стартовать в среднем в 1,5 раза быстрее. На Юге России с использованием CDN загрузка начинается на 10–20% быстрее, чем без, в Сибири — на 30–50%, а на Дальнем Востоке видео стартует в два раза быстрее, чем если бы его пришлось скачивать с центрального сервера.

Сделали звонки без ограничений

Без лимитов по времени, платных функций или ограниченного числа участников

Звонки ВКонтакте на 128 человек появились ещё в 2020 году — в разгар пандемии, когда вся команда работала удалённо. В середине 2021-го максимальное число участников увеличилось до 2 048, а недавно мы полностью сняли лимиты на количество присутствующих — первые в мире. При этом все собеседники могут видеть и слышать друг друга, а не только смотреть трансляцию. Незаменимая функция, чтобы собрать в звонке совещание со всеми сотрудниками компании или устроить встречу выпускников.

Создать сервис звонков — амбициозная задача со множеством сложных моментов. Задержки передачи данных в звонках могут портить жизнь больше, чем при загрузке изображений. Люди начинают перебивать друг друга и сбиваться — не хотелось бы столкнуться с чем-то подобным на важной деловой встрече или экзамене. Особенно актуальной эта проблема становится, когда в конференции много участников. Поэтому мы с особым вниманием отнеслись к оптимизации звонков и при выборе любых решений думали об их влиянии на передачу данных — даже написали об этом целую статью.

В первую очередь снять ограничения на число участников помогла технология горизонтального масштабирования звонка. Транскодирование видео в разные разрешения, обработка аудио, а также работа нейросетей (например, для шумоподавления) происходит независимо. Таким образом большой звонок можно масштабировать на сколько угодно серверов, а не ограничивать количество участников производительностью одного сервера — это ликвидирует все потенциально узкие места системы.

Измерение задержки в интерьерах Дома Зингера: снимаем секундомер, фотографируем вместе экраны с исходящим и входящим видео
Измерение задержки в интерьерах Дома Зингера: снимаем секундомер, фотографируем вместе экраны с исходящим и входящим видео

А ещё на помощь пришла CDN-сеть, которая уже упоминалась выше. Дело в том, что из-за особенностей работы операторов может получиться так, что звонок двух абонентов во Владивостоке может пойти через Москву. Чтобы починить это для наших пользователей, мы установили конференц-серверы, которые напрямую соединяем с разными операторами. За счёт этого мы можем запустить звонок во Владивостоке через Хабаровск или хотя бы Новосибирск — задержка наверняка будет меньше, чем через Москву.

Избавились от лишнего шума в звонках

Чтобы пользователи могли сосредоточиться на главном

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

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

Это разработка питерская: топ технологий ВКонтакте за 2021 год

Улучшили качество видео, создав технологию NeuroHD

Даже старых роликов, снятых много лет назад

Мы заметили, что фильтр «Высокое качество» становится всё популярнее в поиске по видео, и разработали собственную технологию NeuroHD. С её помощью можно двукратно повысить разрешение, восстановить детали и убрать появившиеся после сжатия шумы и дефекты на видео.

За время существования видеораздела ВКонтакте люди загрузили миллионы своих роликов. Многие из них завирусились и стали культовыми, их пересматривают до сих пор. Правда, в 2021 году то, что было снято ещё на какой-нибудь Sony Ericsson K750, больше напоминает размытые двигающиеся пиксели. NeuroHD поможет смотреть в лучшем качестве и любительский контент, и профессиональные ролики. В будущем высокое разрешение получит весь контент библиотеки VK Видео — а это свыше 250 миллионов видео в год, 80% из которых загружают сами пользователи социальных сетей.

Журналисты TJ <a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Ftjournal.ru%2Ftech%2F490049-tj-uluchshil-kachestvo-staryh-memnyh-video-s-pomoshchyu-neyroseti-vk-piterskaya-razborka-teper-v-novom-razreshenii&postId=341631" rel="nofollow noreferrer noopener" target="_blank">тестировали</a> технологию на старых мемах. Питерская разборка стала чётче
Журналисты TJ тестировали технологию на старых мемах. Питерская разборка стала чётче

Прокачали поиск по видео

Чтобы было проще найти нужный ролик в море контента

Новая рекомендательная система для видео ВКонтакте учитывает тысячи сигналов и в реальном времени строит персональный топ роликов — чтобы пользователи получали именно то, за чем пришли на платформу. Это может быть лёгкое кино на вечер или образовательные курсы — в любом случае рекомендации помогут не тратить время на поиск релевантного контента. При этом для поиска и просмотра видео не обязательны регистрация и авторизация ВКонтакте.

Чтобы точнее подстроиться под интересы пользователя, система рекомендаций опирается и на ручную разметку видео по жанрам, и на автоматическую — нейросетевую. Разработчики ВКонтакте научили модель различать более 1 000 категорий: например, видео со спортивных соревнований получает не просто тег «спорт», а помечается как конкретный вид — футбол, хоккей или, скажем, верховая езда. Кроме того, с помощью собственной технологии распознавания лиц ВКонтакте умеет предлагать пользователю посмотреть видео с участием его любимых знаменитостей.

Это не интерфейс, это иллюстрация, чтобы наглядно показать идею
Это не интерфейс, это иллюстрация, чтобы наглядно показать идею

А чтобы пользователю не наскучил просмотр и он всегда смог найти что-то под настроение, при построении рекомендаций большое внимание уделяется разнообразию выдачи. Вкладка «Для вас» в разделе с видео ВКонтакте никогда не будет однообразной: с роликами только из пары категорий или клипами одного артиста. Этого помогают избежать умные алгоритмы ранжирования и ИИ-технологии распознавания лиц и сюжетов. Также в список персональных рекомендаций деликатно добавляются новые виды роликов. Благодаря этому пользователь постепенно знакомится со всем разнообразием доступного ВКонтакте контента, находит новые интересы и подаёт рекомендательной системе новые сигналы, что в результате делает выдачу ещё более точной.

Научили нейросеть определять угрозы и оскорбления

И сделали фильтр для администраторов сообществ, помогающий автоматически удалять такие комментарии

ВКонтакте сотни тысяч сообществ разной тематики: от абстрактных мемов и уродливых растений до фанатских комьюнити и пабликов мировых брендов. В каждом своя атмосфера, которую поддерживают сами подписчики и админы. У владельцев сообществ есть целый набор инструментов для модерации: например, фильтры по нецензурным выражениям и ключевым словам (их выбирают сами админы).

В этом году мы запустили ещё один — фильтр враждебных высказываний. Хоть угрозы в комментариях часто не несут реальной опасности, они создают агрессивную атмосферу в паблике и порой могут провоцировать на насилие в офлайне. Мы сделали фильтр, который автоматически удаляет угрозы: например, пожелания смерти или обещания причинить вред здоровью. Администратор сообщества может включить и выключить его в любой момент, а ещё посмотреть все отсеянные комментарии, восстановить любой из них или отправить автора в чёрный список.

Подсказка, где найти фильтр в настройках сообщества
Подсказка, где найти фильтр в настройках сообщества

Для создания алгоритмов, которые хорошо понимают разговорную речь, использовалось большое количество текстов на русском языке — например, субтитры из фильмов, сериалов и видео. Нейросеть содержит специальный механизм внимания, позволяющий принимать решения на основе важности слов и их комбинаций. Разработчики изучают логику принятия решений алгоритмами — это позволяет исправлять ошибки, учитывать контекст и эффективнее обучать нейросети. Уже на момент запуска алгоритмы правильно определяли угрозы в 80% случаев, и команда продолжает работать над их улучшением.

Это далеко не все технологии, которые появились ВКонтакте в 2021 году. Мы успели гораздо больше, например:

  • Создали автоматические субтитры на русском языке. Эта технология автоматически генерирует текст, распределяет его по кадрам и синхронизирует с произнесённой фразой. Главное отличие от других решений в том, что наше умеет проставлять в субтитрах знаки препинания и заглавные буквы, а в ближайшем будущем научится разделять речь разных спикеров на реплики.
  • Открыли SDK VK звонков для разработчиков. Это готовый набор инструментов от ВКонтакте, чтобы создать голосовые и видеозвонки в своём IT-продукте — в веб-версии и в мобильных приложениях.
  • Запустили автоматический перевод текста в публикациях на русский, английский и другие языки — да-да, опять с помощью нейросетей.
  • Ещё мы прокачали AR-технологии: в звонках — для возможности ставить виртуальный фон (в том числе и в веб-версии), а в клипах — для создания новых эффектов, например масок для котов.
  • И многое другое :)

Больше цифр и фактов об итогах этого года смотрите в специальном разделе: vk.com/2021.

2525
61 комментарий

Комментарий недоступен

35
Ответить

А ты можешь объективно сказать, что не так с вк с точки зрения функционала?
Отбросим все эти кукареки насчёт конфиденциальности, ибо её нигде нету, это очевидно, а оценим именно продукт, что не так?

7
Ответить

А что им делать? Хуёвая репутация, ну значит бросить всё и сидеть, смотреть как падает курс акций?

4
Ответить

Скорее всего там обычные работяги стараются из-за всех сил и внедряют всякие улучшения: рекомендательные системы, CDN, нейросети и прочее. О доверии людей почему то никто не думает.

Не знаю читают ли они эти обсуждения или нет. Но как по мне, правильные направления, чтобы попытаться вернуть доверие и интерес:

1) Усилить приватность данных и отгородиться от товарищей майоров: убрать API, через которое любой может парсить данные групп и пользователей и находить в них *слова, за которые человека могут привлечь. Добавить возможность, чтобы каждый человек мог скрывать то, что он выложил какую-то песню или видео (когда ищешь через поиск видео всегда виден кто опубликовал - вот это скрывать по желанию автора). Все запросы от правоохранительных органов пропускайте через максимальную долгую и сложную бюрократию и каждый год отчитывайтесь перед всеми сколько запросов пришло за год со статистикой по регионам и по преступлениям, а так же сколько ответов и сколько отказов. Так у них отпадет желание делать палку на халяву.

2) Начните реально давать зарабатывать администраторам сообществ. Давайте им трафик. У них не сходиться экономика. Тут уже много раз писали, что вашими нововведениями вы планомерно добились того, что администраторы многих миллионных сообществ получают гроши. Поэтому все ушли делать контент в телеграмм. Насколько я понимаю, вы думаете о своей выручке в ущерб создателям контента.

3) Кто-то что-нибудь добавит еще?

3
Ответить

Комментарий недоступен

22
Ответить

Комментарий недоступен

6
Ответить

Смешно читать про технологии. С каждым годом все хуже и хуже. Юзабилити страдает, кнопки летают с места на место. Куча ботов и спама. Прямые трансляции стали помойкой, где крутятся записи разводы ботов.
Сплошные тормоза. Видно, что разработчики просто работают лишь для того, чтобы получить зарплату и пойти домой.

6
Ответить