Геопоиск Яндекс Карт ежедневно помогает миллионам людей по всему миру находить нужные места. Мы отвечаем на самые разные запросы: от простого «тамақтану» на казахском до сложного «Boğaz manzaralı hoş bir restoran» на турецком. Наша главная задача — за доли секунды понять намерение пользователя, на каком бы языке он ни писал запрос и в какой бы точке мира ни находился, и показать на карте именно то, что он ищет. Мы превращаем текстовый запрос в географический ответ, учитывая огромное количество факторов: от пробок и часов работы до культурных особенностей и неявных предпочтений. Карты — это базовая технология для многих городских сервисов Яндекса, например Такси, Доставки, Яндекс Еды. Почему это интересная задача с вызовом * Работа в международном геопоиске — это уникальный вызов на стыке технологий, языка и культуры. В отличие от классического веб-поиска мы имеем дело с физическим миром, и это всё меняет. * Языковой барьер. Пользователь может искать на русском языке в Турции, на английском — в Армении или использовать транслит. Нам нужно понимать запросы на разных языках, смешанные запросы (когда в одном запросе несколько языков) и справляться с многообразием названий одного и того же места (Eiffel Tower, Эйфелева башня, tour Eiffel). * Культурные и локальные особенности. Понятие «центр города», «популярное место» или «лучший кофе» в Стамбуле, Ереване или Дубае — это три разные сущности. Наши модели должны адаптироваться к локальному контексту и понимать, что важно для пользователя в конкретной стране. * Многогранность пользовательских нужд. Один и тот же запрос «Apple» может означать магазин техники, офис компании или рынок с фруктами. Наши алгоритмы должны в реальном времени определять правильный контекст, основываясь на геолокации, времени и истории пользователя. * Масштаб и скорость. Всё это сложное понимание должно работать с минимальной задержкой для миллионов пользователей одновременно. Это требует не только умных, но и невероятно эффективных моделей. Вы будете работать над продуктом, где результат вашего кода мгновенно влияет на опыт миллионов людей, помогая им ориентироваться в незнакомых городах и открывать для себя мир.

Обязанности:

Развитие мультиязычных NLP-моделей
Вам предстоит учить наш поиск понимать запросы на разных языках, извлекать из них сущности (что ищем, где, с какими атрибутами) и справляться с опечатками и неформальными формулировками. Улучшение ранжирования поиска для разных стран
Вы будете создавать и обучать классические и нейросетевые модели, которые будут выстраивать топ организаций с учётом локальной специфики: популярности, отзывов на местном языке, транспортной доступности и десятков других факторов. A/B-тесты и внедрение моделей
Нужно будет разрабатывать пайплайны для быстрой проверки гипотез и выкатывать в продакшн только те решения, которые доказали свою эффективность на реальных пользователях. Построение векторных представлений
Мы используем state-of-the-art-архитектуры для создания единого семантического пространства, где запрос «a cozy place for dinner» и турецкое название ресторана с соответствующими отзывами будут находиться рядом. Это позволяет нам находить релевантные места, даже если в их описании нет прямых ключевых слов. Генеративные подходы
Мы исследуем, как генеративные модели могут помочь в понимании сложных, развёрнутых запросов («ищу недорогое кафе, куда можно с собакой и где есть розетки для ноутбука») и даже в формировании персонализированных ответов-рекомендаций для пользователя. Больше об ML в Яндексе — в канале Yandex for ML

Ключевые навыки:

  • Разбираетесь в классических алгоритмах машинного обучения
  • Хотите работать с современными нейросетевыми технологиями и имеете такой опыт
  • Уверенно владеете Python
  • Готовы писать код на C++ и SQL (у вас нет «аллергии» на эти языки)
  • Знаете базовые алгоритмы и структуры данных