Инструменты30 сентября 2026 г., 13:17 МСК🤖 Auto

Perplexity представила Photon: Rust-движок, ускоривший поиск в 12 раз

Perplexity анонсировала собственный движок Photon на Rust, сократив p99-задержку с 800 мс до 65 мс. Одновременно запущен режим Fast Search для AI-агентов: дешевле на 68%, но с компромиссом в релевантности.

Баннер новости 8592

Кризис старого движка и рождение Photon

Perplexity полностью заменила форкнутый open-source движок на собственную разработку Photon, написанную на Rust. Решение принято из-за критических ограничений старой системы при росте индекса: хвостовая задержка (p99) достигала 800 мс, а слияние индексов на диске вызывало пиковые нагрузки до 1.2 секунды. Кроме того, развертывание новых кластеров занимало более недели.

Photon обрабатывает 100% продакшен-трафика. Ключевые архитектурные решения:

  • Адаптивные постинг-листы: короткие списки хранятся inline, длинные — блоками с galloping search или битовыми картами (bitmaps) для мгновенной проверки вхождения.
  • Docblob records: компактные записи с кодировкой Elias-Fano. Ранжирование требует всего 1 lookup на документ.
  • Batched async reads: чтение с диска через io_uring без блокировок, кэширование через CLOCK-алгоритм.
  • Разделение сборки и обслуживания: индексаторы строят версии на YTsaurus, контроллер плавно переключает группы, предварительно прогревая кэш запросами из логов.

Производственные метрики

Внедрение Photon дало радикальное улучшение показателей. Движок использует на 20% меньше серверов и хранит в 2.5 раза больше данных на документ, что улучшило качество ранжирования. Примечательно, что фиксация данных в памяти через mlock потребовала бы в 4.6 раза больше resident memory, чем текущее решение Photon.

МетрикаСтарый движокPhoton (новый)
Задержка p99 (retrieval + ranking)~800 мс~65 мс
Задержка p50Не указано160 мс
Задержка p95Не указано230 мс
Потребление серверовБаза-20%
Данные на документБаза+150% (в 2.5 раза больше)

Fast Search: оптимизация для AI-агентов

На базе Photon запущен режим Fast Search в Perplexity Search API. Он использует облегченное ранжирование, специально заточенное под агентов. Тестирование на 6 бенчмарках (WideSearch, BrowseComp, DSQA, FRAMES, SEAL-0, SEAL-Hard) по 3 554 задачам показало:

  • Стоимость: $59.73 за выполнение задач против $187.60 у стандартного режима. Экономия составляет 68%.
  • Цена запроса: $1 за 1 000 запросов.

Однако есть компромисс. На внутренних бенчмарках для сложных запросов релевантность (DCG) упала с 2.45 до 2.21, а доступность ответов — с 0.596 до 0.567. Perplexity рекомендует Fast Search для повседневных циклов агентов, а стандартный режим — для сложных и неоднозначных запросов.

Сравнение с конкурентами

Fast Search позиционируется как один из самых быстрых и дешевых вариантов на рынке. Ниже приведено сравнение с ключевыми игроками в сегменте быстрого поиска.

ПараметрPerplexity Fast SearchExa InstantTavily ultra-fast
Параметр APIsearch_type: "fast"type: "instant"search_depth: "ultra-fast"
Задержка (vendor-reported)160 мс p50, 230 мс p95~250 мсНе указано (ниже других глубин)
Цена за 1K запросов$1$4$8 (pay-as-you-go)
Результатов на запрос1–2010 (базовая цена)Не указано
ОграниченияНиже релевантность, чем у defaultДоп. плата за лишние результатыНиже релевантность

Доступ к Fast Search осуществляется через API. Пример запроса:

POST 'https://api.perplexity.ai/search'
Authorization: Bearer $PERPLEXITY_API_KEY
Content-Type: application/json
{
  "query": "latest stable Rust release",
  "search_type": "fast",
  "max_results": 5
}

Источник: MarkTechPost ↗