Интервью
Александр Ярац, руководитель отдела поиска Perplexity – серия интервью

Александр Ярац — руководитель отдела поиска Недоумение ИИ. Свою карьеру в Яндексе начал в 2017 году, одновременно обучаясь в Школе анализа данных Яндекса. Первые годы были напряженными, но плодотворными, что способствовало его росту до должности руководителя инженерной группы. Движимый стремлением работать с технологическим гигантом, он присоединился к Google в 2022 году в качестве старшего инженера-программиста, сосредоточившись на команде Google Assistant (позже Google Bard). Затем он перешел в Perplexity в качестве руководителя поиска.
Perplexity AI — это исследовательская и диалоговая поисковая система на базе чат-бота, которая отвечает на запросы, используя прогнозируемый текст на естественном языке. Запущенный в 2022 году, Perplexity генерирует ответы, используя источники из Интернета, и цитирует ссылки в текстовом ответе.
Что изначально заинтересовало вас в машинном обучении?
Мой интерес к машинному обучению (МО) развивался постепенно. В школьные годы я много времени уделял изучению математики, теории вероятностей и статистики, а также имел возможность экспериментировать с классическими алгоритмами машинного обучения, такими как линейная регрессия и нейронная сеть Короля-Куперсона (KNN). Было увлекательно наблюдать, как можно построить предсказательную функцию непосредственно на основе данных, а затем использовать её для прогнозирования ранее неизвестных данных. Этот интерес привёл меня в Школу анализа данных Яндекса – высококонкурентную магистерскую программу по машинному обучению в России (ежегодный набор всего 200 человек). Там я много узнал о более продвинутых алгоритмах машинного обучения и развил свою интуицию. Самым важным моментом в этом процессе стало знакомство с нейронными сетями и глубоким обучением. Мне стало совершенно ясно, что именно этим я хочу заниматься в течение следующих нескольких десятилетий.
Ранее вы в течение года работали в Google старшим инженером-программистом. Какие основные выводы вы извлекли из этого опыта?
До прихода в Google я проработал в Яндексе более четырех лет, сразу после окончания Школы анализа данных Яндекса. Там я возглавлял команду, которая разрабатывала различные методы машинного обучения для «Яндекс-Такси» (аналог Uber в России). Я присоединился к этой группе с момента ее создания и имел возможность работать в сплоченной и динамично развивающейся команде, которая за четыре года быстро выросла как по численности персонала (от 30 до 500 человек), так и по рыночной капитализации (она стала крупнейшей службой такси). провайдер в России, превосходящий Uber и других).
За это время мне посчастливилось создать многие вещи с нуля и запустить несколько проектов с нуля до одного. Одним из последних проектов, над которыми я там работал, было создание чат-ботов для сервисной поддержки. Там я впервые увидел мощь больших языковых моделей и был очарован тем, насколько важными они могут стать в будущем. Это осознание привело меня в Google, где я присоединился к команде Google Assistant, которая позже была переименована в Google Bard (один из конкурентов Perplexity).
В Google у меня была возможность узнать, как выглядит инфраструктура мирового уровня, как работают поиск и LLM и как они взаимодействуют друг с другом, чтобы предоставлять фактические и точные ответы. Это был отличный опыт обучения, но со временем меня разочаровали медленные темпы работы Google и ощущение, что ничего не делается. Я хотел найти компанию, которая работала бы над поиском и LLM и двигалась бы так же быстро, а то и быстрее, чем когда я был в Яндексе. К счастью, это произошло органично.
Внутри Google я начал видеть скриншоты Perplexity и задач, требующих сравнения Google Assistant с Perplexity. Это пробудило у меня интерес к компании, и после нескольких недель исследований я убедился, что хочу там работать, поэтому обратился к команде и предложил свои услуги.
Можете ли вы определить свою текущую роль и обязанности в Perplexity?
В настоящее время я возглавляю поисковую группу и отвечаю за построение нашей внутренней поисковой системы, которая обеспечивает работу Perplexity. Наша поисковая группа работает над созданием системы сканирования веб-страниц, поисковой системы и алгоритмов ранжирования. Эти задачи позволяют мне воспользоваться опытом, полученным в Google (работа над поиском и LLM), а также в Яндексе. С другой стороны, продукт Perplexity предоставляет уникальные возможности для перепроектирования и реинжиниринга того, как должна выглядеть поисковая система в мире, где существуют очень мощные LLM. Например, больше не важно оптимизировать алгоритмы ранжирования для увеличения вероятности клика; вместо этого мы концентрируемся на повышении полезности и достоверности наших ответов. В этом фундаментальное различие между системой ответов и поисковой системой. Моя команда и я пытаемся создать что-то, что выйдет за рамки традиционных 10 синих ссылок, и я не могу придумать ничего более интересного для работы в настоящее время.
Можете ли вы рассказать подробнее о переходе Perplexity от разработки инструмента преобразования текста в SQL к созданию поиска на основе искусственного интеллекта?
Первоначально мы работали над созданием механизма преобразования текста в SQL, который предоставляет специализированный механизм ответов в ситуациях, когда вам нужно получить быстрый ответ на основе ваших структурированных данных (например, электронной таблицы или таблицы). Работа над проектом преобразования текста в SQL позволила нам получить гораздо более глубокое понимание LLM и RAG и привела нас к ключевому выводу: эта технология гораздо более мощная и универсальная, чем мы первоначально думали. Мы быстро поняли, что можем выйти далеко за рамки хорошо структурированных источников данных и заняться неструктурированными данными.
Каковы были ключевые проблемы и идеи во время этого сдвига?
Основными сложностями этого перехода стали переход нашей компании из формата B2B в формат B2C и перестройка инфраструктуры для поддержки неструктурированного поиска. В ходе миграции мы быстро поняли, что работать над продуктом, ориентированным на клиента, гораздо приятнее, поскольку получаем постоянный поток отзывов и откликов, чего мы редко наблюдали, когда разрабатывали систему преобразования текста в SQL и концентрировались на корпоративных решениях.
Генерация дополненной поисковой информации (RAG), по всей видимости, является краеугольным камнем поисковых возможностей Perplexity. Не могли бы вы объяснить, чем Perplexity использует RAG иначе, чем другие платформы, и как это влияет на точность результатов поиска?
RAG — это общая концепция предоставления внешних знаний LLM. Хотя на первый взгляд идея может показаться простой, создание такой системы, которая эффективно и точно обслуживает десятки миллионов пользователей, является серьезной проблемой. Нам пришлось спроектировать эту систему собственными силами с нуля и создать множество специальных компонентов, которые оказались критически важными для достижения последних кусочков точности и производительности. Мы разработали нашу систему, в которой десятки LLM (от больших до маленьких) работают параллельно, чтобы быстро и экономично обрабатывать один пользовательский запрос. Мы также создали инфраструктуру обучения и вывода, которая позволяет нам обучать LLM вместе с сквозным поиском, поэтому они тесно интегрированы. Это значительно уменьшает галлюцинации и повышает полезность наших ответов.
Каким образом Perplexity управляет своими стратегиями веб-сканирования и индексирования, чтобы оставаться конкурентоспособной и обеспечивать актуальность информации, учитывая ограничения по сравнению с ресурсами Google?
Создание такого обширного индекса, как у Google, требует значительных затрат времени и ресурсов. Вместо этого мы сосредоточимся на темах, которые часто задают наши пользователи в Perplexity. Оказывается, большинство наших пользователей используют Perplexity в качестве помощника в работе/исследовании, и многие запросы направлены на качественные, надёжные и полезные разделы сети. Это распределение подчиняется степенному закону, и подход 80/20 позволяет добиться значительных результатов. Основываясь на этих данных, мы смогли построить гораздо более компактный индекс, оптимизированный для качества и достоверности. Сейчас мы тратим меньше времени на «гонку за хвостом», но по мере масштабирования инфраструктуры мы будем и за ним гоняться.
Как большие языковые модели (LLM) расширяют возможности поиска Perplexity и что делает их особенно эффективными при анализе и представлении информации из Интернета?
Мы используем LLM повсюду, как для обработки в реальном времени, так и в автономном режиме. LLM позволяют нам сосредоточиться на наиболее важных и актуальных частях веб-страниц. Они выходят за рамки всего, что было раньше, в максимизации соотношения сигнал/шум, что значительно упрощает решение многих задач, которые раньше были не под силу небольшой команде. В общем, это, пожалуй, самый важный аспект программ LLM: они позволяют вам делать сложные вещи с очень маленькой командой.
Забегая вперед, какие основные технологические и рыночные проблемы предвидит Perplexity?
Заглядывая в будущее, самые важные технологические задачи для нас будут сосредоточены на дальнейшем повышении полезности и точности наших ответов. Мы стремимся увеличить объем и сложность типов запросов и вопросов, на которые мы можем надежно ответить. Наряду с этим мы очень заботимся о скорости и эффективности обслуживания нашей системы и будем уделять большое внимание максимальному снижению затрат на обслуживание без ущерба для качества нашего продукта.
Как вы думаете, почему подход Perplexity к поиску превосходит подход Google к ранжированию веб-сайтов на основе обратных ссылок и других проверенных показателей ранжирования поисковых систем?
Мы оптимизируем совершенно другой показатель ранжирования, чем классические поисковые системы. Наша цель ранжирования призвана объединить поисковую систему и LLM. Этот подход сильно отличается от подхода классических поисковых систем, которые оптимизируют вероятность клика или показа рекламы.
Спасибо за отличное интервью, читатели, которые хотят узнать больше, должны посетить Недоумение ИИ.












