검색 전략 설계: Vector, 키워드, 및 하이브리드 검색
Source: Dev.to
Focus: 엔지니어링 트레이드‑오프, 시스템 아키텍처, 그리고 실용적인 기본값
Audience: 임베딩에 익숙한 백엔드 엔지니어로, 신뢰할 수 있고 제어 가능한 검색 시스템을 구축하고자 하는 사람들.
1. 검색 전략이 시스템에서 차지하는 위치
flowchart TD
A[User Query] --> B[Query Rewrite / Intent Analysis]
B --> C[Multi‑Channel Retrieval
(Vector / Keyword / Metadata)]
C --> D[Hybrid Merge]
D --> E[Top‑K Limiting]
E --> F[Score Threshold Filtering]
F --> G[(Optional) Reranking]
G --> H[LLM Generation]
벡터 검색, 하이브리드 검색, Top‑K, 그리고 임계값 필터링과 같은 개념은 별개의 기능이 아니라; 파이프라인의 리콜 및 필터링 단계에서 함께 작동합니다.
2. 벡터 검색: 의미 기반 회수 레이어
2.1 벡터 검색이 해결하는 문제
벡터 검색은 의미 불일치를 해결합니다:
- 사용자와 문서가 서로 다른 단어를 사용합니다.
- 의미는 유사하지만 어휘 겹침은 적습니다.
예시
Query: How to reduce dopamine addiction
Document: Attention control and dopamine regulation
키워드 검색은 여기서 실패하지만 임베딩은 성공합니다.
2.2 엔지니어가 이해해야 할 핵심 파라미터
유사도 메트릭
| Metric | Typical Use |
|---|---|
| Cosine Similarity | Industry default (most embedding models are trained assuming cosine) → 산업 표준 (대부분의 임베딩 모델이 코사인을 가정하고 학습) |
| Dot Product | Often used when vectors are L2‑normalized → 벡터가 L2 정규화된 경우 자주 사용됩니다 |
| L2 Distance | Useful for certain metric‑learning models → 특정 메트릭 학습 모델에 유용합니다 |
인덱스 유형 (성능 중요)
| Index Type | Use Case |
|---|---|
| Flat | Small datasets, maximum accuracy → 소규모 데이터셋, 최고 정확도 |
| HNSW | General‑purpose, production default → 범용, 프로덕션 기본값 |
| IVF | Very large‑scale datasets → 초대규모 데이터셋 |
For most knowledge‑base and RAG systems, HNSW offers the best trade‑off between speed and recall. → 대부분의 지식베이스 및 RAG 시스템에서 HNSW는 속도와 회수 사이의 최적 균형을 제공합니다.
2.3 벡터 검색의 근본적인 약점
- 회수 측면에서 강함 – 관련 콘텐츠를 검색합니다.
- 정밀도 측면에서 약함 – 관련 없지만 의미적으로 근접한 항목을 반환할 수 있습니다.
따라서 벡터 검색은 결합되어야 합니다:
- Top‑K 제한
- 점수 임계값
- (선택 사항) 재정렬
3. Keyword Search (BM25): The Precision Layer
Keyword search is not obsolete; its role is deterministic precision. It excels at:
- Code and stack traces
- API names
- Error messages
- Proper nouns, numbers, and IDs
In many technical queries, keyword search outperforms embeddings.
A key benefit is controllability: deterministic matching reduces hallucinations.
4. 하이브리드 검색: 업계 표준
Hybrid search combines the strengths of both approaches:
- Vector search → semantic recall
- Keyword search → lexical precision
4.1 Parallel Hybrid (Most Common)
Vector Search Top‑K = 20
Keyword Search Top‑K = 20
↓
Merge Results
↓
Rerank
Advantages
- Simple to implement
- Stable behavior
- Widely used in production
4.2 Score‑Fusion Hybrid
A weighted scoring approach:
Final Score = α × Vector Score + β × BM25 Score
Suitable for search‑engine‑like systems that require a strong global ranking.
5. Top‑K: 회수 경계, 품질 보장 아님
오해: “Top‑K가 높을수록 결과가 더 좋다.”
현실: Top‑K는 최대 회수 범위를 정의한다.
- 큰 Top‑K → 잡음 증가, 토큰 사용량 증가, 지연 시간 증가.
실용적인 기본값
| 시나리오 | 권장 Top‑K |
|---|---|
| FAQ | 3–5 |
| 기술 문서 | 5–10 |
| 코드 검색 | 10–20 |
일반적인 RAG 기본값
- 벡터 Top‑K: 8–10
- 키워드 Top‑K: 8–10
6. 점수 임계값 필터링: 누락된 안전장치
Top‑K는 항상 결과를 반환합니다—관련성이 전혀 없을 때도. 임계값 필터링으로 해결합니다:
Only keep results where score > threshold
임계값 없이 실패한 예시
Query: Apple phone
Result: Apple fruit
임계값 가이드라인 (코사인 유사도)
| Similarity | Interpretation |
|---|---|
| > 0.85 | 매우 관련 있음 |
| 0.75–0.85 | 허용 가능 |
6. Rerank Top 5
7. Send Top 3 to LLM
이 파이프라인은 재현율, 정밀도, 비용 및 안정성을 균형 있게 맞춥니다.
8. 엔지니어가 실제로 집중해야 할 것
8.1 Recall와 Precision의 트레이드오프
Vector Search → Recall
Keyword Search → Precision
Reranker → Final Quality
이 삼각형을 이해하는 것이 단일 파라미터를 튜닝하는 것보다 더 중요합니다.
8.2 청크 설계가 알고리즘보다 더 중요합니다
잘못된 청크 분할은 모든 검색 전략을 무너뜨립니다:
- 청크가 너무 길면 → 임베딩 희석
- 청크가 너무 짧으면 → 컨텍스트 단편화
좋은 검색은 좋은 청크 경계에서 시작됩니다.
8.3 Top‑K는 최종 출력 크기가 아니다
전형적인 프로덕션 흐름:
Retrieve 20 → Filter to 12 → Rerank to 5 → LLM consumes 3
결론
현대 검색 시스템은 벡터 검색만으로 구축되지 않습니다.
하이브리드 검색 + 임계값 필터링 + 재정렬이 신뢰할 수 있고 제어 가능한 AI‑보강 생성의 실제 기반입니다.
단일 알고리즘이 아닌 시스템 사고방식으로 검색을 설계하면 품질이 크게 향상됩니다.