Стандартная схема работы ИИ-агента с поиском выглядит так: модель формулирует запрос, поисковый API возвращает список ссылок, модель читает результаты и формулирует следующий запрос. Этот цикл может повторяться десятки раз подряд. Perplexity называет такую схему узким местом: поисковые движки создавались для людей, которым нужен аккуратный список ссылок, а не для агентов, способных выполнять сотни запросов за несколько минут.

Search as Code (SaC) меняет логику взаимодействия. Модель не вызывает API — она пишет Python-скрипт, который запускается в изолированной песочнице и обращается к поисковой инфраструктуре Perplexity через специальный SDK. Этот SDK разбивает поисковый движок на атомарные функции: получение результатов, фильтрация, дедупликация, ранжирование. Модель комбинирует их по своему усмотрению под конкретную задачу.

СистемаРезультат на CVE-задачеРасход токенов
Search as Code (Perplexity)Задача выполнена полностьюНа 85% меньше стандартного пайплайна
Конкурирующие системыМенее 25% данныхНе указан

Архитектура состоит из трёх слоёв. Верхний — сама языковая модель, которая понимает задачу и выбирает стратегию поиска. Средний — песочница, где исполняется сгенерированный код. Нижний — Agentic Search SDK, дающий коду доступ к компонентам поисковой инфраструктуры на уровне отдельных операций. Стандартный поисковый API при этом никуда не исчезает: он остаётся для простых вопросов, где многоступенчатый пайплайн избыточен.

На задаче поиска 200 CVE-уязвимостей агент использовал на 85% меньше токенов по сравнению со стандартным пайплайном.

Instead of querying a rigid search engine over multiple rounds, Search as Code lets the model build a custom pipeline on the fly using basic search primitives. | Image: Perplexity
Instead of querying a rigid search engine over multiple rounds, Search as Code lets the model build a custom pipeline on the fly using basic search primitives. | Image: Perplexity · Источник: The Decoder

Ключевое преимущество подхода — управление контекстным окном. Традиционные поисковые пайплайны заполняют контекст агента нерелевантными данными, потому что логика фильтрации зашита в самом API и недоступна для изменения. Когда агент пишет собственные фильтры, в контекст попадает только то, что нужно. Это особенно критично при длинных исследовательских сессиях, где накопленный «мусор» в контексте деградирует качество ответов.

Для демонстрации Perplexity выбрала задачу из области кибербезопасности: агент должен был найти данные о 200 критических уязвимостях (CVE), опубликованных с 2023 по 2025 год, — официальные бюллетени вендоров, затронутое ПО и точные версии с исправлениями. Новостные статьи и блоги не засчитывались. Агент на базе SaC написал трёхэтапный скрипт: параллельные запросы с учётом форматов бюллетеней конкретных вендоров (Mozilla, Google и других), анализ пробелов и целевые дозапросы, финальная верификация через схему данных. Итог — задача выполнена при расходе токенов на 85% ниже стандартного пайплайна; конкурирующие системы справились менее чем с четвертью данных.

Perplexity сравнила SaC с Responses API от OpenAI и Managed Agents от Anthropic на пяти бенчмарках. По заявлению компании, новая архитектура лидирует на четырёх из них; единственная категория, где разрыв минимален, — бенчмарк HLE. Наибольшее преимущество зафиксировано на WANDR — собственном бенчмарке Perplexity для широких исследовательских задач, который компания планирует опубликовать. Самостоятельно проверить эти цифры пока невозможно: бенчмарки подготовлены и опубликованы самой Perplexity.

SaC вписывается в более широкую тенденцию, которую фиксируют исследователи: код становится основным операционным слоем для агентов. Детерминированные среды исполнения берут на себя батчинг и фильтрацию, тогда как языковая модель отвечает за стратегию. Отдельное исследование, упомянутое в материале, показало, что популярные поисковые агенты нередко «жульничают» на бенчмарках — вместо реального поиска в сети они извлекают ответы из обучающих данных и используют поиск лишь для подтверждения. При тестировании на свежих фактах все такие системы теряли от 25 до 40 пунктов. Search as Code не решает эту проблему напрямую, но программируемая фильтрация делает подобный обход сложнее. Архитектура уже развёрнута в Perplexity Computer и Agent API.