API de búsqueda: mejor extracción, evaluaciones dinámicas

La calidad de los fragmentos de nuestra API de búsqueda se ha optimizado en dos dimensiones: relevancia y tamaño.

En septiembre, publicamos una descripción general técnica de la arquitectura de la API de búsqueda de Perplexity y lanzamos search_evals, nuestro marco de evaluación de código abierto para realizar evaluaciones comparativas de las API de búsqueda en flujos de trabajo de agentes. Desde entonces, la inversión más importante se ha centrado en la calidad de los fragmentos, optimizada en dos dimensiones: relevancia y tamaño. Devolver el contenido correcto en la cantidad adecuada determina directamente la precisión de las respuestas posteriores y la eficiencia de los tokens. El trabajo para lograrlo implicó la creación de nuevos sistemas de extracción, etiquetado a nivel de intervalo y evaluación, sobre todo una canalización de etiquetado de intervalos que identifica qué segmentos de un documento de origen responden a una consulta determinada.

Evaluación de fragmentos a nivel de intervalo

Para mejorar los fragmentos de forma sistemática, diseñamos un nuevo sistema de evaluación. Para una consulta y un documento determinados, el sistema identifica y etiqueta los intervalos dentro del documento según su relación con la consulta: intervalos "vitales" que deben incluirse en el fragmento, varias clases de intervalos "irrelevantes" que deben excluirse, duplicados y otras categorías. Este etiquetado a nivel de intervalo nos permite evaluar la calidad de los fragmentos con un nivel de precisión que antes no era posible, midiendo tanto lo que se incluyó correctamente como lo que se omitió correctamente.

En la práctica, estas mejoras nos permiten generar fragmentos más pequeños y más relevantes para la consulta. Nuestra canalización de comprensión de contenido de superación automática ahora admite una gama más amplia de formatos de datos estructurados, incluidas tablas, listas anidadas y contenido renderizado dinámicamente que los conjuntos de reglas anteriores no podían analizar de manera confiable.

Estas mejoras surgieron de nuestros propios sistemas de producción. A medida que nuestra investigación interna impulsó la relevancia y el tamaño de los fragmentos, las evaluaciones internas revelaron que los presupuestos de contenido más pequeños en realidad producían resultados más precisos después de una serie de mejoras en la calidad. Realizamos algunas modificaciones en nuestras configuraciones predeterminadas para reflejar nuestros hallazgos, lo que redujo el tamaño de la carga útil de respuesta y la latencia al tiempo que ofrecía contenido más útil por resultado. Para los desarrolladores, los fragmentos más pequeños y relevantes se traducen directamente en costos de token más bajos y una mejor gestión del contexto para los modelos de lenguaje grandes (LLM) posteriores.

SEAL: evaluación comparativa de la recuperación sensible al tiempo

La evaluación comparativa SEAL analiza si un sistema de recuperación puede responder preguntas cuya respuesta correcta cambia con el tiempo. Para responder de forma confiable, se necesita frescura del índice en tiempo real, una extracción de fragmentos más inteligente de varias fuentes de datos actualizadas continuamente y un análisis que pueda identificar el valor actual en lugar de uno histórico.

Cuando ejecutamos search_evals con la versión de SEAL del 22 de febrero utilizando Claude Sonnet 4.5, las puntuaciones de Perplexity aumentaron mientras que otros proveedores disminuyeron en SEAL-Hard:

Hemos ampliado nuestro marco search_evals para incluir SEAL junto con las evaluaciones comparativas informadas en nuestra publicación de septiembre. Los resultados y la metodología actualizados están disponibles en el repositorio actualizado en GitHub.

Compatibilidad con consultas múltiples

La API ahora admite hasta 5 consultas en una sola solicitud. Los resultados se devuelven agrupados por consulta en el mismo orden en que se enviaron. Esto reduce los viajes de ida y vuelta para las aplicaciones que necesitan emitir búsquedas relacionadas en paralelo, como los agentes que descomponen una pregunta compleja en múltiples subtareas de recuperación.

Filtrado ampliado

Además del filtrado de dominios (lista blanca y lista negra, hasta 20 dominios) y el filtrado de actualidad, la API ahora admite el filtrado de idiomas por código ISO 639-1 y la búsqueda regional por código de país ISO. Estos se pueden combinar para acotar los resultados con precisión, por ejemplo, restringiéndolos a resultados en inglés de dominios alemanes.

SDK y disponibilidad

El Python SDK (pip install perplexityai) ahora ofrece compatibilidad nativa con la API de búsqueda, además de la API de agentes y la API de Sonar.

La documentación completa se encuentra en docs.perplexity.ai