USearch README — 설치, 사용, 성능

USearch README — 설치, 사용, 성능

USearch 는 벡터 검색·클러스터링을 위한 가볍고 빠른 라이브러리예요. 설치부터 기본 사용, 성능 비교까지 살펴볼게요.

설치

pip install usearch

Python 3 바인딩과 함께 설치되고, numpy 와 잘 어울려요.

기본 사용

from usearch.index import Index
import numpy as np

index = Index(ndim=3)
index.add(42, np.array([0.2, 0.6, 0.4]))
matches = index.search(np.array([0.2, 0.6, 0.4]), 10)
  • Index(ndim=...): 차원을 지정해 인덱스를 만들어요.
  • add(key, vector): 벡터를 추가해요.
  • search(vector, n): 가장 가까운 n 개 이웃을 찾아요.

주요 설정

index = Index(
    ndim=3,
    metric='cos',          # 'l2sq', 'ip', 'haversine' 등
    dtype='bf16',          # 저장 정밀도
    connectivity=16,       # 그래프 노드당 이웃 수
)

디스크 저장·로드

index.save("index.usearch")
view = Index.restore("index.usearch", view=True)

메모리 매핑(view)으로 인덱스를 RAM 에 다 올리지 않고 디스크에서 제공할 수 있어요.

성능

FAISS 와 같은 HNSW 인데, 테스트 기준 인덱싱 시간을 크게 줄여요(1억 벡터 기준 최대 ~10배). 의존성이 적어 배포도 가벼워요.

더 알아보기 (Learn more)

출처: USearch README