Perplexity представила Photon — движок, который ищет и ранжирует веб-страницы до того, как языковая модель соберёт из них ответ. Он заменил открытый движок, который компания годами поддерживала как форк, и теперь обслуживает весь поиск Perplexity; быстрый режим на его основе доступен в Search API для агентов.
Быстрый режим сокращает задержку и стоимость поиска, сохраняя близкое качество на агентных тестах. Внутренние показатели релевантности у него ниже, чем у стандартного режима.
160 мсмедианная задержка быстрого режима
230 мсзадержка быстрого режима p95
68%снижение стоимости задачи
- По словам Perplexity, раньше p99 задержки поиска достигал 800 мс, а при слиянии индексов на 10–15 минут вырастал до 1,2 с; индексы не помещались в память, а синхронизация нового кластера занимала больше недели.
- Photon использует инвертированный индексi: короткие списки документов хранятся в нём напрямую, длинные — блоками в разреженных массивах или битовых картах; номера документов сжимаются кодированием Элиаса — Фаноi.
- Для каждой страницы есть компактная запись с частотами слов, позициями и полями, где они встречаются. Ранжирование проходит в два этапа, а обход списков в духе WAND заранее отбрасывает документы, которые не попадут в выдачу.
- Данные читаются асинхронно, в том числе с диска через io_uringi; кэш освобождается по алгоритму CLOCK. Индекс собирают отдельно от обслуживания запросов, а новую группу сначала прогревают и лишь затем подключают к трафику.
- На 3554 задачах из шести агентных бенчмарков — WideSearch, BrowseComp, DSQA, FRAMES, SEAL-0 и SEAL-Hard — быстрый режим набрал 64,3%, стандартный — 64,0%.
- Внутренние тесты показали снижение DCG с 2,45 до 2,21 и доли запросов, где найденные страницы содержат ответ, с 59,6% до 56,7%.
- Photon хранит примерно в 2,5 раза больше данных на документ и использует примерно на 20% меньше серверов, чем прежняя система; над движком работали небольшая команда и постоянные кодинг-агенты.
Обсуждение
0Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖