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

Я нашел даже исследование Drive Research и NRF, которое доказывает, что на нас, парнях, лежит основная нагрузка. Мы и планируем чаще, и тратим больше. Короче, ответственность за "вайб" на мне, а критерии успеха максимально размыты.
Я решил перестать гадать на кофейной гуще и перевел романтику в управляемую систему. Моя задача: провести день Х успешно при максимальной асимметрии ожиданий.
Математика против неопределенности
Если я выберу одно место (пусть это будет даже самый классный ресторан в Самаре, который ей может потенциально понравиться), вероятность р, что оно попадет в её текущее настроение условно 30%. Риск провала 70%. Я, на самом деле, довольно азартный человек. Но это недопустимый риск.
Если я подготовлю n вариантов под разные сценарии, вероятность того, что не подойдет ни один, падает до (1-p)n.
Следовательно, шанс на успех: 1-(1-p)n.
При р=0.3 и трех сценариях мы получаем ~66% вероятности успеха против 30%. С этим уже можно работать.
Шаг 1. Сбор сырых данных через карты
Первым делом я пошел в Яндекс Карты. Но не за красивыми картинками, а за объективными метриками. Мне нужно было отсеять шум и оставить только то, что реально повлияет на качество проведенного времени.
Я открывал карточки заведений и выписывал параметры: рейтинг, плотность отзывов (суммаризация от встроенной нейронки), реальные фото интерьера (чтобы понять расстояние между столами) и потенциальные редфлаги.
Вот что получилось на первом этапе:
Место | Тип | Рейтинг | Что пишут в отзывах (суммаризация) | Визуальные признаки | Потенциальный риск |
Ресторан A | кафе | 4.6 | "тихо", "уютно, вкусный десерты" | мало столов, тёплый свет | низкий |
Бар B | бар | 4.3 | "шумно", "очереди" | плотная посадка | средний |
Кафе C | пекарня | 4.7 | "быстро", "вкусно" | Совсем крошечное помещение | низкий |
Ресторан D | модный ресторан | 4.1 | "пафосно", "сервис хромает" | много людей, особенно пар | высокий |
Карты тут сработали как агрегатор чужого негативного опыта. Если в суммаризации от AI висит "долгое обслуживание", 14 февраля это "долго" превратится в "бесконечно". Вычеркиваем. Идем дальше.
Шаг 2. Классификация сценариев
Я перестал думать названиями. Я начал думать видами сценариев, потенциально предполагая, что может ей нравиться, исходя из настроения.
Первым я назвал "Тихий уголок": Маленькие кафе, где можно поговорить.
"Активный вайб": Прогулочные зоны, катки, парки, тюбинги.
"Выброс эндорфинов": Шумные бары, кафе с живой музыкой (если вдруг захочется поорать, потанцевать).
"Полный релакс": Спа или антикинотеатры.
Итого получилось 4 класса: "Тихий уголок", "Активный вайб", "Выброс эндорфинов", "Полный релакс".
Шаг 3. Делегирование ИИ-чату
Чтобы не тратить три часа на ручной парсинг, я запряг нейронку прямо в картах. В чате ассистента можно задавать прикольные промпты. Это помогает не упереться в один вариант.
Что я спрашивал:
"Тихий уголок" – места для свидания с тихой атмосферой, где мало людей.
"Активный вайб" – места для необычного свидания с активным досугом.
"Выброс эндорфинов" – места для свидания с громкой музыкой, танцами и барной стойкой для пары до 30 лет.
"Полный релакс" – локации для релакс-свидания в атмосфере полного расслабления.
Много карт��нок




"Исключи места, где в отзывах жалуются на духоту и тесноту".
ИИ выдал мне шорт-лист, который я бы вручную собирал до самой весны, задолбался бы и в итоге заказал мак и получил бы по шапке. Это не просто список ресторанов, это готовые пресеты под разное состояние системы (то есть моей девушки).
Чего в итоге получил, но вы можете и по-своему как-то промптить, не обязательно так.
Шаг 4. Финальная архитектура вечера
В итоге, я пришел к модели, где 14 февраля – это дерево решений. В зависимости от того, в каком настроении она встанет с утра, я просто выберу нужный сценарий. Даем вечеру в ее глазах развиваться "естественно", покрываем несколько вариантов ее желаний. Напоминаю, что в этом году это суббота, так что чем больше времени мы продумаем, тем лучше будет впечатление.
Таблица финальных сценариев
Состояние (входные данные) | Тип места | Факторы в картах |
Хочется поговорить | Небольшое кафе | Метка "тихо", <10 столов |
Хочется активностей | Прогулочная зона | открытое пространство, есть каток, тир, тюбинг |
Танцевальное/песенное настроение | Бар/караоке | Активная атмосфера, хороший звук, вкусные настойки/коктейли |
Низкий ресурс | Спа | Наличие онлайн записи прямо в картах |
Заключение
14 февраля это единственный (надеюсь!) день в году, когда Т3 максимально размытое, а цена ошибки максимально высока. Мы привыкли работать с четкими метриками, а тут - сплошной рандом.
Я для себя эту проблему решил просто, перестал искать идеальное решение и перешел к стратегии избыточности. Карты в моем случае парсер данных. Вместо того чтобы рефлексировать над выбором, я просто отфильтровал шум, чекнул суммаризацию отзывов на п��едмет багов (типа долгого ожидания или овербукинга) и подготовил 3-4 готовых сценария.
Отвечая на вопрос Сергея Бодрова – сила в качественной выборке данных :-)