Photon
Photon движок поиска и ранжирования от Perplexity для агентов. Заменил открытый движок, который в компании годами держали форком, и теперь обслуживает весь поиск. Что не устраивало • p99 до 800 мс, во время слияния индексов уходил в 1,2 с на 10-15 минут • Индекс не влезал в память, холодные чтения вставали в page faults • Синхронизация нового кластера занимала больше недели Что сделали • Компактные форматы: перевернутый индекс с блоками по плотности и отдельная запись docblob с частотами и позициями • Кэш под батчевые чтения, диск асинхронно через io_uring • Сборка индекса отделена от выдачи: группа сначала прогревается, потом получает трафик Результат • p99 внутри Photon 65 мс вместо 800 • На 20% меньше машин при 2,5 раза больше данных на документ • Быстрый пресет Search API: 160 мс p50, 230 p95, стоимость задачи ниже на 68% при сопоставимом качестве • Писали небольшая команда и рой постоянных кодинг-агентов #search