HPC & GPU Engineering/Platform Essentials

📘 고성능 AI 컴퓨팅 인프라 용어 사전 (13) – Vector Indexing: 임베딩 검색의 기반 기술

ygtoken 2025. 8. 3. 15:51
728x90

최근 LLM을 활용한 RAG(Retrieval-Augmented Generation) 시스템이나,

이미지/문서/고객 행동 기반 추천 시스템이 늘어나고 있습니다.

 

이 모든 기술의 핵심에는 임베딩 벡터를 검색하는 기술,

즉 **Vector Indexing(벡터 인덱싱)**이 자리하고 있습니다.

 


Vector Indexing이란?

 

Vector Indexing은 고차원 임베딩 벡터들로 구성된 데이터셋에서, 입력 벡터와 가장 유사한 항목을 빠르게 찾기 위한 인덱스 구조입니다.

 

예시:

 

  • 문장 → 768차원 벡터
  • 이미지 → 1024차원 벡터
  • 사용자 행동 → 300차원 벡터

 

이러한 벡터들 간의 유사도(예: 코사인 유사도, 유클리드 거리)를 기준으로

Top-K 유사 항목을 빠르게 찾는 것이 목적입니다.

 


왜 필요한가?

 

  • LLM + 검색 시스템(RAG)에서 질문에 맞는 문서 벡터를 빠르게 찾기 위해
  • 이미지 검색 시스템에서 비슷한 이미지 빠르게 탐색하기 위해
  • 추천 엔진에서 가장 유사한 사용자 행동/아이템 매칭 위해
  • 단순한 선형 탐색(Brute-force)은 너무 느림 → Index로 최적화 필수

 


대표적인 Index 구조

구조 설명 특징
Flat (Brute-force) 모든 벡터와 거리 계산 정확도 높지만 속도 느림
IVF (Inverted File Index) 전체 벡터를 여러 클러스터로 나눠 검색 범위 축소 빠르고 효율적
HNSW (Hierarchical Navigable Small World) 그래프 기반의 근사 최근접 탐색 고차원에서도 빠르고 정밀함
PQ (Product Quantization) 벡터를 압축해 메모리 사용량 절감 정확도 희생, 대규모 처리 적합

 


실무에서 많이 쓰는 벡터 검색 엔진

엔진 특징
FAISS (Meta) CPU/GPU 지원, IVF/HNSW/PQ 모두 지원
Milvus 클러스터링 가능, REST/gRPC 인터페이스 제공
Weaviate 벡터 + 메타데이터 함께 저장, GraphQL API
Qdrant Rust 기반, 필터/스코어 기반 랭킹 지원
Pinecone Fully managed, SaaS 기반 서비스형 벡터 DB
Elasticsearch + KNN plugin 벡터 기반 검색 지원 (Lucene + FAISS)

 


Vector Index 구축 과정 요약

 

  1. Embedding 모델로 벡터화
    • 텍스트: BERT, MiniLM
    • 이미지: CLIP, ResNet
  2. Index 구성
    • Flat / IVF / HNSW 중 선택
  3. Search API 구축
    • 입력 → 벡터화 → 인덱스에서 Top-K 검색
  4. 모니터링 및 리빌딩
    • 인덱스에 새 데이터 추가 시 성능 저하 여부 확인

 


AI 인프라 연계 포인트

  • GPU 활용: FAISS-GPU로 대규모 인덱스 연산 가속
  • K8s 환경: Milvus, Qdrant 등을 Helm으로 배포 가능
  • RAG 구성: Vector Index + LLM + Prompt Template
  • 모델 재학습/임베딩 변경 시 → 전체 인덱스 리빌딩 필요

 


마무리

 

Vector Indexing은 AI 검색 시스템의 실시간성과 정확성의 균형을 잡아주는 핵심 기술입니다.

 

대규모 임베딩 벡터를 빠르게 검색하는 구조를 이해해야,

RAG, 추천 시스템, 유사 문서 탐색 같은 고급 AI 응용 시스템을 제대로 설계할 수 있습니다.

 

 

728x90