Skip to content
이 페이지는 AI의 도움으로 작성 및 번역되었습니다. 부정확한 내용이 있으면 개선에 참여해 주세요. GitHub에서 편집

리랭킹 엔진 ​

리랭킹은 전용 크로스 인코더 모델을 사용하여 후보 결과를 재정렬하는 선택적 2단계 검색 단계입니다. 임베딩 기반 검색은 빠르지만 세밀한 관련성을 포착하지 못할 수 있는 사전 계산된 벡터에서 작동합니다. 리랭킹은 더 작은 후보 세트에 더 강력한 모델을 적용하여 정밀도를 크게 향상시킵니다.

동작 방식 ​

  1. 1단계 (검색): 벡터 유사도 검색이 광범위한 후보 세트를 반환합니다 (예: 상위 50개).
  2. 2단계 (리랭킹): 크로스 인코더 모델이 각 후보를 쿼리에 대해 점수를 매겨 정제된 랭킹을 생성합니다.
  3. 최종 결과: 상위 k개의 리랭크된 결과가 호출자에게 반환됩니다.
mermaid
graph LR
    QUERY["Recall Query"] --> EMBED["Embedding Search<br/>Top 50 Candidates"]
    EMBED --> RERANK["Reranker<br/>Cross-Encoder Scoring"]
    RERANK --> RESULTS["Reranked Top-K"]

리랭킹이 중요한 이유 ​

지표리랭킹 없이리랭킹 있을 때
회상 커버리지높음 (광범위한 검색)동일 (변경 없음)
상위 5개 정밀도중간크게 향상
지연 시간낮음 (~50ms)높음 (~150ms 추가)
API 비용임베딩만임베딩 + 리랭킹

리랭킹은 다음 경우에 가장 가치 있습니다:

  • 메모리 데이터베이스가 크거나 (1000개 이상).
  • 쿼리가 모호하거나 자연어일 때.
  • 지연 시간보다 결과 목록 상위의 정밀도가 더 중요할 때.

지원 프로바이더 ​

프로바이더설정 값설명
JinaPRX_RERANK_PROVIDER=jinaJina AI 리랭커 모델
CoherePRX_RERANK_PROVIDER=cohereCohere 리랭크 API
PineconePRX_RERANK_PROVIDER=pineconePinecone 리랭크 서비스
Pinecone 호환PRX_RERANK_PROVIDER=pinecone-compatible커스텀 Pinecone 호환 엔드포인트
없음PRX_RERANK_PROVIDER=none리랭킹 비활성화

설정 ​

bash
PRX_RERANK_PROVIDER=cohere
PRX_RERANK_API_KEY=your_cohere_key
PRX_RERANK_MODEL=rerank-v3.5

프로바이더 폴백 키

PRX_RERANK_API_KEY가 설정되지 않으면 시스템은 프로바이더별 키로 폴백합니다:

  • Jina: JINA_API_KEY
  • Cohere: COHERE_API_KEY
  • Pinecone: PINECONE_API_KEY

리랭킹 비활성화 ​

리랭킹 없이 실행하려면 PRX_RERANK_PROVIDER 변수를 생략하거나 명시적으로 설정합니다:

bash
PRX_RERANK_PROVIDER=none

회상은 리랭킹 단계 없이 어휘 매칭과 벡터 유사도를 사용하여 계속 작동합니다.

다음 단계 ​

Released under the Apache-2.0 License.