임베딩 모델 선택은 중요하다:
- RAG 시스템에서 임베딩은 핵심적인 역할을 합니다.
- 다양한 모델 중에서 가장 관련성 있는 문서를 상위로 가져올 수 있도록 하는 임베딩 모델을 선택하는 것이 중요합니다.
MTEB 리더보드로 시작하라:
- Hugging Face의 MTEB 리더보드는 텍스트 임베딩 모델을 비교하는 좋은 시작점입니다.
- 다양한 임베딩 작업에 대한 모델 성능 통계를 제공합니다.
- https://huggingface.co/spaces/mteb/leaderboard
벤치마크는 한계가 있다:
- 벤치마크 결과는 자체 보고된 것이며, 실제 데이터와 다를 수 있습니다.
- 일부 모델은 공개 데이터셋을 학습에 포함했을 수 있어 편향된 결과를 보일 수 있습니다.
- 그러므로 자체 데이터셋에 대한 평가가 필요합니다.
고려해야하는 주요 평가 지표:
- Retrieval Average:
- 이는 여러 데이터셋에 걸친 NDCG@10(Normalized Discounted Cumulative Gain at 10)의 평균값입니다.
- NDCG 는 가장 관련성 있는 문서를 상위로 끄집어 낼수록 더 높은 점수를 받는 벤치마크 자료임.
- '@10'은 상위 10개 결과만을 고려한다는 의미입니다.
- 이 지표는 검색된 결과의 관련성과 순위를 모두 고려합니다.
- 높은 NDCG 값은 모델이 관련성 높은 항목을 검색 결과의 상위에 랭크시키는 능력이 뛰어나다는 것을 나타냅니다.
- Model Size:
- 모델의 크기를 기가바이트(GB) 단위로 나타냅니다.
- 이는 모델을 실행하는 데 필요한 컴퓨팅 리소스의 규모를 나타냅니다.
- 일반적으로 모델 크기가 클수록 성능이 좋지만, 그만큼 더 많은 메모리와 연산 능력이 필요합니다.
- 모델 크기는 지연 시간(latency)에 직접적인 영향을 미치므로, 실제 서비스 환경에서는 성능과 속도 사이의 균형을 고려해야 합니다.
- Max Tokens:
- 단일 임베딩으로 압축할 수 있는 최대 토큰 수입니다.
- 토큰은 일반적으로 단어나 부분 단어를 나타냅니다.
- 대부분의 경우 한 문단(약 100 토큰) 정도면 충분하므로, 512 토큰을 지원하는 모델도 대부분의 용도에 적합합니다.
- 이 값이 크면 더 긴 텍스트를 단일 임베딩으로 처리할 수 있지만, 처리 시간도 늘어날 수 있습니다.
- Embedding Dimensions:
- 임베딩 벡터의 길이를 나타냅니다.
- 차원이 낮을수록 추론 속도가 빠르고 저장 공간을 적게 사용합니다.
- 차원이 높을수록 데이터의 복잡한 특성과 관계를 더 잘 포착할 수 있습니다.
- 이상적인 차원 수는 데이터의 복잡성 캡처와 운영 효율성 사이의 균형점에 있습니다.
- 일반적으로 256에서 1024 사이의 차원이 많이 사용됩니다.
References:
'Generative AI > RAG' 카테고리의 다른 글
Cohere Rerank (0) | 2024.08.10 |
---|---|
Prompt Compression and Query Optimization (0) | 2024.08.10 |
The GraphRAG Manifesto: Adding Knowledge to GenAI (0) | 2024.07.14 |
What is a Sparse Vector? How to Achieve Vector-based Hybrid Search (0) | 2024.07.10 |
Hybrid Search (0) | 2024.07.10 |