Written by

퍼플렉시티 팀

게시됨

Search API: 향상된 추출, 동적 벤치마크 

9월에 저희는 Perplexity Search API 아키텍처에 대한 기술 개요 를 공개하고, 에이전트 워크플로에서 검색 API를 벤치마킹하기 위한 오픈소스 평가 프레임워크인 search_evals를 출시했습니다. 그 이후 가장 큰 투자는 스니펫 품질에 이루어졌으며, 이는 관련성과 크기라는 두 가지 차원에서 최적화되었습니다. 적절한 양의 올바른 콘텐츠를 반환하는 일은 다운스트림 답변 정확도와 토큰 효율성을 직접적으로 결정합니다. 이를 구현하기 위해 추출, 스팬 수준 라벨링, 평가를 위한 새로운 시스템을 구축했으며, 그중에서도 특히 주어진 쿼리에 응답하는 소스 문서의 어느 구간인지를 식별하는 스팬 라벨링 파이프라인이 핵심적이었습니다.

스팬 수준에서 스니펫 평가하기

스니펫을 체계적으로 개선하기 위해 저희는 새로운 평가 시스템을 설계했습니다. 주어진 쿼리와 문서에 대해 이 시스템은 문서 내의 스팬을 쿼리와의 관계에 따라 식별하고 라벨링합니다. 여기에는 스니펫에 반드시 포함되어야 하는 "핵심" 스팬, 제외되어야 하는 여러 유형의 "관련 없음" 스팬, 중복 스팬, 그리고 기타 범주가 포함됩니다. 이러한 스팬 수준 라벨링을 통해 이전에는 불가능했던 정밀도로 스니펫 품질을 평가할 수 있게 되었으며, 무엇이 정확히 포함되었는지뿐 아니라 무엇이 정확히 제외되었는지도 측정할 수 있습니다.

실제로 이러한 개선을 통해 저희는 쿼리와 더 관련성이 높은 더 작은 스니펫을 생성할 수 있게 되었습니다. 이제 저희의 자가 개선형 콘텐츠 이해 파이프라인은 표, 중첩 목록, 동적으로 렌더링되는 콘텐츠를 포함한 더 폭넓은 구조화된 데이터 형식을 처리하며, 이는 이전 규칙 세트로는 안정적으로 파싱하지 못했던 영역입니다.

이러한 개선은 저희 자체 프로덕션 시스템에서 비롯되었습니다. 내부 연구를 통해 스니펫의 관련성과 크기 조정이 발전함에 따라, 내부 평가에서는 일련의 품질 개선 이후 더 작은 콘텐츠 예산이 실제로 더 정확한 결과를 만들어낸다는 사실이 드러났습니다. 저희는 이러한 발견을 반영하기 위해 기본 구성에 일부 수정을 가했으며, 그 결과 응답 페이로드 크기와 지연 시간을 줄이면서도 결과당 더 유용한 콘텐츠를 제공하게 되었습니다. 개발자에게는 더 작고 더 관련성 높은 스니펫이 곧바로 더 낮은 토큰 비용과 다운스트림 LLM을 위한 더 나은 컨텍스트 관리로 이어집니다.

SEAL: 시간 민감형 검색 벤치마킹 

SEAL 벤치마크는 검색 시스템이 시간이 지남에 따라 정답이 바뀌는 질문에 답할 수 있는지를 테스트합니다. 이를 안정적으로 수행하려면 실시간 인덱스 최신성, 지속적으로 업데이트되는 다양한 데이터 소스에서 더 스마트한 스니펫 추출, 그리고 과거 값이 아니라 현재 값을 식별할 수 있는 파싱이 필요합니다.

Claude Sonnet 4.5를 사용하여 2월 22일자 SEAL 릴리스에 대해 search_evals를 실행했을 때, SEAL-Hard에서 다른 제공업체들의 점수는 하락한 반면 Perplexity의 점수는 상승했습니다:

저희는 9월 게시물에서 보고한 벤치마크와 함께 SEAL도 포함하도록 search_evals 프레임워크를 확장했습니다. 업데이트된 결과와 방법론은 GitHub의 업데이트된 저장소에서 확인하실 수 있습니다.

멀티 쿼리 지원

이제 API는 단일 요청에서 최대 5개의 쿼리를 지원합니다. 결과는 제출된 순서와 동일한 순서로 쿼리별로 그룹화되어 반환됩니다. 이를 통해 복잡한 질문을 여러 검색 하위 작업으로 분해하는 에이전트와 같이, 관련 검색을 병렬로 실행해야 하는 애플리케이션의 왕복 요청 수를 줄일 수 있습니다.

확장된 필터링

도메인 필터링(허용 목록 및 거부 목록, 최대 20개 도메인)과 최신성 필터링에 더해, 이제 API는 ISO 639-1 코드에 따른 언어 필터링과 ISO 국가 코드에 따른 지역 검색도 지원합니다. 이러한 기능은 함께 조합하여 결과 범위를 정밀하게 설정할 수 있으며, 예를 들어 독일 도메인의 영어 결과만으로 제한할 수 있습니다.

SDK 및 제공 현황

Python SDK (pip install perplexityai)는 이제 Agent API 및 Sonar API와 함께 Search API에 대한 기본 지원을 제공합니다. 

전체 문서는 docs.perplexity.ai에서 확인하실 수 있습니다.

Search API: 향상된 추출, 동적 벤치마크 

9월에 저희는 Perplexity Search API 아키텍처에 대한 기술 개요 를 공개하고, 에이전트 워크플로에서 검색 API를 벤치마킹하기 위한 오픈소스 평가 프레임워크인 search_evals를 출시했습니다. 그 이후 가장 큰 투자는 스니펫 품질에 이루어졌으며, 이는 관련성과 크기라는 두 가지 차원에서 최적화되었습니다. 적절한 양의 올바른 콘텐츠를 반환하는 일은 다운스트림 답변 정확도와 토큰 효율성을 직접적으로 결정합니다. 이를 구현하기 위해 추출, 스팬 수준 라벨링, 평가를 위한 새로운 시스템을 구축했으며, 그중에서도 특히 주어진 쿼리에 응답하는 소스 문서의 어느 구간인지를 식별하는 스팬 라벨링 파이프라인이 핵심적이었습니다.

스팬 수준에서 스니펫 평가하기

스니펫을 체계적으로 개선하기 위해 저희는 새로운 평가 시스템을 설계했습니다. 주어진 쿼리와 문서에 대해 이 시스템은 문서 내의 스팬을 쿼리와의 관계에 따라 식별하고 라벨링합니다. 여기에는 스니펫에 반드시 포함되어야 하는 "핵심" 스팬, 제외되어야 하는 여러 유형의 "관련 없음" 스팬, 중복 스팬, 그리고 기타 범주가 포함됩니다. 이러한 스팬 수준 라벨링을 통해 이전에는 불가능했던 정밀도로 스니펫 품질을 평가할 수 있게 되었으며, 무엇이 정확히 포함되었는지뿐 아니라 무엇이 정확히 제외되었는지도 측정할 수 있습니다.

실제로 이러한 개선을 통해 저희는 쿼리와 더 관련성이 높은 더 작은 스니펫을 생성할 수 있게 되었습니다. 이제 저희의 자가 개선형 콘텐츠 이해 파이프라인은 표, 중첩 목록, 동적으로 렌더링되는 콘텐츠를 포함한 더 폭넓은 구조화된 데이터 형식을 처리하며, 이는 이전 규칙 세트로는 안정적으로 파싱하지 못했던 영역입니다.

이러한 개선은 저희 자체 프로덕션 시스템에서 비롯되었습니다. 내부 연구를 통해 스니펫의 관련성과 크기 조정이 발전함에 따라, 내부 평가에서는 일련의 품질 개선 이후 더 작은 콘텐츠 예산이 실제로 더 정확한 결과를 만들어낸다는 사실이 드러났습니다. 저희는 이러한 발견을 반영하기 위해 기본 구성에 일부 수정을 가했으며, 그 결과 응답 페이로드 크기와 지연 시간을 줄이면서도 결과당 더 유용한 콘텐츠를 제공하게 되었습니다. 개발자에게는 더 작고 더 관련성 높은 스니펫이 곧바로 더 낮은 토큰 비용과 다운스트림 LLM을 위한 더 나은 컨텍스트 관리로 이어집니다.

SEAL: 시간 민감형 검색 벤치마킹 

SEAL 벤치마크는 검색 시스템이 시간이 지남에 따라 정답이 바뀌는 질문에 답할 수 있는지를 테스트합니다. 이를 안정적으로 수행하려면 실시간 인덱스 최신성, 지속적으로 업데이트되는 다양한 데이터 소스에서 더 스마트한 스니펫 추출, 그리고 과거 값이 아니라 현재 값을 식별할 수 있는 파싱이 필요합니다.

Claude Sonnet 4.5를 사용하여 2월 22일자 SEAL 릴리스에 대해 search_evals를 실행했을 때, SEAL-Hard에서 다른 제공업체들의 점수는 하락한 반면 Perplexity의 점수는 상승했습니다:

저희는 9월 게시물에서 보고한 벤치마크와 함께 SEAL도 포함하도록 search_evals 프레임워크를 확장했습니다. 업데이트된 결과와 방법론은 GitHub의 업데이트된 저장소에서 확인하실 수 있습니다.

멀티 쿼리 지원

이제 API는 단일 요청에서 최대 5개의 쿼리를 지원합니다. 결과는 제출된 순서와 동일한 순서로 쿼리별로 그룹화되어 반환됩니다. 이를 통해 복잡한 질문을 여러 검색 하위 작업으로 분해하는 에이전트와 같이, 관련 검색을 병렬로 실행해야 하는 애플리케이션의 왕복 요청 수를 줄일 수 있습니다.

확장된 필터링

도메인 필터링(허용 목록 및 거부 목록, 최대 20개 도메인)과 최신성 필터링에 더해, 이제 API는 ISO 639-1 코드에 따른 언어 필터링과 ISO 국가 코드에 따른 지역 검색도 지원합니다. 이러한 기능은 함께 조합하여 결과 범위를 정밀하게 설정할 수 있으며, 예를 들어 독일 도메인의 영어 결과만으로 제한할 수 있습니다.

SDK 및 제공 현황

Python SDK (pip install perplexityai)는 이제 Agent API 및 Sonar API와 함께 Search API에 대한 기본 지원을 제공합니다. 

전체 문서는 docs.perplexity.ai에서 확인하실 수 있습니다.

이 기사를 공유하세요