AI 분석가는 비밀을 지킬 수 있을까요? - 에런 린스키, 브리지워터 & 니킬 베네슈, 터보퍼퍼
원제 · Can Your AI Analyst Keep a Secret? - Aaron Linsky, Bridgewater & Nikhil Benesch, turbopuffer
핵심 요약
사전 필터링과 사후 필터링을 결합한 네이티브 필터링 전략을 통해 1억 개의 문서와 4억 5천만 개의 벡터 규모에서도 120밀리초 만에 권한이 적용된 검색을 수행할 수 있다.
하이라이트
브리지워터의 비정형 데이터베이스 '볼트'는 약 1억 개의 문서를 색인화, 정리 및 보안 처리하고 있다.
터보퍼퍼는 오브젝트 스토리지 위에 구축되어 S3 수준의 경제성을 확보하면서도 테라바이트 단위로 확장 가능한 검색 엔진이다.
문서 1억 개를 단순 리스트 방식으로 검색할 경우 하드웨어 성능 기준으로 약 5초가 소요되어 실시간 요구를 충족하지 못한다.
사전 필터링과 사후 필터링을 결합한 네이티브 필터링 전략을 통해 4억 5천만 개의 벡터 검색을 120밀리초 만에 수행한다.
터보퍼퍼는 키워드 검색, 정규표현식 검색, 벡터 검색을 모두 지원하며 권한 제어와 데이터 격리 문제를 해결한다.
타임라인
AI 애널리스트와 권한 관리의 과제
사용자가 AI 에이전트에게 질문을 던지면 LLM은 공개 웹과 조직 내 비공개 문서에서 사실을 검색한다. 공개 웹은 모든 구성원이 동일하게 볼 수 있어 권한 문제가 없지만, 비공개 문서에는 수많은 이메일, 회의록, 보고서별로 서로 다른 권한이 복잡하게 얽혀 있다.
- 공개 웹 데이터와 달리 조직 내부의 비공개 문서는 각기 다른 권한 세트가 연결되어 있다.
- 정보 검색 분야에서 서로 다른 권한이 할당된 비공개 데이터 세트를 다루는 것은 고질적으로 어려운 문제이다.
브리지워터의 연구 프로세스와 비정형 데이터베이스 볼트
브리지워터의 연구 순환은 인식, 가설, 조사, 시스템화 및 산업화의 다섯 단계를 거친다. 고품질 데이터를 다루기 위해 양태적 거시 시계열 데이터베이스인 드로로안과 비정형 데이터베이스인 볼트를 운영하며, 인간 투자자와 AI 에이전트가 이 데이터를 활용해 새로운 콘텐츠를 생성한다.
- 브리지워터는 지난 50년 동안 시장과 경제가 움직이는 원리를 논리에 따라 코드로 구현해 왔다.
- 최근 135개의 서로 다른 외부 소스와 내부 문서를 포함하여 약 1억 개의 문서를 관리하는 비정형 데이터베이스 볼트를 구축했다.
터보퍼퍼 검색 엔진 아키텍처와 단순 방식의 한계
터보퍼퍼는 쿼리가 활성화될 때만 데이터를 캐시로 가져와 비용을 절감하면서 키워드, 정규표현식, 벡터 검색을 지원한다. 문서당 1킬로바이트로 가정할 때 1억 개의 문서를 단순 스캔하는 방식은 100밀리초 내의 응답을 원하는 사용자 요구를 만족시키지 못하므로 벡터 인덱스가 필수적이다.
- 터보퍼퍼는 오브젝트 스토리지에 직접 쓰기를 수행하여 S3 수준의 경제성과 고성능을 동시에 확보한다.
- 1억 개의 문서를 단순 리스트 방식으로 전부 훑어보는 방식은 최신 하드웨어에서도 약 5초가 걸려 실시간 검색에 부적합하다.
권한 필터링 문제와 네이티브 필터링을 통한 해결
사용자의 권한과 일치하는 문서만 골라내기 위해 단순히 상위 벡터를 가져와 거르는 후필터링 방식은 원하는 결과를 얻지 못하고 멈춘다. 터보퍼퍼는 유사한 벡터들을 자동으로 클러스터링하고 사용자가 접근할 수 있는 클러스터만 먼저 선별한 뒤 그 내부를 스캔하는 네이티브 필터링으로 이 문제를 근본적으로 해결한다.
- 후필터링이나 단순 필터 선행 방식은 대규모 데이터 규모에서 재현율 저하와 성능 저하를 초래한다.
- 터보퍼퍼는 벡터 클러스터링과 권한 인덱스를 결합한 네이티브 필터링을 통해 1억 문서 규모에서 P90 지연 시간 120밀리초를 달성한다.
설명
An AI analyst at a firm like Bridgewater needs private documents, but every email, memo and research note carries its own permissions. Aaron Linsky (head of product engineering, Bridgewater Associates) explains why the Vault's 100 million permissioned documents broke their first search setup, and Nikhil Benesch (CTO, turbopuffer) breaks down the fix: post-filtering loses recall, pre-filtering is too slow, and "native filtering" over a clustered vector index gets both, delivering about 120ms P90 searches across 400 million vectors. Chapters 00:00 Intro: why permissions matter for AI analysts 02:07 Bridgewater's research process 03:43 The Vault: 100M documents, many permissions 05:14 Modeling permissions, and where it broke 06:25 What turbopuffer is 08:01 Napkin math: why brute force fails at scale 09:43 How vector indexes work 11:50 Permissions break the index 12:19 Post-filtering vs pre-filtering 14:09 Native filtering: the best of both 15:23 Results: 120ms across 100M documents 15:47 Writing permission filters in practice 17:00 Beyond permissions: isolation-native search Aaron Linsky, Bridgewater Associates Nikhil Benesch, turbopuffer Join us in SF for the second annual AIE CODE summit: https://aie.codes our last flagship summit of 2026. Applications live now!
