Оффтоп Дима Рыбальченко
5 419

Как мы делали нейросеть для прогнозов на TI 8, батлили с GOSU, схватили бан на Reddit, и чем это всё закончилось :D

В закладки

Если кто вдруг не в курсе, то недавно завершился крупнейший турнир по Dota2, The International 8, на котором сошлись лучшие команды со всего мира в борьбе за почёт, уважение и 25 000 000 долларов.

Moremmr.com как проект посвященный Dota2 сие событие проигнорировать не могли. И за месяц до турнира начали клепать тематический контент в соц. медиа, закидывать соответствующую инфографику на Reddit и сайберспорт и т.п. Однако, наша радость была бы неполной, если б мы не попробовали сделать что-то помасштабнее. В итоге, мы решили запустить конкурс прогнозов с призами и собственную машину предсказаний, собрать 100500 миллионов трафа и быть довольными собой. Однако, все вышло немного не так....

Откуда взялась идея делать нейросеть с предсказаниями матчей и зачем она нам вообще нужна?

На самом деле, нейросеть у нас уже была. Но давайте обо всём по порядку...

Автоматический анализ ошибок игроков

Первой нашей аналитической разработкой стал сервис “Анализ матчей“, который автоматически находит ошибки в матчах наших пользователей.

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

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

Всего в месяц нашей платформой анализируется более 10 000 000 игр пользователей (Статистика за Июль)

Например, вот анализ ошибок одного из наших сммщиков

“Мама, смотри, я Миракл” или “Сеть вторая”

В прошлом году у GOSU зашла фишка, которую они делали для Epicenter XL: они показывали, на кого из игроков турнира ты похож. Мы подумали: а чем мы хуже? И запустили собственный сервис сравнения с PRO, только уже под TI8 ( а потом и вовсе решили интегрировать в продукт, так что теперь это постоянно обновляемая фича в “анализе матчей”)

Так родился сервис “Кто ты из ПРО-игроков?”. Пользователь загружает игру, мы сравниваем её с играми PRO и выдаем результат типа “каким полководцем ты был в прошлой жизни :D”

Мы взяли игры участников предстоящего TI8 и топ-50 команд по рейтингу ЭЛО. Всего в сравнении участвует 200 PRO-игроков, при этом было выгружено около 100 000 матчей PRO-игроков (включая паблик игры, дабы увеличить выборку).

Сравнение строится на двух группах параметров:

  • Финальная статистика игрока: KDA, GPM, XPM, общяя ценность и т.д. - Мы включили их в выходной вектор признаков.
  • Финальный закуп. Чтобы корректно сравнить два закупа, отдельно обучили нейросеть, перегоняющую айтем билд в числовой вектор, и уже он включался в финальный вектор признаков. На выходе получили вектор размерности ~30.
Пример анализа похожести

Данная функция развлекательная, однако пользователь может посмотреть, чем отличалась его игра от ПРО, сделать выводы, которые улучшат его игру.

Самый лучший Оракул на MoreMMR

С вышеизложенным багажом мы принялись создавать нашу машину прогнозов.

Собственно, если кратко, то было выгружено порядка 2 000 матчей с официальных турниров. Модель обучалась предсказывать вероятность победы по определенным показателям матча. Учитывались как и командные взаимодействия, так и индивидуальные показатели каждого игрока.

Страница прогнозов moreMMR-AI и конкурса.

Итак, у нас есть:

  • AI, который предсказывает все результаты плей-офф.
  • конкурс среди подписчиков, которые соревнуются как с AI, так и между собой за призы ( кстати, спонсорам огромное спасибо, очень оперативно и с энтузиазмом к нам присоединились ФОНБЕТ, Warp и HyperX)
  • Ну и вполне себе рабочий маркетинг, для вовлечения широких масс :D

Дальше началось веселье!))

Аудитория moremmr.com с энтузиазмом отправилась предсказывать исходы, обсуждать это в социалках и т.п. А вот с новыми пользователями всё сложилось драматичнее, ВК и ФБ однозначно трактовали наш спецпроект как “беттинг” и блочили рекламу.

Что ж, не мытьем так катаньем, подумали мы, выделив лишних Аркан для конкурсов репостов, нагрянули в дискорд, на форумы и т.п., а безотказно работающий ютюб резко опустел и в разы просел по просмотрам. Тут спас существенно выросший CTR, что не мудрено, реальные призы на халяву мотивируют невероятно :D

Чего-то не хватает верно? Верно. Не хватает Redditа, где в канале Dota2 обитают полмиллиона дотеров. И мы, наточив перья, принялись строчить призывные посты про наш AI и конкурс.

Как я встретил вашу GOSU...

И вот, мы релизим первый пост. Мол, “роботы против людей, люди против друг друга”, AI от MoreMMR и конкурс...Все умеренно хорошо, тред понемногу растёт, а главное, не получает вагон негатива ( это победа :D ).

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

Что ж, дней в TI 8 много, мы что-нибудь придумаем….

На следующий день случилось эпохальное :D, наш прогноз оказался немного лучше, чем у ГОСУ, т.е. первый день мы выиграли))) О чём не преминули написать, а также сделать это раньше “конкурентов”. Естественно, наше неравнодушное корпоративное комьюнити и подписчики нагрянули в тред, да и сторонние разгоряченные геймеры уже участвовали в обсуждении. Что привело нас уже в топ-10. :D

В общем, за пару дней задача с освещением нашего AI и конкурса переросла в заочное соревнование с ГОСУ и по точности прогнозов, и по медийности)

День третий. К успеху шли, не фартануло

Что ж, окрыленные успехом мы настрочили очередной прогноз/вывод по предыдущему дню и пошли на штурм Redditа….И всё было хорошо...пока не стало плохо. Вечер был томным, тред выполз на 11 место, а Reddit закатал бан на наш акк и всех причастных (и не очень) приписал туда же :(( А так хорошо всё начиналось.

Формулировка была понятна: “за манипулирование голосами и т.п.”. Да и объяснялась просто - особым рвением команды и друзей, которые орудовали в комментах с едва зареганных аккаунтов. Под горячую руку попал даже наш Santa (участник The International 2011, стример), у которого, как оказалось, пустой акк, с которого он “только читал”. Усугублялось всё импульсивным финальным комментом, в котором нас распяли за то, что “мы каждый день переделываем прогнозы, дабы показать, что они на 100% верные” ( и это в теме с содержанием типа “мы угадали 3 из 5, и теперь даём новый прогноз на следующий день”).

Что ж, сутки в переговорах с Reddit, и клеветнический коммент был удалён. Однако, баны остались. С тех пор никакого ТОПа нам не светило ( надеюсь, что этот пост изменит ситуацию :) ).

Мы потеряли аккаунт, но не честь!

Засунув все свои претензии и недовольство куда поглубже (а злиться, по сути, было не на кого, кроме себя самих, хотели-то как лучше), мы атаковали Твиттер своими прогнозами, начав, помимо постинга, активно продвигать предсказания нашего AI под теми постами, где это было уместно.

Разумеется, охвата было поменьше, но тем не менее интерес к подобным прогнозам остался. Нам и самим было интересно, чем это все закончится.

По точности прогнозов закончилось все неплохим камбеком от наших конкурентов. Перед последним днем обе нейросетки шли ноздря в ноздрю, у обоих искусственных интеллектов было по 12 угаданных матчей из 20. Однако в последний день наш AI сделал ставку на Evil Geniuses, в то время как машинка наших оппонентов предсказала победу PSG в нижней сетке и победу OG в финале.

Душой мы конечно были за N0tail и компанию, нам всегда приятно видеть, как побеждают андердоги, на которых никто не ставил. Однако наш AI был уверен, что EG сделали выводы после поражения от OG в верхней сетке и что “Злым Гениям” под силу выиграть The International во второй раз.

Итоги битвы AI:

  • Автоматический анализ ошибок игроков MoreMMR AI: 12/22 верных предсказаний
  • GOSU.AI: 14/22 верных предсказаний

Не смотря на то, что технически наш AI проиграл битву в напряженной войне, нашу команду это абсолютно не расстроило.

Во-первых, данный баттл AI изначально задумывался как развлечение, и развлеклись мы порядочно))).

Во-вторых, у нас появился отличный задел на будущие турниры и новый опыт.

В-третьих, за нашими прогнозами следило более 250 000 человек, а в конкурсе поучаствовало 6000+ участников.

Оказалось, что наш AI способен предсказывать ничуть не хуже “этих жалких людишек” (смеется как робот Вертер). Сам факт, что среди 6 000 живых участников конкурса прогнозистов наш AI занял почетное 12 место, говорит сам за себя.

АУТРО

В общем, мы тут подумали и решили продолжать. Впереди нас ( и вас) ожидают не менее яркие и захватывающие турниры, так почему бы и не продолжить битву?

Так что, GOSU, BING, и другие желающие с наличием AI, давайте запустим уж официальную битву роботов-прогнозистов?!

Например, в октябре стартует очередной ESL One Hamburg...В пору уже посадить роботов за обучение ! ;):)

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Дима Рыбальченко", "author_type": "self", "tags": [], "comments": 69, "likes": 51, "favorites": 1, "is_advertisement": false, "subsite_label": "flood", "id": 44754, "is_wide": false, "is_ugc": true, "date": "Fri, 31 Aug 2018 17:33:06 +0300" }
{ "id": 44754, "author_id": 15969, "diff_limit": 1000, "urls": {"diff":"\/comments\/44754\/get","add":"\/comments\/44754\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/44754"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 199791 }

69 комментариев 69 комм.

Популярные

По порядку

Написать комментарий...
15

Привет из GOSU.AI, ребят. Интересный пост, спасибо.
Нам очень лестно, что вы неровно дышите ко всем нашим активностям. К примеру в данной статье GOSU упоминается 7 раз, а moremmr - 6. Весь наш твиттер, а также комменты к постам на реддите просто заполнены комментариями от вашего имени. Креативы и месседжи в спец. проектах неотличимы от наших и множество других классных вещей.

Поздравляю вас с недавним открытием в контент менеджменте, которым мы давно пользуемся - написать GOSU.AI в заголовке. 100 апвоутов практически гарантированны на том же /r/Dota2/

Баттл предиктов между нами был жаркий, жаль что мы в нем не поучаствовали. Ведь вы обгоняли нас аж на 2 предикта в нижней сетке, где вероятность победы команд в нашей инфографике по прогнозам отличалась на пару процентов. В комень-ножницы-бумагу вы бы нас точно ушатали, так что наши датасайнтисты теперь в шатком положении. Жаль, что мы не увидели красочный финал противостояния в тех местах, где видели начало с такими же красочными заголовками.

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

p.s. Ну, а рили, нам можно написать. Тогда и баттл бы сделали с нормальными правилами, а не с подбрасыванием монетки и помогли бы зайти на реддит. Сейчас это выглядит, что вы пытаетесь нас забайтить 10 раз в сутки, и это видим не только мы, а ещё и всё дота коммьюнити.

Ответить
17

А, ну и да. 2 упоминания в твиттере, один тег на Реддите :D Прям "закусали")))))

Ну и да, приятно быть причиной аж первого за полгода коммента на VC и четвёртого за всю историю)))

В подарок вам, графические изображения ( в ассортименте) для иллюстрации к вашему комменту:
https://www.google.ru/search?newwindow=1&biw=1536&bih=728&tbm=isch&sa=1&ei=WJSJW6HkNYGRsAHe55TICQ&q=%D0%BC%D0%B5%D0%BC+%D1%83+%D0%BC%D0%B5%D0%BD%D1%8F+%D0%BD%D0%B5+%D0%B1%D0%BE%D0%BC%D0%B1%D0%B8%D1%82&oq=%D0%BC%D0%B5%D0%BC+%D1%83+%D0%BC%D0%B5%D0%BD%D1%8F+%D0%BD%D0%B5+%D0%B1%D0%BE%D0%BC%D0%B1%D0%B8%D1%82&gs_l=img.3..35i39k1j0i8i30k1.36697.38580.0.38845.4.4.0.0.0.0.89.262.4.4.0....0...1c.1.64.img..0.4.261...0i30k1j0i8i7i30k1.0.pWr-b_yLrwA

Ответить
1

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

Ответить
1

Я просто не смог сделать выбор :,(

Ответить
9

:DDDD присуммонили

п.с. если б "госу" в заголовке давал +100 апвоутов, я бы и 20 раз упомянул, но увы)))

Ну, а рили, на след. неделе напишем :D В этот раз всё очень спонтанно вышло) не принимайте уж так близко к сердцу)))

Ответить
6

Хоспаде, а гонору-то сколько...

Ответить
3

В любом случае, обе стороны проиграли, победила дружба. А ДРУЖБА ЭТО NA'VI!

Ответить
1

Уровень токсичности поста: дотер

Ответить
0

Профдеформация)))))

Ответить
8

12/22 верных предсказаний

Ага, т.е. можно было просто монетку бросать - и, возможно, было бы лучше :) Нафиг нейронка то?

Ответить
8

Стильно, модно, молодежно, можно написать на vc.ru.

Ответить
1

Предсказания на основе Байесовских нейронных сетей - это моя специализация. Что не так, Никита?

Ответить
3

Вообще-то я вас поддержал. Нейронка тут для того чтобы можно было написать на vc.ru о ней, больше от нее в данном случае пользы нет.

Ответить
3

Конечно, всё ради родного VC.ru :D

Ответить
1

Оне настаивали что оне маленькими буквами
vc.ru (tm)

Ответить
0

шит, уже и не продредактить. Всё, теперь и нейросеть не поможет :D

Ответить
1

Извините, конец дня рабочего, туплю )

Ответить
1

Фичи, сгенерированные нейросетью, на тестовой выборке показали себя лучше всего.
Польза всё-таки есть

Ответить
0

Какую литературу или источники порекомендуете для изучения этой темы?

Ответить
2

Смотря что вам нужно. Если "в общем", то нейронные сети это подраздел машинного обучения -> статистика -> мат.анализ, книг просто огромное количество, лекции, видеотрансляции. То, что написанно на википедии:
обширный подраздел искусственного интеллекта

это наглая манипуляция, никаким интелектом тут не пахнет.
По сути вот:
https://proglib.io/p/machine-learning-free-books-list/

Ответить

0

Точно, вы удивительно прозорливы

Ответить
4

Завтра ( сегодня не удалось, к сожалению) призовём в комменты непосредственного создателя - подискутируете))

Но, на самом деле, можно было, наверное и монетку. )) Всё получилось, как и описано в статье...был вопрос "можно сделать?" - мне ответили "можно" и сделали)) Без претензии на какие-то высокие достижения )

Ответить
1

призовём

/summon master

Ответить
0

получилось! ))))

Ответить
3

Сетка использовалась для кодирования категориальных фичей (например, предметов, которые собрал игрок). Можно было конечно обойтись и стандартным one-hot encoding, но embedding в ходе тестов показал себя сильно лучше. Да и пространство признаков при таком подходе не раздувается.

Ответить
0

В смысле после кодирования как нормализовывали, заполняли пустоты?

Ответить
1

Кодирование - в смысле сопоставление категориальному признаку числового вектора. Нормализация не производилась. Пустые значения заменялись на средние/медианы.

Ответить
10

Мета меняется слишком быстро, чтобы AI мог как-то анализировть все факторы. Сейчас перед Франкфуртом все снова перелопатят составы, выйдут новые патчи, и в итоге реальные данные о силе команд будут только по тем тимам, которые проходят отборочные. Хотя можно доработать машинку и сделать так, чтобы она учитывала рейтинг отдельно взятого игрока, даже на основе его пабликов. В общем, лукинг форвард, как говорится

Ответить
2

AI, по-идее, адаптируется к смене меты и прочего в разы быстрее чем ты думаешь. Ну, например, AI бот, который играет против про-игроков играет миллионы карт в день.

Ответить
4

боты имеют полностью скриптованный сценарий покупок на всю игру и миллионы и миллиарды карты ему не помогают.

Ответить
2

Ну если смотреть последние шоу-матчи с ТИ, то да. Как говорили сами комментаторы, разработчики упростили свой АИ. А миллионы и миллиарды матчей очень даже им помогают, т.к. они играют миллионы и миллиарды сценариев и тем самым обучаются - пику, тактике, закупу и тд. Я думаю если допилить АИ и заставить его работать по максимуму - человечество обречено))

Ответить
1

Я подозреваю, что имеются в виду не внутриигровые боты клиента Доты, а боты OpenAI

Ответить
1

боты OpenAI имеют скриптованый сценарий покупок, согласно их же создателям. Поэтому в лейтгейме все так плохо

Ответить
2

в доте скриптованый список покупок не критично, в 80% кроме начальной и мид стадии все собирают одинаковые предметы на выбраных героях. А в мид стадии например отличая типа собрать сперва еул или глимер и это легко заскриптовать.
И это наверное самое простое для ботов.

Ответить
1

В лейте всё плохо, потому что мизерное количество автоматчей доходит до этой стадии игры. Тупо нет адекватной статистики.

Ответить
0

Хммм, объяснил, спасибо(No sarcasm) Но с другой стороны, это не озаначат, что в будущем их закуп будет так же обусловлен ограниченными скриптами, они, как я понимаю, все таки учатся

Ответить
1

Полностью скриптованный сценарий я думаю имеют боты, которые находятся в клиенте игры

Ответить
3

У бота, который играет одна цель-научиться играть в доту. Для этого у него неограниченный ресурс, игр можно играть бесконечное количество. Но если делать АИ для предсказания матчей, и учитывать только турнирные матчи, то, по сути, материала для анализа будет с гулькин хер. Команды уже будут приезжать на турнир с новыми идеями, стратегиями и игроками, а AI сделает из этого выводы только после турнира. А на следующем уже все будет иначе

Ответить
2

Значит изначально стоило брать больше матчей для анализа игр.
Подпишусь, чтобы следить за битвой AI, это похвально вызвать крутых ребят в прямом эфире так сказать)

Ответить
1

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

Ответить
8

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

Ответить
3

Ощущение, что они вообще не тильтили. Если бы я в одной из карт финала на вокере был 6к нетворса на 25й, я бы просто отказался играть. А Топсону вообще по барабану. Просто на характере OG вытащили. Лучший финал в истории TI

Ответить
0

Ну настрой очень многое решает, да.
Если бы в том же ВП два главных горящих пердака были поспокойнее, мб и подольше бы продержались.

Ответить
3

Я думаю нужно было прогноз делать не по MMR, а сами игры и то на каких минутах какая экономика, какие действия делают. Тут недостаточно сухих данных из Dotabuff ибо он вообще не идеален. И перформанс на других турнирах тоже важен, и позиции в сетках, и противостояние между разными командами. Где то вроде я уже видел, что прогнозировали между разными командами, мб это были и вы. Нужно больше данных короче...

Ответить
2

Вы всё верно расписали :)
Большая часть признаков генерировалось из сырого лога матча, который мы получали напрямую от Valve.
Личные встречи, сыгранные турниры и многие другие стат. данные тоже безусловно учитывались.

Ответить
1

А что, черный рынок ставок на результаты большой, или только формируется?

Ответить
0

Всё впереди :)

Ответить
0

Это был завуалированный вопрос
"Все круто, а смысл?"

Ответить
1

Разработчика надо сразу четко спрашивать, нечего там вуалировать!)

Ответить
1

Разработчик не лесоруб, однако.

Ответить
0

Зачем чёрный, когда есть белый?))) Кстати, я хотел параллельно ещё на основе наших прогнозов денег закидывать на каждый матч)) Не придумал, где это помасштабнее освещать...и хорошо :D Но в следующий раз, уж точно...пора возвращаться в беттинг)

Ответить
0

Ну я так понял это вы делали, у ГОСУ вроде другая история. Потому что когда он появился вообще сомнения были. Ещё были другие чуваки которые полностью занимались предсказанием матчей, но не госу, у них неплохо выходило. А вообще конкурс на Kaggle был ещё два года назад и исходников на гитхабе достаточно :)

Ответить
0

Вы пытаетесь сами выделить решающие факторы. Это надо сетке Байеса делегировать, пусть перебирает неизвестные параметры. Ну или наше все на крайний случай : https://github.com/dmlc/xgboost :)

Ответить
0

Выдаст, но криво, грубо говоря для ленивых.

Ответить
0

Да, прогнозы на спорт все кривые, по сути можно только угадать.

Ответить
1

Неведомое?)

Ответить
0

Я в домашних условиях тестил :D Сначала формировал свой прогноз и делал ставки (мма), потом жене показывал предстоящий кард, говорю "угадывай" :D А потом и показывать перестал, просто называя имена в парах. И так, наверное, месяца три))) Прогноз зарекомендовал себя лучше)

Ответить
1

МЛ для прогнозов - криво выходит. Хотя и логично, да :) А с ручным заполнением это уже эзотерика какая-то :)

Ответить
3

Классно, когда самые лучшие умы работают в виртуальной сфере, подальше от этой обыденной надоевшей реальности.

Ответить
2

Было бы интересно посмотреть как бот предсказывает победу сразу после пика. В 2018 нет смысла в Доте ставить на команды пока не увидишь каких героев взяли игроки.

Ответить
0

Ну, кстати, да. Так наверн точнее будет, можно в лайве ставить)))

Ответить
0

А есть какое-то общедоступное апи для получения данных в реальном времени, а не из реплея?

Ответить
2

А можно в ваших текстах поменьше вот этого дерьма - ":D" ? Мы вроде как не в чатике :*

Ответить
0

Оке, я не специально)))

В других моих текстах существенно меньше)

Ответить
0

Автоматический анализ ошибок игроков MoreMMR AI: 12/22 верных предсказаний

То есть чуть больше, чем 50%. Такая точность доступна любому: угадал или не угадал, вероятность выигрыша 50%.

Ответить
1

Тут около 60, для прогноза терпимо. Вот если бы было 1000 матчей, или там 1 000 000 тогда бы интересно было бы взглянуть на прогноз

Ответить
0

Эммм, это немного не так.

Ответить

0
{ "page_type": "article" }

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ]
Хакеры смогли обойти двухфакторную
авторизацию с помощью уговоров
Подписаться на push-уведомления
{ "page_type": "default" }