Субботние лекции (как всегда по весне, пора ускоряться, чтобы успеть пораньше закончить) завершают часть курса, посвящённую приближённому байесовскому выводу. Дообсудили вывод в LDA — и вариационный, и через сэмплирование по Гиббсу, в том числе collapsed Gibbs sampling — и хотя, как мы обсуждали выше, базовая LDA уже вряд ли кому-то нужна сама по себе, это всё ещё отличный пример, на котором хорошо видна структура всего приближённого вывода.
А во второй части поговорили о теме, которая лично для меня стала в своё время "билетом в большое ML". Любопытно, что это опять про рейтинг спортивного ЧГК, но с другой стороны: в былые времена в базе результатов турниров не было повопросных плюсиков, на которых была основана моя более поздняя и более простая система с EM-выводом. Поэтому первый подход к этому снаряду, который мой друг и коллега Александр Сироткин @avsirotkin и я сделали ещё в 2010-2011 году, должен был выводить персональный рейтинг из результатов вида "команда A обыграла команды B, C, D, которые поделили 2-4 места".
Для таких результатов уже существовала система TrueSkill (Graepel et al., 2006) от Microsoft Research, в которой использовался очень изящный приближённый вывод через Expectation Propagation на большом и красивом фактор-графе. Александр всё это реализовал... и ничего не заработало.) Вывод постоянно ломался, а когда не ломался, приводил к каким-то абсурдным результатам: иногда, например, команда с более высоким начальным рейтингом могла улучшить свой рейтинг больше, чем занявшая более высокое место команда с меньшим начальным рейтингом (кажется, эту фразу нелегко распарсить, но, в общем, так быть не должно :) ).
Оказалось, что TrueSkill делает кое-какие предположения, которые нормально работают для team deathmatch между четырьмя командами по четыре человека на сервере Halo, но совершенно не работают, когда у вас турнир из 36 вопросов на 200 участников, и одно место делят друг с другом десятки команд. Мы предложили, как это исправить (разумеется, сделав фактор-граф ещё больше и красивее), написали статью, и её в итоге... приняли на ICML 2011.
Я уже занимался перед этим вероятностным выводом и представлением знаний (большой привет и большое спасибо Александру Львовичу Тулупьеву, у которого я многому научился!), но в других контекстах и с гораздо более скромными результатами. А это была моя (и @avsirotkin тоже) первая статья на настоящей топ-конференции, причём вообще первая в жизни — в теоретической информатике я на STOC и FOCS как-то не попадал.
В общем, приятно было вспомнить, но на этом вероятностные модели в курсе заканчиваются. Впереди обучение с подкреплением!
https://www.youtube.com/watch?v=rge9vjedsuw
А во второй части поговорили о теме, которая лично для меня стала в своё время "билетом в большое ML". Любопытно, что это опять про рейтинг спортивного ЧГК, но с другой стороны: в былые времена в базе результатов турниров не было повопросных плюсиков, на которых была основана моя более поздняя и более простая система с EM-выводом. Поэтому первый подход к этому снаряду, который мой друг и коллега Александр Сироткин @avsirotkin и я сделали ещё в 2010-2011 году, должен был выводить персональный рейтинг из результатов вида "команда A обыграла команды B, C, D, которые поделили 2-4 места".
Для таких результатов уже существовала система TrueSkill (Graepel et al., 2006) от Microsoft Research, в которой использовался очень изящный приближённый вывод через Expectation Propagation на большом и красивом фактор-графе. Александр всё это реализовал... и ничего не заработало.) Вывод постоянно ломался, а когда не ломался, приводил к каким-то абсурдным результатам: иногда, например, команда с более высоким начальным рейтингом могла улучшить свой рейтинг больше, чем занявшая более высокое место команда с меньшим начальным рейтингом (кажется, эту фразу нелегко распарсить, но, в общем, так быть не должно :) ).
Оказалось, что TrueSkill делает кое-какие предположения, которые нормально работают для team deathmatch между четырьмя командами по четыре человека на сервере Halo, но совершенно не работают, когда у вас турнир из 36 вопросов на 200 участников, и одно место делят друг с другом десятки команд. Мы предложили, как это исправить (разумеется, сделав фактор-граф ещё больше и красивее), написали статью, и её в итоге... приняли на ICML 2011.
Я уже занимался перед этим вероятностным выводом и представлением знаний (большой привет и большое спасибо Александру Львовичу Тулупьеву, у которого я многому научился!), но в других контекстах и с гораздо более скромными результатами. А это была моя (и @avsirotkin тоже) первая статья на настоящей топ-конференции, причём вообще первая в жизни — в теоретической информатике я на STOC и FOCS как-то не попадал.
В общем, приятно было вспомнить, но на этом вероятностные модели в курсе заканчиваются. Впереди обучение с подкреплением!
https://www.youtube.com/watch?v=rge9vjedsuw
YouTube
СПбГУ -- 2025.04.12 -- Вывод в LDA, Expectation Propagation и TrueSkill
Это лекция из курса "Графические вероятностные модели", который читается на Факультете математики и компьютерных наук СПбГУ вместе с двумя другими частями курса машинного обучения -- "Основами байесовского вывода" и "Глубоким обучением". Все материалы этой…
❤19🔥6👍4❤🔥3
Вчерашними лекциями начал раздел курса, посвящённый обучению с подкреплением.
Первая часть — о многоруких бандитах (multiarmed bandits), первом частном случае, в котором нет никаких состояний (точнее, оно одно). Это интересный раздел машинного обучения, прежде всего тем интересный, что там действительно есть место для настоящих теорем! Оценки на regret часто красиво доказываются, начиная с Auer et al. (2002) и до недавних развитий в сторону состязательных (adversarial) и контекстуальных (contextual) бандитов.
Самая непонятная для меня часть истории о бандитах состоит в том, почему при их появлении не умерло мгновенно "обычное" классическое A/B тестирование. Казалось бы, реализовать какой-нибудь UCB1 вообще ничего не стоит, и он тут же начнёт выбирать из гипотез более эффективно и без размышлений о размере выборки. Не понимаю — может, вы расскажете?..
Во второй части начали обсуждать общий случай обучения с подкреплением, полный марковский процесс принятия решений (Markov decision process, MDP). Ввёл функции значений (V и Q), выписал уравнения Беллмана. Тоже любопытно, конечно, что по сути весь RL сводится к уравнениям Беллмана; но есть нюанс, даже несколько: во-первых, этих уравнений слишком много, во-вторых, мы их не знаем.) Ну да ничего, постепенно в ближайших лекциях разберёмся, что делать с этими проблемами.
https://www.youtube.com/watch?v=Kqw9RcLNHHs
Первая часть — о многоруких бандитах (multiarmed bandits), первом частном случае, в котором нет никаких состояний (точнее, оно одно). Это интересный раздел машинного обучения, прежде всего тем интересный, что там действительно есть место для настоящих теорем! Оценки на regret часто красиво доказываются, начиная с Auer et al. (2002) и до недавних развитий в сторону состязательных (adversarial) и контекстуальных (contextual) бандитов.
Самая непонятная для меня часть истории о бандитах состоит в том, почему при их появлении не умерло мгновенно "обычное" классическое A/B тестирование. Казалось бы, реализовать какой-нибудь UCB1 вообще ничего не стоит, и он тут же начнёт выбирать из гипотез более эффективно и без размышлений о размере выборки. Не понимаю — может, вы расскажете?..
Во второй части начали обсуждать общий случай обучения с подкреплением, полный марковский процесс принятия решений (Markov decision process, MDP). Ввёл функции значений (V и Q), выписал уравнения Беллмана. Тоже любопытно, конечно, что по сути весь RL сводится к уравнениям Беллмана; но есть нюанс, даже несколько: во-первых, этих уравнений слишком много, во-вторых, мы их не знаем.) Ну да ничего, постепенно в ближайших лекциях разберёмся, что делать с этими проблемами.
https://www.youtube.com/watch?v=Kqw9RcLNHHs
YouTube
СПбГУ -- 2025.04.15 -- Многорукие бандиты, введение в обучение с подкреплением
Это лекция из курса "Графические вероятностные модели", который читается на Факультете математики и компьютерных наук СПбГУ вместе с двумя другими частями курса машинного обучения -- "Основами байесовского вывода" и "Глубоким обучением". Все материалы этой…
❤24🔥9❤🔥3👍1
Вышел первый пост из моей новой серии об AI safety:
AI Safety I: Concepts and Definitions
План первой части такой:
— введение: а есть вообще прогресс в AI safety? пора бы уже!
— основные определения: emergence, goodharting, interpretability, corrigibility...
— меза-оптимизация: это вообще центральное понятие во всём этом дискурсе, если вы не знаете, что это такое, очень рекомендую прочитать хотя бы мой пост;
— история AI safety от Франкенштейна до наших дней (can't help myself, особенно если таймлайн можно нарисовать); там много любопытных цитат, для вас может быть новостью, например, что о paperclip maximization предупреждал ещё Норберт Винер;
— пример конкретной (и довольно безобидной) проблемы: подхалимство LLM.
Даже если вы слушали мой недавний большой доклад, всё равно рекомендую пост тоже посмотреть, как минимум там всё лучше структурировано, плюс несколько картинок новых нарисовал (прилагаю их здесь как teaser).
А сам пишу дальше, думаю, в итоге в серии об AI safety три или четыре таких части получится.
AI Safety I: Concepts and Definitions
План первой части такой:
— введение: а есть вообще прогресс в AI safety? пора бы уже!
— основные определения: emergence, goodharting, interpretability, corrigibility...
— меза-оптимизация: это вообще центральное понятие во всём этом дискурсе, если вы не знаете, что это такое, очень рекомендую прочитать хотя бы мой пост;
— история AI safety от Франкенштейна до наших дней (can't help myself, особенно если таймлайн можно нарисовать); там много любопытных цитат, для вас может быть новостью, например, что о paperclip maximization предупреждал ещё Норберт Винер;
— пример конкретной (и довольно безобидной) проблемы: подхалимство LLM.
Даже если вы слушали мой недавний большой доклад, всё равно рекомендую пост тоже посмотреть, как минимум там всё лучше структурировано, плюс несколько картинок новых нарисовал (прилагаю их здесь как teaser).
А сам пишу дальше, думаю, в итоге в серии об AI safety три или четыре таких части получится.
🔥39❤🔥5👏5❤2
В AI жизнь всегда подкидывает свежие примеры к любой презентации и любому посту. Пишу вторую часть серии про AI safety (первая была давеча), про goodharting и reward hacking, а тут o3 и o4-mini вышли. Да не просто модели, а ещё и system card c подробным исследованием их возможностей от METR; сам METR говорит, что времени на тестирование им OpenAI дал маловато, но даже за ограниченное время получилось много интересного (см. также большой пост от Zvi Mowshowitz). Ссылаюсь на картинки в тексте ниже по порядку.
1. Возможности очень хороши! Я недавно рассказывал о новой "прямой линии на графике" от METR (Kwa et al., 2025), по которой время, требующееся человеку на задачу, с которой может справиться LLM, удваивается каждые 7 месяцев (рис. 1, уже с апдейтом от METR). Про это был Manifold market с вопросом о том, удвоится ли быстрее, т.е. загнётся ли прямая линия кверху. Через две недели вышли o3 и o4-mini, их возможности немного поизучали (рис. 2)... и вопрос тут же resolved positive (рис. 3), две недели понадобилось вместо полугода. Это, конечно, не значит, что теперь будет 4х в месяц, но забавно.
Ограниченное время на тесты здесь тоже важно; METR пишет: "This evaluation was conducted in a relatively short time... We expect higher performance is possible with more elicitation effort. For example, in our evaluation of o1, we saw a precursor to our time horizon measurements more than double with three engineer-weeks of elicitation". То есть возможности новых моделей, скорее всего, пока сильно преуменьшаются, и простенький scaffolding сможет их существенно расширить в ближайшем будущем даже без изменений в моделях (pure unhobbling, так сказать).
2. Часть про safety и redteaming тоже очень интересная, советую прочитать system card, но я покажу другие тесты, от Transluce. Уже в system card выясняется, что галлюцинации всё ещё остаются серьёзной проблемой, у o3 их даже заметно больше, чем было у o1.
Но тут гораздо интереснее получается: Chowdhury et al. обнаружили, что o3 любит... нагло врать пользователям. Особенно в случаях, когда надо чем-то подтвердить свою галлюцинацию. На рис. 4 показан диалог, в котором o3 придумала себе лэптоп, которого у неё, конечно же, нет.
На первый взгляд это обычная безобидная галлюцинация... но см. рис. 5, который я взял из этого поста. Там показан похожий диалог, в котором пользователь засомневался и уточнил насчёт лэптопа. В своих "мыслях" (chain of thought summary) o3 очевидно понимает, что никакого лэптопа нет, и собирается рассказать, что это была такая метафора (что было бы в целом нормально)... но потом всё равно нагло врёт. Это выглядит как очень интересный эффект (как так получилось? из какой reward?), причём он появляется часто — рис. 6 показывает статистику из тестов Chowdhury et al.
А так да, отличные модели, конечно. Я уже начинаю понемногу чувствовать, что они реально умнее предыдущих, хотя в личном пользовании, конечно, эффект плацебо не отделишь. Но, как назывался мой недавний доклад, готовы ли мы прийти туда, куда мы идём?..
1. Возможности очень хороши! Я недавно рассказывал о новой "прямой линии на графике" от METR (Kwa et al., 2025), по которой время, требующееся человеку на задачу, с которой может справиться LLM, удваивается каждые 7 месяцев (рис. 1, уже с апдейтом от METR). Про это был Manifold market с вопросом о том, удвоится ли быстрее, т.е. загнётся ли прямая линия кверху. Через две недели вышли o3 и o4-mini, их возможности немного поизучали (рис. 2)... и вопрос тут же resolved positive (рис. 3), две недели понадобилось вместо полугода. Это, конечно, не значит, что теперь будет 4х в месяц, но забавно.
Ограниченное время на тесты здесь тоже важно; METR пишет: "This evaluation was conducted in a relatively short time... We expect higher performance is possible with more elicitation effort. For example, in our evaluation of o1, we saw a precursor to our time horizon measurements more than double with three engineer-weeks of elicitation". То есть возможности новых моделей, скорее всего, пока сильно преуменьшаются, и простенький scaffolding сможет их существенно расширить в ближайшем будущем даже без изменений в моделях (pure unhobbling, так сказать).
2. Часть про safety и redteaming тоже очень интересная, советую прочитать system card, но я покажу другие тесты, от Transluce. Уже в system card выясняется, что галлюцинации всё ещё остаются серьёзной проблемой, у o3 их даже заметно больше, чем было у o1.
Но тут гораздо интереснее получается: Chowdhury et al. обнаружили, что o3 любит... нагло врать пользователям. Особенно в случаях, когда надо чем-то подтвердить свою галлюцинацию. На рис. 4 показан диалог, в котором o3 придумала себе лэптоп, которого у неё, конечно же, нет.
На первый взгляд это обычная безобидная галлюцинация... но см. рис. 5, который я взял из этого поста. Там показан похожий диалог, в котором пользователь засомневался и уточнил насчёт лэптопа. В своих "мыслях" (chain of thought summary) o3 очевидно понимает, что никакого лэптопа нет, и собирается рассказать, что это была такая метафора (что было бы в целом нормально)... но потом всё равно нагло врёт. Это выглядит как очень интересный эффект (как так получилось? из какой reward?), причём он появляется часто — рис. 6 показывает статистику из тестов Chowdhury et al.
А так да, отличные модели, конечно. Я уже начинаю понемногу чувствовать, что они реально умнее предыдущих, хотя в личном пользовании, конечно, эффект плацебо не отделишь. Но, как назывался мой недавний доклад, готовы ли мы прийти туда, куда мы идём?..
🔥21❤8❤🔥6👍3🤔1
Вчерашние лекции были совсем не зажигательны, не то настроение сейчас, но на важные темы — мы успели обсудить большую часть прямого RL.
В первой части говорили о методах Монте-Карло, а во второй — о TD-обучении. Здесь я вряд ли какие-то cool story буду рассказывать, и так понятно, что на этом (и на policy gradient алгоритмах, о которых в следующий раз поговорим) всё основано, и всё это до сих пор актуально.
Скажу только, что в обучении с подкреплением меня всегда удивляло то, насколько это по сути маленькая наука, и насколько отличающаяся от остального машинного обучения. За две лекции рассказал половину, в следующий раз ещё половину расскажу, да и всё, остальное конкретика, комментарии и расширения.
И отчасти поэтому RL уникально в computer science тем, что написанная ещё в 1998 году книга Саттона и Барто двадцать лет была главным учебником, и двадцать лет оставалась очень актуальна... до тех пор, пока в 2018 Саттон и Барто не подновили её немножко, и теперь главный источник по RL — их же второе издание, не так уж сильно отличающееся от первого.
https://www.youtube.com/watch?v=WJAy10YKILc
В первой части говорили о методах Монте-Карло, а во второй — о TD-обучении. Здесь я вряд ли какие-то cool story буду рассказывать, и так понятно, что на этом (и на policy gradient алгоритмах, о которых в следующий раз поговорим) всё основано, и всё это до сих пор актуально.
Скажу только, что в обучении с подкреплением меня всегда удивляло то, насколько это по сути маленькая наука, и насколько отличающаяся от остального машинного обучения. За две лекции рассказал половину, в следующий раз ещё половину расскажу, да и всё, остальное конкретика, комментарии и расширения.
И отчасти поэтому RL уникально в computer science тем, что написанная ещё в 1998 году книга Саттона и Барто двадцать лет была главным учебником, и двадцать лет оставалась очень актуальна... до тех пор, пока в 2018 Саттон и Барто не подновили её немножко, и теперь главный источник по RL — их же второе издание, не так уж сильно отличающееся от первого.
https://www.youtube.com/watch?v=WJAy10YKILc
YouTube
СПбГУ -- 2025.04.19 -- Методы Монте Карло в RL, TD обучение, приближённые методы RL
Это лекция из курса "Графические вероятностные модели", который читается на Факультете математики и компьютерных наук СПбГУ вместе с двумя другими частями курса машинного обучения -- "Основами байесовского вывода" и "Глубоким обучением". Все материалы этой…
👍17🔥9❤🔥7
Этой весной у меня какое-то невероятное количество выступлений, буду потихоньку выкладывать. На прошлой неделе выступал на конференции Центра ИИ СПбГУ "ИИ и математика"; правда, секция моя называлась "Трансфер и масштабирование", так что доклад мой был совсем не про математику (про неё будет следующий), а про законы масштабирования в машинном обучении.
Получилось вроде не так уж плохо, от закона Мура дошли до последних графиков от METR и AI 2027, хотя, конечно, основное содержание - это scaling laws от OpenAI (Kaplan et al., 2020) и Chinchilla scaling (Hoffmann et al., 2022).
Выложил видео, слайды выложил на страницу текущего курса ML:
https://youtu.be/FyRRo61TNt0
Кстати, первый же комментарий под видео уже отметил, что в слайдах начались "котики нового поколения". И действительно, GPT-4o совершенно переворачивает игру в плане иллюстраций.
Получилось вроде не так уж плохо, от закона Мура дошли до последних графиков от METR и AI 2027, хотя, конечно, основное содержание - это scaling laws от OpenAI (Kaplan et al., 2020) и Chinchilla scaling (Hoffmann et al., 2022).
Выложил видео, слайды выложил на страницу текущего курса ML:
https://youtu.be/FyRRo61TNt0
Кстати, первый же комментарий под видео уже отметил, что в слайдах начались "котики нового поколения". И действительно, GPT-4o совершенно переворачивает игру в плане иллюстраций.
YouTube
СПбГУ -- 2025.04.16 -- Законы масштабирования в ML
Это запись доклада "Законы масштабирования в машинном обучении" на конференции "ИИ и математика", проведённой Центром искусственного интеллекта СПбГУ 16 апреля 2025 года.
Подписывайтесь на мой телеграм-канал "Sineкура":
https://t.iss.one/sinecor
Слайды доклада…
Подписывайтесь на мой телеграм-канал "Sineкура":
https://t.iss.one/sinecor
Слайды доклада…
🔥23❤🔥6❤3👍3
А вот и фото с той конференции подъехали. С панельной дискуссии, правда, не с моего доклада, но тут тоже есть хорошие. Первая так прямо очень тематично выглядит. Спасибо большое организаторам во главе с Елизаветой @lizik_t!
❤22🔥13❤🔥7🤡1
Лекции во вторник продолжили обучение с подкреплением, да и закончили его.
Сначала мы обсудили одну из главных тем RL: теорему о градиенте по стратегиям. Есть много преимуществ у того, чтобы параметризовать стратегию, а не функцию значений V или Q, но задача выглядит слишком сложной. И тем не менее в итоге через пару несложных трюков всё получается, и мы рассмотрели и исторически первый алгоритм REINFORCE (Williams, 1992), представляющий собой Монте-Карло версию policy gradient, и общую схему actor-critic алгоритмов, реализующих здесь TD-обучение.
А затем дошли до самых последних новостей: разработанных в OpenAI алгоритмов policy gradient с ограничениями TRPO (Schulman et al., 2015) и PPO (Schulman et al., 2017), который стал фактически стандартом индустрии и для RLHF (да, Джон Шульман был ещё в OpenAI тогда!), и для других современных приложений, а также алгоритм GRPO (Shao et al., 2024), который DeepSeek придумал, чтобы сократить потребление памяти. Любопытно, кстати, что GPRO - это в некотором смысле возвращение к истокам, actor-critic алгоритм, который отказывается от критика и моделирует его через сэмплирование, то есть в каком-то смысле возвращается к схеме Монте-Карло.
Во второй части лекций поговорили о планировании: и базовом сэмплировании опыта (Dyna, Dyna с приоритетами), и test-time планировании, в том числе rollouts и MCTS. А потом рассказал о громких результатах глубокого обучения с подкреплением, которые было уже несложно объяснить: AlphaGo, AlphaZero и MuZero. О моделях мира (world models) поговорить всерьёз не успел, но MuZero постарался объяснить, насколько это было возможно.
На этом RL мы заканчиваем, и у меня в кои-то веки есть возможность начать deep learning немного заранее, не с осени. Это давно уже хочется делать, потому что одного семестра тут категорически мало, и сэкономленные лекции, думаю, очень помогут.
https://www.youtube.com/watch?v=A5iXUKUv4-M
Сначала мы обсудили одну из главных тем RL: теорему о градиенте по стратегиям. Есть много преимуществ у того, чтобы параметризовать стратегию, а не функцию значений V или Q, но задача выглядит слишком сложной. И тем не менее в итоге через пару несложных трюков всё получается, и мы рассмотрели и исторически первый алгоритм REINFORCE (Williams, 1992), представляющий собой Монте-Карло версию policy gradient, и общую схему actor-critic алгоритмов, реализующих здесь TD-обучение.
А затем дошли до самых последних новостей: разработанных в OpenAI алгоритмов policy gradient с ограничениями TRPO (Schulman et al., 2015) и PPO (Schulman et al., 2017), который стал фактически стандартом индустрии и для RLHF (да, Джон Шульман был ещё в OpenAI тогда!), и для других современных приложений, а также алгоритм GRPO (Shao et al., 2024), который DeepSeek придумал, чтобы сократить потребление памяти. Любопытно, кстати, что GPRO - это в некотором смысле возвращение к истокам, actor-critic алгоритм, который отказывается от критика и моделирует его через сэмплирование, то есть в каком-то смысле возвращается к схеме Монте-Карло.
Во второй части лекций поговорили о планировании: и базовом сэмплировании опыта (Dyna, Dyna с приоритетами), и test-time планировании, в том числе rollouts и MCTS. А потом рассказал о громких результатах глубокого обучения с подкреплением, которые было уже несложно объяснить: AlphaGo, AlphaZero и MuZero. О моделях мира (world models) поговорить всерьёз не успел, но MuZero постарался объяснить, насколько это было возможно.
На этом RL мы заканчиваем, и у меня в кои-то веки есть возможность начать deep learning немного заранее, не с осени. Это давно уже хочется делать, потому что одного семестра тут категорически мало, и сэкономленные лекции, думаю, очень помогут.
https://www.youtube.com/watch?v=A5iXUKUv4-M
YouTube
СПбГУ -- 2025.04.22 -- Policy gradient и actor-critic алгоритмы, планирование, MCTS и Alpha[...]
Это лекция из курса "Графические вероятностные модели", который читается на Факультете математики и компьютерных наук СПбГУ вместе с двумя другими частями курса машинного обучения -- "Основами байесовского вывода" и "Глубоким обучением". Все материалы этой…
❤14👍12🔥4
Media is too big
VIEW IN TELEGRAM
Успел-таки с пятничным постом — вот так проходят в Jamschool собственно джемы, то бишь отчётные концерты. К последней пятнице месяца каждый ансамбль (они составляются практически случайно) должен новую песенку разучить и представить.
Играть там, как правило, особо нечего (да сложное я бы и не смог / не успел), но сам процесс игры вместе с другими людьми мне нравится и кажется крутым опытом. Когда-нибудь будет что выложить на этот счёт и поинтереснее, надеюсь.)
Играть там, как правило, особо нечего (да сложное я бы и не смог / не успел), но сам процесс игры вместе с другими людьми мне нравится и кажется крутым опытом. Когда-нибудь будет что выложить на этот счёт и поинтереснее, надеюсь.)
❤19🔥17👏4🤩4🎉2😍1😎1