Progettare e valutare una Search API orientata all'IA

Costruzione di una Search API scalabile che gestisce 200 milioni di query giornaliere utilizzando recupero ibrido e cura intelligente del contesto per modelli IA

AutoriPerplexity Research

La creazione di una Search API scalabile e basata sull'intelligenza artificiale presenta sfide di ricerca uniche all'intersezione tra il recupero delle informazioni, l'IA e la progettazione dei sistemi. A differenza dei servizi tradizionali che operano su dati circoscritti, una Search API deve indicizzare continuamente miliardi di documenti, comprendere l'intento delle query in diverse lingue e domini e fornire risultati pertinenti nel giro di pochi millisecondi. In un mondo di agenti IA, una Search API deve anche curare attentamente il contesto fornito ai modelli degli sviluppatori per garantire che tali modelli funzionino in modo ottimale e incorporino informazioni il più accurate possibile. L'efficace ingegneria del contesto richiede che l'API non solo catturi la rilevanza a livello di documento, ma tratti le singole sezioni e gli intervalli dei documenti come unità di primo livello a sé stanti.

In questo articolo presentiamo la progettazione e la valutazione della Perplexity Search API. Esploriamo innanzitutto l'architettura e le decisioni tecniche chiave alla base della nostra infrastruttura di ricerca in produzione che elabora 200 milioni di query al giorno. La nostra architettura combina meccanismi di recupero ibridi, pipeline di ranking a più stadi, indicizzazione distribuita e analisi dinamica attraverso un modulo di comprensione dei contenuti che si auto-migliora.

Descriviamo poi il nostro approccio alla valutazione empirica delle prestazioni della Search API tramite un framework di valutazione appena reso open source. Attraverso un benchmarking completo insieme alle API commerciali esistenti, dimostriamo prestazioni all'avanguardia sia in termini di qualità che di latenza. La Perplexity Search API è disponibile per gli sviluppatori di tutto il mondo a partire da oggi.

[Trova search_evals su GitHub]

Costruire un sistema di ricerca ottimizzato per i modelli di IA

Sin dalla nostra fondazione, abbiamo compreso che solide funzionalità di ricerca sarebbero state fondamentali per consentire la creazione dei prodotti di IA che definiscono la categoria che desideravamo distribuire. Originariamente, speravamo che queste funzionalità esistessero già in una forma disponibile pubblicamente. Abbiamo sperimentato con il portfolio di API di ricerca disponibili alla fine del 2022 e la primissima versione del motore di risposta di Perplexity ha effettivamente incorporato alcune di queste offerte. Nello specifico, analizzavamo le query degli utenti, formulavamo e inviavamo richieste a queste API e raccoglievamo i risultati come contesto per la nostra pipeline di generazione a valle.

Tuttavia, con l'aumento degli utenti di Perplexity, ci siamo resi conto rapidamente che queste API non sarebbero state in grado di scalare insieme alla nostra crescita. I prezzi che abbiamo riscontrato erano esorbitanti, con un importante fornitore di API che addebitava 200 dollari per mille query. Ma, cosa ancora più grave, queste API legacy semplicemente non erano progettate per i nuovi paradigmi di recupero introdotti dai sistemi di IA di frontiera.

Una delle primissime versioni del motore di risposta di Perplexity.

Per cominciare, i formati di richiesta e risposta di queste API legacy erano progettati per un mondo in cui gli esseri umani sarebbero stati gli esclusivi consumatori dei risultati di ricerca. Di conseguenza, queste API davano priorità ai risultati a livello di documento, escludendo informazioni più granulari rivelate da unità sub-documentali. Il successo di un modello di IA dipende dalla qualità e dalla compattezza del contesto fornito, e abbiamo constatato in prima persona come un recupero troppo ampio potesse compromettere i modelli di IA, indipendentemente da quanto i documenti recuperati nel loro insieme potessero apparire pertinenti. I nostri tentativi di forzare la precisione su risultati imprecisi hanno avuto un successo limitato.

Abbiamo anche osservato che le API legacy erano troppo obsolete o troppo lente. Le API di ricerca sviluppate in modo indipendente si basavano su indici incompleti e aggiornati troppo raramente. Le API basate sullo scraping, come le varie API SERP non ufficiali per Google Search, beneficiavano di un indice più completo ma offrivano una latenza inaccettabilmente alta a causa dell'inefficienza intrinseca nell'interrogare un motore di ricerca di terze parti. L'elevata latenza rendeva le API inadatte per applicazioni rivolte all'utente, mentre l'obsolescenza rendeva i set di risultati inutilizzabili per qualsiasi sistema di IA che aspirasse a essere accurato e affidabile.

Infine, abbiamo osservato la biforcazione dell'ecosistema di IA tra ricerca lessicale e ricerca semantica, con l'emergere di sistemi sovra-ottimizzati per una modalità rispetto all'altra. Abbiamo assistito all'ascesa di database vettoriali che non riuscivano a supportare adeguatamente nemmeno semplici filtri booleani. I backend di ricerca tradizionali non hanno fatto molto meglio, con un supporto primitivo per le opportunità di ranking semantico e recupero sbloccate dall'IA.

Poiché ci siamo resi conto che migliorare ulteriormente Perplexity avrebbe richiesto la costruzione di una nostra infrastruttura di ricerca dedicata, abbiamo distillato le nostre osservazioni in tre criteri chiave:

Completezza, freschezza e velocità: l'indice di ricerca deve essere completo, costantemente aggiornato e progettato per una latenza in tempo reale.

Comprensione dei contenuti granulare: la fragilità dei modelli di IA e le finestre di contesto limitate richiedono che i risultati di ricerca siano presentati e classificati al livello più granulare possibile.

Recupero ibrido e ranking: sia le pipeline di recupero che quelle di ranking devono incorporare segnali lessicali e semantici affinché i risultati siano utili per l'IA.

Perplexity oggi, potenziata dalla nostra infrastruttura di ricerca su scala internet, ora disponibile tramite Perplexity Search API.

Infrastruttura di crawling e indicizzazione

Operare su scala Perplexity richiede un'infrastruttura in grado di mappare in modo completo il web e rispondere alla sua costante evoluzione. Il nostro indice di ricerca traccia oltre 200 miliardi di URL unici, con la capacità di tracciarne molte centinaia di miliardi in più.

Garantire che il nostro indice copra una porzione sufficientemente completa di internet e che ogni documento rifletta lo stato più recente è un'impresa difficile. Esiste una tensione intrinseca tra completezza e freschezza: per un budget di indicizzazione fisso, le operazioni di aggiornamento per le pagine esistenti devono competere con le operazioni di indicizzazione per le nuove pagine non visitate. Bilanciamo questa tensione attraverso una combinazione di scaling (che allenta il vincolo di ottimizzazione aumentando il budget di indicizzazione) e prioritarizzazione basata su ML (che garantisce che ogni operazione di indicizzazione sia massimamente preziosa per l'indice nel suo insieme).

Abbiamo costruito un indice e un apparato di crawling su scala exabyte che scala orizzontalmente sia con le dimensioni che con il volume delle query. I crawler e le flotte di indicizzazione di Perplexity comprendono collettivamente decine di migliaia di CPU e centinaia di terabyte di RAM, con un margine considerevole per un ulteriore scaling. Uniamo questa infrastruttura di calcolo con un equilibrio di archiviazione fredda e calda. Utilizziamo sia modelli appresi che euristiche ottimizzate per determinare quali documenti debbano essere mantenuti caldi, dando priorità ai documenti di domini autorevoli, documenti che coinvolgono argomenti poco trattati e altre categorie con un potenziale sproporzionato di arricchire il nostro indice.

Questa infrastruttura consente a Perplexity di elaborare decine di migliaia di operazioni di indicizzazione al secondo. Ma anche con questo budget relativamente generoso, la scala di internet è troppo vasta per indicizzare ogni singolo URL su base frequente e ricorrente. È qui che entra in gioco l'IA. Addestriamo un modello di IA per prevedere se un determinato URL candidato debba essere indicizzato. L'obiettivo dell'addestramento è progettato per garantire la calibrazione della nostra decisione di indicizzazione sia sull'importanza che sulla probabile frequenza di aggiornamento dello specifico URL. Ci affidiamo anche all'IA per dirci esattamente quando programmare l'operazione di indicizzazione. Per i siti con cadenze di pubblicazione e aggiornamento di routine, questo ci consente di differire le operazioni al momento in cui è probabile che siano più utili. Attraverso il continuo affinamento di questi modelli di IA, siamo in grado di mantenere un indice che soddisfi i requisiti sia di completezza che di freschezza.

Sebbene la nostra infrastruttura di crawling scali facilmente orizzontalmente, siamo consapevoli che gli operatori dei siti web affrontano vincoli tecnici differenti. Prestiamo attenzione a mantenere un tasso prevedibile e gestibile di richieste verso qualsiasi determinato dominio. PerplexityBot, il nostro crawler di ricerca, è conforme ai limiti espliciti stabiliti nei file robots.txt o, in assenza di limiti specificati dal dominio, alle norme standard del settore riguardanti i tassi di richiesta. Regoliamo anche il nostro comportamento di crawling quando rileviamo l'indisponibilità di un sito. Il nostro sistema distribuito è architettato per applicare questi limiti anche attraverso decine di migliaia di operazioni simultanee.

Comprensione dei contenuti auto-migliorante su scala internet

Anche con uno degli indici di ricerca più grandi e aggiornati del pianeta, la qualità dei risultati di ogni query dipende dalla comprensione da parte del nostro sistema del contenuto di ogni documento. Qui affrontiamo una sfida fondamentale: il web è un luogo disordinato. Nessun insieme fisso di regole di parsing può gestire l'infinita varietà di layout, strutture e stili presenti in tutto internet.

Abbiamo risolto questa sfida sviluppando un modulo di comprensione dei contenuti che analizza i siti web ed estrae contenuti semanticamente significativi utilizzando set di regole dinamici. Un sito web ricco di dati ben strutturati sotto forma di elenco o tabella può beneficiare di regole di estrazione e analisi più schematiche, mentre un altro sito web che presenta principalmente contenuti generati dagli utenti a forma libera può richiedere un set di regole più flessibile. Poiché il web è per lo più statico su brevi periodi di tempo, scopriamo che la durata di una determinata regola è relativamente lunga. Ma man mano che i siti si evolvono nel tempo e impariamo di più sui modi migliori per estrarre informazioni, anche i nostri set di regole richiedono una manutenzione continua.

Per facilitare questo adattamento dinamico, ci rivolgiamo (ovviamente) all'IA. Su scala Perplexity, osserviamo una sezione trasversale incredibilmente ricca del web nel corso della gestione di milioni di query utente ogni ora. Questo costituisce la base per un ciclo di auto-miglioramento iterativo. Osserviamo il comportamento di parsing e gli output estratti dai nostri attuali set di regole attraverso il nostro universo di query. Utilizziamo quindi LLM di frontiera per valutare le prestazioni su due dimensioni primarie:

Completezza: il nostro indice dovrebbe ricevere quanto più contenuto semanticamente significativo possibile, evitando al contempo l'estrazione spuria di materiale non informativo o privo di senso.

Qualità: il nostro indice si basa su contenuti di alta qualità sia nella sostanza che nella forma. Le informazioni dovrebbero essere acquisite in modo tale da preservare la struttura e il layout del contenuto originale.

Si noti che completezza e qualità presentano un'altra tensione intrinseca: ottimizzare manualmente per la qualità è possibile, ma le regole di analisi risultanti potrebbero non riuscire a catturare contenuti critici. Allo stesso modo, potremmo codificare manualmente regole permissive che applicano un filtraggio minimo al contenuto grezzo, il che potrebbe migliorare la completezza ma a spese della qualità. Ecco perché ci rivolgiamo all'auto-miglioramento guidato dall'IA per far evolvere il nostro set di regole in modo tale da poter ottimizzare per entrambi contemporaneamente in modo adattivo al dominio.

Concretamente, dopo ogni valutazione delle prestazioni di analisi basata su LLM, il nostro sistema formula una serie di modifiche proposte al set di regole per affrontare le classi di errore più significative. Questi set di regole vengono sottoposti a un'ulteriore convalida, dopo di che distribuiamo la nuova versione nel nostro indicizzatore. Dato che i miglioramenti nella logica di analisi ed estrazione possono solo avvantaggiare le future operazioni di indicizzazione, i nostri investimenti nella reindicizzazione ottimizzata dall'IA sono particolarmente importanti: aggiornare continuamente i documenti ad alto traffico utilizzando la versione più recente di questa logica garantisce un ciclo di auto-miglioramento stretto.

Queste regole sono importanti non solo per le prestazioni di analisi di base, ma anche per la segmentazione in unità sub-documentali. Quando si tratta di LLM di frontiera, ogni token di contesto è prezioso. Un ampio corpo di lavori precedenti ha documentato come le prestazioni degli LLM si degradino con l'aumento della dimensione del contesto e l'inquinamento del contesto con informazioni irrilevanti. Disporre di un'analisi ben strutturata e completa ci consente di scomporre i documenti in segmenti autonomi, ognuno dei quali può essere recuperato e classificato individualmente al momento della query.

Pipeline di recupero e ranking

La ricerca moderna richiede di garantire sia la completezza che la pertinenza con un budget di latenza limitato. La pipeline di recupero e ranking di Perplexity raggiunge questo obiettivo attraverso un'architettura a più stadi che perfeziona progressivamente i risultati con una serie di moduli sempre più sofisticati. Risolviamo i potenziali colli di bottiglia scalando orizzontalmente tutti i punti di congestione nella massima misura possibile.

La pipeline inizia con il recupero dal nostro indice. Non forziamo una scelta tra recupero lessicale e semantico. Piuttosto, interroghiamo l'indice di ricerca tramite entrambe le modalità e uniamo i risultati in un set di candidati ibrido. In questa fase, la priorità è la completezza rispetto alla precisione: le fasi successive della pipeline ottimizzeranno per la precisione.

La pipeline prosegue con fasi di pre-filtraggio, in cui applichiamo euristiche di base e filtri preliminari per rimuovere contenuti chiaramente non rispondenti o obsoleti dal set di candidati.

Utilizziamo quindi molteplici fasi di ranking progressivamente avanzate. Le fasi precedenti si basano su punteggi lessicali e basati su embedding ottimizzati per la velocità. Man mano che il set di candidati viene gradualmente ridotto, utilizziamo modelli di reranker cross-encoder più potenti per eseguire la scultura finale del set di risultati. Grazie ai nostri numerosi investimenti nelle prestazioni di inferenza, siamo in grado di sfruttare architetture di modelli all'avanguardia per queste fasi successive mantenendo bassa la latenza complessiva di ranking.

In tutta questa pipeline, recuperiamo e classifichiamo i risultati sia a livello di documento che sub-documentale. Come discusso sopra, l'IA richiede un'attenta ingegneria del contesto. La nostra pipeline è progettata per far emergere le unità più atomiche possibili al modello, in modo tale che i consumatori a valle possano incorporare quelle precise unità senza trascinare contesti irrilevanti da altre parti dei documenti di origine.

Garantire un'alta qualità durante ogni fase di questa pipeline è possibile solo attraverso la co-progettazione con il portfolio di prodotti di Perplexity. Ogni dettaglio dello stack di ranking è progettato per sfruttare il ricco segnale prodotto dai milioni di richieste utente che serviamo ogni ora del giorno. La stragrande maggioranza di questo segnale è automatizzata, con ogni risposta di Perplexity generata che fornisce un punto dati empirico sulla qualità della ricerca come utilizzato in un flusso di lavoro agentico dal vivo. Combiniamo valutazioni guidate dall'IA con feedback umani dal vivo per arricchire i dati di addestramento per i nostri modelli di embedding e ranking ben oltre ciò che qualsiasi set di dati costruito manualmente può offrire.

Questa sinergia tra ricerca e prodotto è unica per Perplexity. I motori di ricerca legacy sono limitati al segnale grossolano fornito dalla telemetria dei blue-link. Le nuove offerte di ricerca hanno tentato di implementare alcuni di questi concetti avanzati di IA, ma mancano di ambienti del mondo reale che possano convalidare la qualità della ricerca e fornire la ricchezza di segnale necessaria per rapidi cicli di miglioramento. Siamo fortunati ad avere l'ingrediente mancante: un banco di prova dal vivo per la qualità della ricerca, alimentato da LLM di frontiera e continuamente testato sul campo da milioni di utenti curiosi in tutto il mondo.

Stabilire una nuova frontiera per la qualità e le prestazioni

Dopo aver costruito la Perplexity Search API e l'SDK per rendere la nostra infrastruttura di ricerca disponibile agli sviluppatori di tutto il mondo, abbiamo voluto capire come le varie offerte di API commerciali si confrontassero nei casi d'uso di IA del mondo reale. È diventata prassi comune valutare i modelli di IA stessi, ma avevamo bisogno di una variante su questo schema: valutare la qualità delle API di ricerca quando richiamate dai modelli di IA.

Abbiamo innanzitutto guardato all'ecosistema open source per comprendere lo stato dell'arte. Abbiamo trovato molti degli ingredienti chiave per una valutazione rigorosa, ma nessun framework che integrasse questi ingredienti in una soluzione di benchmarking plug-and-play. Abbiamo quindi deciso di sviluppare un framework di valutazione che potesse essere utilizzato non solo da Perplexity, ma da qualsiasi ricercatore o sviluppatore che cercasse di fare il benchmark delle API di ricerca.

Utilizzando questo framework di valutazione, abbiamo rigorosamente testato la Perplexity Search API insieme ad altre offerte. Ottimizzare le prestazioni di ricerca è complesso, con molti compromessi sfumati tra qualità e velocità. A vantaggio degli sviluppatori, abbiamo riscontrato che la Perplexity Search API stabilisce un nuovo stato dell'arte sia per qualità che per latenza. Gli sviluppatori non devono più scegliere tra la costruzione di applicazioni velocissime e la garanzia di risultati di alta qualità: con Perplexity, possono avere entrambi.

Qualità della ricerca rispetto alla latenza su SimpleQA, FRAMES, BrowseComp e HLE.

Progettare valutazioni affidabili per flussi di lavoro di ricerca agentica

Abbiamo iniziato definendo tre principi guida per il nostro framework di valutazione:

Spettro di complessità: il framework di valutazione dovrebbe misurare le prestazioni su casi d'uso di IA agentica sia semplici che complessi.

Neutralità: il framework di valutazione dovrebbe valutare tutte le API su una base di parità.

Semplicità: sebbene alcuni casi d'uso possano essere complessi, il framework stesso dovrebbe essere il più semplice possibile in modo che altri possano comprenderlo, riprodurre i risultati ed estendere il framework con la minima noia.

Il nostro framework di valutazione leggero, search_evals, raggiunge questi obiettivi attraverso un design modulare semplice. Abbiamo sviluppato due harness per agenti IA per catturare sia i casi d'uso di ricerca single-shot classici che i flussi di lavoro di ricerca agentica avanzati (esemplificati da vari prodotti di "Ricerca approfondita" ampiamente disponibili sul mercato consumer). Entrambi gli harness sono stati implementati in modo diretto che lascia poco spazio a vantaggi nascosti.

Per guidare le nostre valutazioni, abbiamo adottato quattro benchmark: SimpleQA e FRAMES per la ricerca a singolo passaggio, insieme a BrowseComp e HLE per la Ricerca approfondita. Collettivamente, questi benchmark forniscono parametri ben accettati per gli agenti di conoscenza. Seguendo la convenzione stabilita, valutiamo tutti i benchmark utilizzando la stessa metodologia di classificatore basata su prompt utilizzata nel lavoro originale. Le precise implementazioni dei benchmark (inclusa la logica del valutatore) possono essere riviste nel nostro repository GitHub.

Abbiamo progettato il framework tenendo a mente la riproducibilità e l'estensibilità. Sia i punteggi a livello di attività che gli output dell'agente sottostante vengono archiviati con ogni esecuzione. Harness, benchmark e offerte di API di ricerca aggiuntive possono essere facilmente integrati. Ricercatori e sviluppatori possono leggere i nostri documenti su GitHub per ulteriori informazioni sull'estensione del framework per soddisfare le proprie esigenze precise.

Risultati della valutazione

Armati di questo framework di valutazione, abbiamo deciso di valutare la nostra Search API in confronto con altre offerte di API. In tutti i benchmark testati, Perplexity si distingue come l'API più veloce e di qualità più elevata sul mercato.

Latenza delle query ai percentili p50, p75 e p95 tra i provider di ricerca.

Abbiamo riscontrato che i nostri investimenti sopra descritti nell'efficienza dell'indice, del recupero e del ranking hanno dato ottimi risultati. La latenza mediana di Perplexity si attesta a 358ms, oltre 150ms davanti al secondo fornitore più veloce. La latenza al 95° percentile rimane comodamente sotto gli 800ms. Con le metriche TTFT (time-to-first-token) lunghe dei modelli di frontiera odierni, ogni millisecondo conta per creare esperienze utente piacevoli. Abbiamo passato gli ultimi due anni a ottimizzare la latenza per i nostri utenti e siamo soddisfatti che quegli stessi investimenti ora avvantaggeranno anche la comunità degli sviluppatori.

Latenza della Search API

(richieste avviate da AWS us-east-1)

p50

p75

p90

p95

Perplexity

358ms

443ms

604ms

763ms

Exa

1375ms

1499ms

1798ms

2188ms

Brave

513ms

637ms

728ms

808ms

SERP Based*

1342ms

1586ms

1743ms

1790ms

Percentili di latenza dell’API di ricerca per le richieste avviate da AWS us-east-1.

* Molti fornitori di API di ricerca utilizzano lo scraping SERP come base per i loro risultati. Per catturare le prestazioni di tali approcci, utilizziamo una rappresentativa API basata su Google SERP offerta da Tavily.

Questo vantaggio di velocità non va a scapito della qualità. La Perplexity Search API produce prestazioni all'avanguardia sia nella ricerca a singolo passaggio che nelle impostazioni di Ricerca approfondita. Su ogni benchmark testato, Perplexity è leader nel fornire risultati di alta qualità in grado di alimentare flussi di lavoro di IA di varia complessità. Il margine tra Perplexity e la migliore alternativa è particolarmente pronunciato su SimpleQA e HLE, indicando che questi risultati sono robusti lungo tutto lo spettro della complessità del compito.

Punteggi di qualità della ricerca sui benchmark di ricerca a singolo passaggio SimpleQA e FRAMES e sui benchmark di ricerca approfondita BrowseComp e HLE.

Come per la latenza, la nostra leadership nella qualità della ricerca deriva dalla nostra leadership nella costruzione di prodotti di IA piacevoli e altamente trafficati. I nostri milioni di utenti utilizzano Perplexity per soddisfare la loro curiosità su ogni argomento immaginabile, e i segnali di qualità e pertinenza risultanti consentono ai nostri modelli di ricerca di migliorare a ogni ora che passa.

Benchmark di qualità della Search API

Ricerca a singolo passaggio

Ricerca approfondita

SimpleQA

FRAMES

BrowseComp

HLE

Perplexity

.930

.453

.371

.288

Exa

.781

.399

.265

.242

Brave

.822

.320

.221

.191

SERP Based*

.890

.437

.348

.248

Punteggi di qualità dell’API di ricerca su SimpleQA, FRAMES, BrowseComp e HLE.

Siamo ancora agli albori dei motori di ricerca nativi per l'IA e l'arte e la scienza della misurazione si evolveranno senza dubbio. Invitiamo la comunità a contribuire sviluppando metodi rigorosi e creativi per valutare i motori di ricerca nell'era degli agenti IA.

Il blocco di costruzione per il prossimo capitolo dell'IA

Il futuro dei sistemi agentici e degli assistenti intelligenti dipenderà dalla disponibilità di ricche interfacce programmatiche nella conoscenza collettiva mondiale. I motori di ricerca legacy di oggi hanno saturato l'utilizzo a circa 10¹⁰ query al giorno, una cifra che ha probabilmente raggiunto il picco. La prossima generazione di sistemi di ricerca e recupero servirà ordini di grandezza in più di richieste, poiché un universo sempre crescente di agenti IA si affida a essi per informazioni accurate in tempo reale.

I nostri sforzi fino ad oggi ci hanno posizionato come il motore di ricerca più veloce e performante accessibile via API. Ma saranno necessarie innovazioni ancora più ambiziose per alimentare il prossimo capitolo dell'IA. Come scalare efficacemente questi sistemi a fronte di una domanda sempre crescente? Come ottimizzare questi sistemi alla luce di nuovi approcci all'ingegneria del contesto e al post-addestramento? E come navigare la tensione sempre presente tra completezza, recenza e latenza? Queste sono questioni aperte che Perplexity, con la nostra combinazione di impronta di prodotto, scala e talento tecnico, è posizionata in modo unico per affrontare.

Citazione

BibTeX
@online{perplexity2025ArchitectingAndEvaluatingAnAiFirstSearchApi,
  author = {{Perplexity} and Aleksandr Bogutskii and Aleksandr Nikolenko and Aleksei Bykov and Alexander Pecheny and Alexandr Yarats and Arsenii Shevchenko and Denis Bykov and Dmitry Pervukhin and Ismail Gadzhiev and James Liounis and Kevin Hu and Kirill Priemko and Maksim Gaiduk and Maksim Morozov and Marko Kevac and Michael Liang and Mikhail Galanin and Nandor Licker and Nataliya Pevgova and Nikita Kireev and Nikolai Tretiak and Paul Schofield and Saif Ali Raja and Saleh Alghusson and Sebastian Sepulveda and Sergei Miller and Svyatoslav Feldsherov and Vitalii Polshkov and Vladimir Zaytsev and Denis Yarats},
  title = {{Architecting and evaluating an AI-first Search API}},
  date = {2025-09-25},
  url = {https://www.perplexity.ai/hub/blog/architecting-and-evaluating-an-ai-first-search-api}
}