NVIDIA cuVS로 벡터 검색 가속화
NVIDIA는 AI 기반 검색을 위한 고성능 인덱싱, 저지연 검색, 확장성을 제공하는 cuVS라는 GPU 가속 벡터 검색 및 클러스터링 도구를 출시했다. 이 도구는 RAG(검색 증강 생성), 추천 시스템, 탐색적 데이터 분석, 이상 탐지 등 다양한 응용 프로그램에서 사용된다. 최신 버전의 cuVS는 최적화된 인덱싱 알고리즘, 확장된 언어 지원, NVIDIA 파트너사와의 깊은 통합을 추가했다. 특히 Meta FAISS, Google Cloud AlloyDB, Vertex AI, Milvus, Apache Lucene, Elasticsearch, OpenSearch, Weaviate, Kinetica 등과의 연동이 강화되었다. cuVS는 GPU에서 인덱스를 생성하는 것을 가능하게 해 40배 이상의 속도 향상을 제공한다. Microsoft와의 협력을 통해 DiskANN/Vamana 알고리즘을 GPU로 확장하여 고객의 사용 사례를 해결하고 있다. Google Cloud AlloyDB는 HNSW 인덱스 구축 속도를 CPU 대비 9배 빠르게 하며, Oracle은 Oracle Database 23ai에 AI 벡터 검색 기능을 통합해 HNSW 인덱스 구축 속도를 5배 높였다. Weaviate는 cuVS를 통해 CAGRA 알고리즘을 사용해 인덱스 생성 시간을 8배 줄였다. Apache Lucene 및 Solr과의 통합을 통해 GPU에서 인덱스 구축 속도가 40배, 6배 향상되었으며, OpenSearch 3.0도 cuVS를 활용해 인덱스 생성 속도를 9.4배 높일 계획이다. Elasticsearch 플러그인도 cuVS 기능을 지원할 예정이다. 데이터 저장 파트너인 DDN은 Milvus와의 통합을 통해 22배 빠른 인덱스 생성을 실현했으며, DDN Infinia에 cuVS와 NeMo 리트리버 멀티모달 PDF 추출 파이프라인을 결합해 엔드투엔드 RAG 파이프라인을 구축했다. NVIDIA cuVS는 GPU와 CPU 간의 인덱스 호환성을 제공해, GPU로 인덱스를 생성하고 CPU에서 검색을 수행하는 방식을 가능하게 한다. 이는 인덱스 생성 시간을 줄이고 비용을 절감하면서도 기존 CPU 인프라를 유지할 수 있도록 한다. 예를 들어, CAGRA 그래프는 GPU에서 빠르게 생성되어 HNSW 그래프로 변환되어 CPU에서 검색된다. FAISS는 cuVS를 활용해 CPU 기반 인덱스 생성 속도를 12배, GPU 기반 인덱스는 8배 이상 높였으며, Python 패키지도 새롭게 출시했다. 또한, cuVS는 이진 및 스칼라 양자화 기술을 지원해 벡터의 크기를 4배와 32배 줄이고, CPU 대비 4배와 20배의 성능 향상을 제공한다. Milvus는 CAGRA 기능을 통해 이진 양자화 벡터로 그래프를 직접 생성하는 기능을 도입했다. 동적 배칭 API는 고속 온라인 검색을 위한 GPU 성능을 10배 향상시키며, CAGRA 영구 검색 기능은 광고 및 거래 파이프라인 같은 고용량 검색에서 8배 이상의 성능 향상을 기대할 수 있다. 또한, nn-descent 알고리즘의 업데이트로 kNN 그래프를 메모리 제한 없이 생성할 수 있어 대규모 데이터 분석에 유리하다. NVIDIA cuVS는 RAPIDS cuML의 UMAP 알고리즘과 BERTopic 라이브러리, rapids-singlecell을 통해 데이터 분석 및 유전체 분석 분야에서도 활용되고 있다. cuVS는 자체 라이브러리로 사용하거나 FAISS, Milvus, Weaviate 등과의 통합을 통해 사용할 수 있으며, GitHub에서 테스트 예제와 자동 최적화 가이드를 제공한다. 산업 전문가들은 cuVS가 GPU 가속 기술을 통해 AI 기반 검색의 성능과 효율성을 크게 향상시킬 수 있다고 평가한다. FAISS, Milvus, Weaviate 등 주요 파트너사들이 cuVS를 적극적으로 채택하며, AI 애플리케이션 개발에 대한 기술적 접근성을 높이고 있다. NVIDIA는 계속해서 AI 검색 분야의 혁신을 이끌며, 다양한 기술 생태계와의 통합을 확장할 계획이다.