피드로 돌아가기
Vector Search in Elasticsearch: From Keywords to Meaning - Building Semantic Search and RAG Pipelines
Dev.toDev.to
Database

HNSW와 Hybrid Search를 통한 고밀도 Semantic Search 구현

Vector Search in Elasticsearch: From Keywords to Meaning - Building Semantic Search and RAG Pipelines

Prithvi S2026년 6월 17일12intermediate

Context

키워드 일치 기반의 BM25 방식은 의미적 유사성 파악 불가로 인한 검색 누락 발생. 단순 텍스트 매칭의 한계를 극복하고 문맥적 의미를 이해하는 Semantic Search 체계 필요성 증대.

Technical Solution

  • dense_vector 필드 도입을 통한 텍스트의 고차원 수치 벡터화 및 저장
  • HNSW(Hierarchical Navigable Small World) 알고리즘 기반의 다층 그래프 구조 설계로 sub-10ms 수준의 ANN 검색 속도 확보
  • BM25의 정확성과 Vector Search의 의미론적 탐색을 결합한 Hybrid Search 및 RRF(Reciprocal Rank Fusion) 적용
  • num_candidates 파라미터 조정을 통한 Recall과 Latency 사이의 Trade-off 최적화
  • LLM 컨텍스트 제한 해결을 위해 RecursiveCharacterTextSplitter 기반의 문서 Chunking 전략 수립
  • Metadata Filtering을 통한 Vector Database 단독 모델 대비 쿼리 유연성 확보

- 검색 정확도 향상을 위해 num_candidates 값을 k의 10배 수준으로 설정 - 메모리 부족 시 Quantization 또는 Dimension Reduction 검토 - 임베딩 모델의 토큰 제한(예: E5 512 tokens)에 맞춘 Chunk Size 설정 - 외부 모델 운영 부담 시 Elasticsearch 내장 모델인 ELSER v2 우선 고려

원문 읽기