Perplexity com Photon: 12x mais rápido. O que muda?

Com certeza! Prepare-se para uma dose de tecnologia de ponta na voz do Lucas Tech:


Perplexity REVOLUCIONA a Busca com ‘Photon’: O Motor em Rust que é Puro Foguete!

Olá, pessoal! Aqui é o Lucas Tech e, se você, assim como eu, é apaixonado por tecnologia e está sempre de olho nas inovações que transformam o nosso dia a dia digital, prepare-se para uma notícia que vai fazer seus olhos brilharem! A Perplexity, aquela empresa que a gente já conhece pelo seu jeito super inteligente de pesquisar e resumir informações, acabou de lançar o "Photon"!

E não é pouca coisa, galera! O Photon é o novo coração da Perplexity, um motor de busca e ranqueamento feito do zero, usando a linguagem de programação Rust. Isso significa muita velocidade e eficiência! Ele agora é responsável por todo o tráfego de produção da plataforma e ainda por cima alimenta o novo modo "Fast Search" na API de busca da Perplexity. Sabe aqueles milissegundos que fazem a diferença? O Photon entrega uma latência de 160 ms para 50% das chamadas (p50) e incríveis 230 ms para 95% (p95). É coisa de outro mundo!

Entendendo o ‘Photon’: O Novo Coração da Perplexity

Então, o que é exatamente o Photon? Como eu mencionei, ele foi construído do zero em Rust, uma linguagem conhecida pela sua performance e segurança. Ele substitui um motor open-source que a Perplexity usava antes e agora é quem faz todo o trabalho pesado de encontrar e classificar as informações para a gente.

E a pergunta que não quer calar: "Dá pra usar?" Sim, ele está disponível como uma API hospedada. É só setar search_type: "fast" no POST /search e pagar $1 a cada 1.000 requisições. Mas atenção: o Photon não é open-source, então não dá pra hospedar ele por conta própria, beleza?

Por Que a Perplexity Trocou o Motor Antigo?

Bom, nem tudo são flores, e o motor anterior, apesar de ter servido bem, começou a mostrar a idade e alguns desafios que eles precisavam superar. Pensa só nestes problemas:

  • Latência de Cauda (Tail Latency) Alta: Pensa numa fila de carro. Os primeiros passam rápido, mas os últimos ficam parados por um tempão. O p99 de produção chegava perto dos 800 ms! Isso acontecia porque o banco de dados estava tão grande que não cabia mais na RAM, e as leituras "frias" causavam engasgos enormes.
  • Picos na Fusão de Índices: Durante a união de novos dados no disco, a latência podia ir pra uns 1.2 segundos por 10 a 15 minutos! Imagina o impacto nos usuários!
  • Recuperação Lenta: Se algo dava errado e precisavam de um novo cluster, levava mais de uma semana pra tudo voltar ao normal, e ainda com respostas incompletas. Uma dor de cabeça gigante!

A equipe da Perplexity, com a sabedoria que lhes é peculiar, percebeu que era mais fácil e barato construir algo do zero do que ficar remendando o motor antigo. E o resultado é o Photon!

Como o ‘Photon’ Conseguiu Toda Essa Magia?

Agora, vamos ao "pulo do gato"! Como esse motorzão consegue ser tão rápido e eficiente? Ele foi pensado em cada detalhe!

Basicamente, quando você faz uma busca, um balanceador de carga manda a requisição pra um "broker" do Photon. Esse broker distribui a tarefa para um grupo de "shards" (partes do índice) e fica de olho pra ver se não tem nenhum gargalo. Cada shard faz a recuperação e as duas etapas de ranqueamento. No final, o broker junta tudo e pega os dados importantes dos documentos.

E as técnicas que eles usaram são show de bola:

  • Listas de Postagem Adaptativas: Eles otimizam como os documentos que contêm um termo são armazenados. Listas pequenas ficam ‘inline’ (direto na página), enquanto as maiores são divididas em blocos. Cada bloco escolhe a melhor forma de armazenar os IDs, usando arrays para dados ‘esparsos’ e ‘bitmaps’ para dados ‘densos’. Isso economiza espaço e tempo!
  • Travessia com Orçamento (WAND-like): Pense nisso como uma busca inteligente que não gasta energia à toa. Ele calcula um "limite superior" (o potencial máximo de pontuação) de um documento primeiro. Só se esse limite for promissor é que ele vai ler as frequências exatas dos termos. É tipo só pagar para ver a carta se ela tiver chance de ganhar o jogo!
  • Registros Docblob: Cada documento tem um "registro compacto" com frequências, máscaras de campo e posições. Eles usam uma codificação super eficiente (Elias-Fano), então só decodificam o que precisam. Pra ranquear um documento, é só uma consulta!
  • Leituras Assíncronas em Lote: O Photon sabe onde os registros estão, então ele agrupa as leituras de disco. Ele verifica o cache primeiro e, se não encontrar, manda várias solicitações de disco de uma vez, usando io_uring (uma interface de I/O super otimizada no Linux). Assim, as esperas se sobrepõem e o sistema não trava. Sem travas nos leitores e um sistema de cache inteligente (CLOCK, não LRU compartilhado).
  • Construção e Atendimento Separados: Eles constroem novos índices em servidores separados e depois os "rotacionam" para a produção, um grupo por vez, aquecendo o cache com buscas reais. Isso significa que um índice web completo agora é construído em poucas horas, não em dias ou semanas! É agilidade que fala, né?

Minha Visão

Putz, que avanço! O Photon da Perplexity não é só uma melhoria, é uma verdadeira virada de jogo. A velocidade e eficiência que eles alcançaram com Rust, redesenhando o motor do zero, mostram o poder da engenharia de software de ponta. Isso não só otimiza os custos deles, mas, o mais importante pra nós, usuários, significa buscas muito mais rápidas e respostas quase instantâneas. É o tipo de inovação que empurra os limites do que é possível na web, e a Perplexity está dando um passo gigantesco à frente. Para nós, entusiastas, ver essa dedicação em resolver problemas de escala com soluções tão elegantes é inspirador!

E aí, pessoal, o que vocês acharam dessa novidade da Perplexity? Acredita que outras plataformas de busca vão seguir o mesmo caminho e investir pesado em motores próprios e otimizados? Me conta nos comentários!


Referência: Matéria Original

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima
Tutorial Elevenlabs