Conception et évaluation d'une API de recherche axée sur l'IA
Création d'une API de recherche évolutive traitant 200 millions de requêtes par jour grâce à la recherche hybride et à la gestion intelligente du contexte pour les modèles d'IA
La création d'une API de recherche évolutive et axée sur l'IA présente des défis de recherche uniques à l'intersection de la recherche d'information, de l'IA et de la conception de systèmes. Contrairement aux services traditionnels qui fonctionnent sur des données circonscrites, une API de recherche doit indexer continuellement des milliards de documents, comprendre l'intention des requêtes dans toutes les langues et tous les domaines, et fournir des résultats pertinents en quelques millisecondes. Dans un monde peuplé d'agents IA, une API de recherche doit également soigner le contexte fourni aux modèles des développeurs afin de garantir que ces derniers fonctionnent de manière optimale et intègrent des informations d'une exactitude maximale. Une ingénierie de contexte efficace exige que l'API capture non seulement la pertinence au niveau du document, mais qu'elle traite également les différentes sections et portées des documents comme des unités à part entière.
Dans cet article, nous présentons la conception et l'évaluation de l'API de recherche de Perplexity. Nous examinons d'abord l'architecture et les principales décisions techniques qui sous-tendent notre infrastructure de recherche en production, laquelle traite 200 millions de requêtes par jour. Notre architecture associe des mécanismes de recherche hybrides, des pipelines de classement à plusieurs étapes, une indexation distribuée et une analyse dynamique par le biais d'un module de compréhension du contenu à auto-apprentissage.
Nous décrivons ensuite notre approche pour évaluer empiriquement les performances de l'API de recherche grâce à un nouveau cadre d'évaluation open source. À l'aide de tests comparatifs complets menés parallèlement aux API commerciales existantes, nous démontrons des performances de pointe en matière de qualité et de latence. L'API de recherche de Perplexity est accessible aux développeurs du monde entier dès aujourd'hui.
[Trouver search_evals sur GitHub]
Créer un système de recherche optimisé pour les modèles d'IA
Dès notre création, nous avons compris que des capacités de recherche robustes seraient essentielles pour permettre le lancement des produits d'IA révolutionnaires que nous voulions proposer. À l'origine, nous espérions que ces capacités existaient déjà sous une forme accessible au public. Nous avons expérimenté le portefeuille d'API de recherche disponibles fin 2022, et la toute première version du moteur de réponses de Perplexity intégrait en fait certaines de ces offres. Plus précisément, nous analysions les requêtes des utilisateurs, formulions et envoyions des requêtes à ces API, puis rassemblions les résultats pour constituer le contexte de notre pipeline de génération en aval.
Cependant, alors que les utilisateurs affluaient vers Perplexity, nous avons rapidement réalisé que ces API ne seraient pas en mesure de suivre notre croissance. Les prix que nous avons rencontrés étaient exorbitants, l'un des principaux fournisseurs d'API facturant 200 $ par millier de requêtes. Plus grave encore, ces API héritées n'étaient tout simplement pas conçues pour les nouveaux paradigmes de recherche introduits par les systèmes d'IA de pointe.
Pour commencer, les formats de requête et de réponse de ces API héritées ont été conçus pour un monde où les humains étaient les seuls consommateurs des résultats de recherche. Par conséquent, ces API privilégiaient les résultats au niveau du document, à l'exclusion d'informations plus précises révélées par des unités sous-documentaires. Le succès d'un modèle d'IA dépend de la qualité et de la concision du contexte fourni, et nous avons constaté de visu à quel point une recherche trop large pouvait perturber les modèles d'IA, indépendamment de la pertinence globale apparente des documents récupérés. Nos tentatives pour imposer la précision à des résultats imprécis n'ont eu qu'un succès limité.
Nous avons également observé que les API héritées étaient soit trop obsolètes, soit trop lentes. Les API de recherche développées de manière indépendante reposaient sur des index incomplets et mis à jour trop rarement. Les API basées sur le web scraping, telles que les différentes API SERP non officielles pour la recherche Google, bénéficiaient d'un index plus complet mais affichaient une latence inacceptable en raison de l'inefficacité inhérente à l'interrogation d'un moteur de recherche tiers. Cette forte latence rendait les API impropres aux applications destinées aux utilisateurs, tandis que l'obsolescence rendait les ensembles de résultats inutilisables pour tout système d'IA espérant être précis et digne de confiance.
Enfin, nous avons observé la bifurcation de l'écosystème de l'IA entre la recherche lexicale et la recherche sémantique, avec l'émergence de systèmes sur-optimisés pour une modalité au détriment de l'autre. Nous avons assisté à la prolifération de bases de données vectorielles incapables de prendre adéquatement en charge de simples filtres booléens. Les moteurs de recherche traditionnels s'en sortaient à peine mieux, avec une prise en charge primitive des opportunités de classement sémantique et de recherche ouvertes par l'IA.
Comprenant que l'amélioration de Perplexity nécessiterait la création de notre propre infrastructure de recherche dédiée, nous avons résumé nos observations en trois critères clés :
Exhaustivité, fraîcheur et rapidité : l'index de recherche doit être exhaustif, constamment mis à jour et conçu pour offrir une latence en temps réel.
Compréhension granulaire du contenu : la vulnérabilité des modèles d'IA et la limitation des fenêtres contextuelles exigent que les résultats de recherche soient présentés et classés au niveau le plus granulaire possible.
Recherche et classement hybrides : les pipelines de recherche et de classement doivent tous deux intégrer des signaux lexicaux et sémantiques pour que les résultats soient utiles à l'IA.
Infrastructure d'exploration et d'indexation
Opérer à l'échelle de Perplexity exige une infrastructure capable de cartographier exhaustivement le web et de s'adapter à son évolution constante. Notre index de recherche suit plus de 200 milliards d'URL uniques, avec une capacité d'en suivre plusieurs centaines de milliards de plus.
S'assurer que notre index couvre une part suffisamment vaste d'Internet et que chaque document reflète l'état le plus récent est une tâche difficile. Il existe une tension inhérente entre l'exhaustivité et la fraîcheur : pour un budget d'indexation fixe, les opérations de rafraîchissement des pages existantes doivent rivaliser avec les opérations d'indexation de nouvelles pages non visitées. Nous équilibrons cette tension en combinant la mise à l'échelle (qui assouplit la contrainte d'optimisation en augmentant le budget d'indexation) et la priorisation pilotée par l'apprentissage automatique (qui garantit que chaque opération d'indexation apporte une valeur maximale à l'index dans son ensemble).
Nous avons développé un dispositif d'exploration et un index à l'échelle de l'exaoctet qui s'étendent horizontalement en fonction de la taille et du volume des requêtes. Les flottes d'exploration et d'indexation de Perplexity regroupent collectivement des dizaines de milliers de processeurs (CPU) et des centaines de téraoctets de mémoire vive (RAM), avec une marge considérable pour une expansion future. Nous associons cette infrastructure de calcul à un équilibre de stockage chaud et froid. Nous utilisons à la fois des modèles appris et des heuristiques ajustées pour déterminer quels documents doivent être conservés en mémoire chaude, en priorisant les documents issus de domaines autoritaires, les documents portant sur des sujets peu couverts et d'autres catégories présentant un potentiel hors norme pour enrichir notre index.
Cette infrastructure permet à Perplexity de traiter des dizaines de milliers d'opérations d'indexation par seconde. Mais même avec ce budget relativement généreux, l'échelle d'Internet reste beaucoup trop vaste pour indexer chaque URL de manière fréquente et récurrente. C'est là qu'intervient l'apprentissage automatique. Nous entrainons un modèle d'apprentissage automatique pour prédire si une URL candidate donnée doit être indexée. L'objectif d'apprentissage est conçu pour nous permettre de calibrer notre décision d'indexation en fonction de l'importance et de la fréquence de mise à jour probable de l'URL spécifique. Nous comptons également sur l'apprentissage automatique pour nous indiquer précisément quand planifier l'opération d'indexation. Pour les sites dont le rythme de publication et de rafraîchissement est régulier, cela nous permet de reporter les opérations au moment où elles seront probablement le plus utiles. Grâce au perfectionnement continu de ces modèles d'apprentissage automatique, nous parvenons à maintenir un index qui répond aux exigences d'exhaustivité et de fraîcheur.
Bien que notre infrastructure d'exploration s'étende facilement de manière horizontale, nous savons que les exploitants de sites Web font face à des contraintes techniques diverses. Nous veillons à maintenir un taux de requêtes prévisible et gérable vers un domaine donné. PerplexityBot, notre robot d'exploration pour la recherche, respecte les limites explicites définies dans les fichiers robots.txt ou, en l'absence de limites spécifiées par le domaine, les normes sectorielles concernant le taux de requêtes. Nous ajustons également notre comportement d'exploration lorsque nous détectons l'indisponibilité d'un site. Notre système distribué est conçu pour faire respecter ces limites, même lors de dizaines de milliers d'opérations simultanées.
Compréhension du contenu à auto-apprentissage à l'échelle d'Internet
Même avec l'un des index de recherche les plus vastes et les plus récents de la planète, la qualité des résultats de chaque requête dépend de la capacité de notre système à comprendre le contenu de chaque document. Nous faisons ici face à un défi fondamental : le web est un espace complexe. Aucun ensemble fixe de règles d'analyse ne peut gérer l'infinie variété des mises en page, structures et styles présents sur l'ensemble d'Internet.
Nous avons résolu ce défi en développant un module de compréhension du contenu qui analyse les sites web et extrait un contenu sémantiquement pertinent à l'aide d'ensembles de règles dynamiques. Un site web riche en données bien structurées sous forme de listes ou de tableaux pourra bénéficier de règles d'analyse et d'extraction plus formelles, tandis qu'un autre site web présentant principalement du contenu généré par les utilisateurs sans structure fixe exigera un ensemble de règles plus souple. Le web étant globalement statique à court terme, la durée de vie d'une règle donnée est relativement longue. Cependant, à mesure que les sites évoluent au fil du temps et que nous découvrons les meilleures manières d'extraire des informations, nos ensembles de règles nécessitent également un entretien continu.
Pour faciliter cette adaptation dynamique, nous faisons (bien sûr) appel à l'IA. À l'échelle de Perplexity, nous observons une coupe transversale incroyablement riche du web lors du traitement de millions de requêtes d'utilisateurs chaque heure. Cela constitue la base d'une boucle d'auto-apprentissage itérative. Nous observons le comportement d'analyse et les résultats extraits de nos ensembles de règles actuels dans l'ensemble de notre univers de requêtes. Nous utilisons ensuite des LLM de pointe pour évaluer les performances selon deux dimensions principales :
Exhaustivité : notre index doit recevoir le plus de contenu sémantiquement pertinent possible, tout en évitant l'extraction parasite d'éléments non informatifs ou absurdes.
Qualité : notre index s'appuie sur un contenu de haute qualité, tant sur le fond que sur la forme. Les informations doivent être saisies de manière à préserver la structure et la mise en page du contenu d'origine.
Il convient de noter que l'exhaustivité et la qualité présentent une autre tension inhérente : optimiser manuellement la qualité est possible, mais les règles d'analyse qui en découlent peuvent ne pas capturer le contenu critique. De même, nous pourrions coder manuellement des règles permissives appliquant un filtrage minimal au contenu brut, ce qui améliorerait l'exhaustivité mais au détriment de la qualité. C'est pourquoi nous faisons appel à l'auto-apprentissage piloté par l'IA pour faire évoluer notre ensemble de règles de manière à optimiser ces deux aspects simultanément et de façon adaptée au domaine.
Concrètement, après chaque évaluation des performances d'analyse par un LLM, notre système formule un ensemble de modifications de règles proposées pour résoudre les catégories d'erreurs les plus importantes. Ces ensembles de règles font l'objet d'une validation supplémentaire, après quoi nous déployons la nouvelle version sur notre indexeur. Étant donné que les améliorations apportées à la logique d'analyse et d'extraction ne peuvent que bénéficier aux futures opérations d'indexation, nos investissements dans la réindexation optimisée par apprentissage automatique revêtent une importance toute particulière : rafraîchir en continu les documents à fort trafic à l'aide de la dernière version de cette logique garantit une boucle d'auto-apprentissage serrée.
Ces règles comptent non seulement pour les performances d'analyse de base, mais aussi pour la segmentation en unités sous-documentaires. En ce qui concerne les LLM de pointe, chaque jeton de contexte est précieux. De nombreux travaux antérieurs ont montré comment les performances des LLM se dégradent à mesure que la taille du contexte augmente et que le contexte est pollué par des informations non pertinentes. Une analyse bien structurée et exhaustive nous permet de décomposer les documents en portées autonomes, dont chacune peut être récupérée et classée individuellement au moment de la requête.
Pipeline de recherche et de classement
La recherche moderne exige de garantir à la fois l'exhaustivité et la pertinence dans le respect d'un budget de latence serré. Le pipeline de recherche et de classement de Perplexity y parvient grâce à une architecture à plusieurs étapes qui affine progressivement les résultats à l'aide d'une série de modules de plus en plus sophistiqués. Nous éliminons les goulots d'étranglement potentiels en mettant à l'échelle horizontale tous les points de congestion possibles dans toute la mesure du possible.
Le pipeline commence par la recherche dans notre index. Nous ne forçons pas le choix entre recherche lexicale et recherche sémantique. Au contraire, nous interrogeons l'index de recherche via ces deux modalités et fusionnons les résultats dans un ensemble de candidats hybrides. À ce stade, la priorité est accordée à l'exhaustivité plutôt qu'à la précision ; les étapes ultérieures du pipeline optimiseront la précision.
Le pipeline se poursuit par des étapes de préfiltrage, au cours desquelles nous appliquons des heuristiques de base et des filtres de premier niveau pour éliminer de l'ensemble des candidats les contenus manifestement non pertinents ou obsolètes.
Nous employons ensuite de multiples étapes de classement de plus en plus avancées. Les premières étapes s'appuient sur des scores lexicaux et basés sur des plongements optimisés pour la vitesse. À mesure que l'ensemble des candidats est progressivement réduit, nous utilisons des modèles de reclassement par encodeur croisé plus puissants pour effectuer le travail final sur l'ensemble des résultats. Grâce à nos nombreux investissements dans les performances d'inférence, nous sommes en mesure d'exploiter des architectures de modèles de pointe pour ces dernières étapes tout en maintenant une faible latence globale de classement.
Tout au long de ce pipeline, nous récupérons et évaluons les résultats au niveau du document et au niveau sous-documentaire. Comme indiqué précédemment, l'IA requiert une ingénierie de contexte minutieuse. Notre pipeline est conçu pour faire remonter au modèle les unités les plus atomiques possibles, afin que les consommateurs en aval puissent intégrer ces unités précises sans importer de contexte non pertinent provenant d'autres parties des documents sources.
Garantir une qualité élevée à chaque étape de ce pipeline n'est possible que grâce à une co-conception avec le portefeuille de produits de Perplexity. Chaque détail de la pile de classement est conçu pour exploiter le signal riche produit par les millions de requêtes d'utilisateurs que nous servons chaque heure de la journée. La grande majorité de ce signal est automatisée, chaque réponse générée par Perplexity fournissant un point de données empirique sur la qualité de la recherche telle qu'elle est utilisée dans un flux de travail agentique en direct. Nous associons des évaluations pilotées par l'IA à des commentaires humains en direct pour enrichir les données d'entraînement de nos modèles de plongement et de classement bien au-delà de ce que tout ensemble de données construit manuellement peut offrir.
Cette synergie entre recherche et produit est propre à Perplexity. Les moteurs de recherche hérités se limitent au signal brut fourni par la télémétrie des liens bleus. Les nouvelles offres de recherche ont tenté d'implémenter certains de ces concepts axés sur l'IA, mais elles manquent d'environnements réels capables de valider la qualité de la recherche et de fournir la richesse du signal nécessaire à des boucles d'amélioration rapide. Nous avons la chance de posséder l'ingrédient manquant : un terrain d'essai en direct pour la qualité de la recherche, propulsé par des LLM de pointe et mis à l'épreuve en continu par des millions d'utilisateurs curieux du monde entier.
Établir de nouvelles frontières pour la qualité et la performance
Après avoir créé l'API de recherche de Perplexity et le SDK pour mettre notre infrastructure de recherche à la disposition des développeurs du monde entier, nous voulions comprendre comment les différentes offres d'API commerciales se positionnaient dans des cas d'utilisation de l'IA dans le monde réel. Il est devenu courant d'évaluer les modèles d'IA eux-mêmes, mais nous avions besoin d'une variante de ce modèle : évaluer la qualité des API de recherche lorsqu'elles sont invoquées par des modèles d'IA.
Nous nous sommes d'abord tournés vers l'écosystème open source pour comprendre les réalisations antérieures. Nous avons trouvé de nombreux ingrédients clés pour une évaluation rigoureuse, mais aucun cadre n'intégrait ces ingrédients dans une solution de test comparative prête à l'emploi. Nous avons donc entrepris de développer un cadre d'évaluation qui pourrait être utilisé non seulement par Perplexity, mais par tout chercheur ou développeur cherchant à évaluer des API de recherche.
À l'aide de ce cadre d'évaluation, nous avons évalué rigoureusement l'API de recherche de Perplexity par rapport à d'autres offres. L'optimisation des performances de recherche est complexe et implique de nombreux compromis nuancés entre la qualité et la vitesse. Pour le plus grand bonheur des développeurs, nous avons constaté que l'API de recherche de Perplexity établit une nouvelle référence en matière de qualité et de latence. Les développeurs n'ont plus à choisir entre la création d'applications ultra-rapides et la garantie de résultats de haute qualité : avec Perplexity, ils peuvent obtenir les deux.
Conception d'évaluations fiables pour les flux de travail de recherche agentiques
Nous avons commencé par définir trois principes directeurs pour notre cadre d'évaluation :
Éventail de complexité : le cadre d'évaluation doit mesurer les performances sur des cas d'utilisation d'IA agentique simples et complexes.
Neutralité : le cadre d'évaluation doit évaluer toutes les API sur un pied d'égalité.
Simplicité : bien que certains cas d'utilisation puissent être complexes, le cadre lui-même doit être aussi simple que possible afin que d'autres puissent le comprendre, reproduire les résultats et l'étendre avec un minimum de difficultés.
Notre cadre d'évaluation léger, search_evals, atteint ces objectifs grâce à une conception modulaire simple. Nous avons développé deux harnais d'agents d'IA pour capturer à la fois les cas d'utilisation de recherche classique en une seule étape et les flux de travail agentiques avancés (illustrés par divers produits de « Recherche approfondie » largement disponibles sur le marché grand public). Les deux harnais ont été mis en œuvre de manière simple, laissant peu de place à un avantage caché.
Pour mener nos évaluations, nous avons adopté quatre bancs d'essai : SimpleQA et FRAMES pour la recherche en une seule étape, ainsi que BrowseComp et HLE pour la recherche approfondie. Ensemble, ces bancs d'essai fournissent des étalons bien acceptés pour les agents de connaissances. Conformément aux conventions établies, nous notons tous les bancs d'essai en utilisant la même méthodologie de classification par invite que celle utilisée dans les travaux initiaux. Les implémentations exactes des bancs d'essai (y compris la logique de notation) peuvent être consultées dans notre référentiel GitHub.
Nous avons conçu le cadre en gardant à l'esprit la reproductibilité et l'extensibilité. Les scores au niveau de la tâche et les sorties des agents sous-jacents sont enregistrés à chaque exécution. Des harnais, des bancs d'essai et des offres d'API de recherche supplémentaires peuvent être facilement intégrés. Les chercheurs et les développeurs peuvent lire notre documentation GitHub pour plus d'informations sur l'extension du cadre afin de répondre à vos besoins précis.
Résultats des évaluations
Armés de ce cadre d'évaluation, nous avons entrepris d'évaluer notre API de recherche par rapport à d'autres offres d'API. Sur l'ensemble des bancs d'essai testés, Perplexity s'impose à la fois comme l'API la plus rapide et la plus qualitative du marché.
Nous avons constaté que nos investissements décrits ci-dessus dans l'efficacité des index, de la recherche et du classement ont largement porté leurs fruits. La latence médiane de Perplexity s'établit à 358 ms, soit plus de 150 ms d'avance sur le deuxième fournisseur le plus rapide. La latence au 95e percentile reste confortablement inférieure à 800 ms. Compte tenu des longues métriques TTFT (temps d'attente du premier jeton) des modèles de pointe actuels, chaque milliseconde compte pour créer des expériences utilisateur agréables. Nous avons passé ces deux dernières années à optimiser la latence pour nos propres utilisateurs, et nous sommes ravis que ces mêmes investissements profitent désormais également à la communauté des développeurs.
Latence de l'API de recherche
(requêtes initiées depuis AWS us-east-1)
p50 | p75 | p90 | p95 | |
Perplexity | 358 ms | 443 ms | 604 ms | 763 ms |
Exa | 1 375 ms | 1 499 ms | 1 798 ms | 2 188 ms |
Brave | 513 ms | 637 ms | 728 ms | 808 ms |
Basé sur SERP* | 1 342 ms | 1 586 ms | 1 743 ms | 1 790 ms |
Percentiles de latence de l’API de recherche pour les requêtes initiées depuis AWS us-east-1.
* De nombreux fournisseurs d'API de recherche utilisent le scraping SERP comme base pour leurs résultats. Pour capturer les performances de telles approches, nous utilisons une API représentative basée sur les SERP de Google proposée par Tavily.
Cet avantage en termes de vitesse ne se fait pas au détriment de la qualité. L'API de recherche de Perplexity offre des performances de pointe dans les contextes de recherche en une seule étape et de recherche approfondie. Sur chaque banc d'essai testé, Perplexity est en tête pour ce qui est de fournir des résultats de haute qualité capables d'alimenter des flux de travail d'IA de complexité variable. La marge entre Perplexity et la meilleure alternative est particulièrement prononcée sur SimpleQA et HLE, ce qui indique que ces résultats sont robustes à travers tout l'éventail de la complexité des tâches.
Comme pour la latence, notre leadership en matière de qualité de recherche découle de notre leadership dans la création de produits d'IA agréables et très fréquentés. Nos millions d'utilisateurs utilisent Perplexity pour satisfaire leur curiosité sur tous les sujets imaginables, et les signaux de qualité et de pertinence qui en résultent permettent à nos modèles de recherche de s'améliorer à chaque heure qui passe.
Bancs d'essai de qualité de l'API de recherche
Recherche en une seule étape | Recherche approfondie | |||
SimpleQA | FRAMES | BrowseComp | HLE | |
Perplexity | 0,930 | 0,453 | 0,371 | 0,288 |
Exa | 0,781 | 0,399 | 0,265 | 0,242 |
Brave | 0,822 | 0,320 | 0,221 | 0,191 |
Basé sur SERP* | 0,890 | 0,437 | 0,348 | 0,248 |
Scores de qualité de l’API de recherche sur SimpleQA, FRAMES, BrowseComp et HLE.
Nous n'en sommes qu'aux débuts des moteurs de recherche natifs de l'IA, et l'art et la science de la mesure vont sans aucun doute évoluer. Nous invitons la communauté à contribuer en développant des méthodes rigoureuses et créatives pour évaluer les moteurs de recherche à l'ère des agents d'IA.
La brique de base pour le prochain chapitre de l'IA
L'avenir des systèmes agentiques et des assistants intelligents dépendra de la disponibilité d'interfaces programmatiques riches donnant accès à la connaissance collective mondiale. L'utilisation des moteurs de recherche hérités d'aujourd'hui a atteint un plateau d'environ 10¹⁰ requêtes par jour, un chiffre qui a probablement atteint son maximum. La prochaine génération de systèmes de recherche et d'extraction servira des volumes de requêtes supérieurs de plusieurs ordres de grandeur, car un univers toujours croissant d'agents d'IA s'appuiera sur eux pour obtenir des informations précises en temps réel.
Nos efforts à ce jour nous ont positionnés comme le moteur de recherche le plus rapide et le plus performant accessible via une API. Mais des innovations encore plus ambitieuses seront nécessaires pour alimenter le prochain chapitre de l'IA. Comment mettre à l'échelle ces systèmes de manière efficace face à une demande toujours croissante ? Comment optimiser ces systèmes de recherche à la lumière des nouvelles approches d'ingénierie de contexte et de post-entraînement ? Et comment naviguons-nous face à la tension omniprésente entre l'exhaustivité, la récence et la latence ? Ce sont là des questions ouvertes que Perplexity, grâce à notre combinaison d'empreinte produit, d'échelle et de talent technique, est particulièrement bien positionnée pour aborder.
Citation
@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}
}