Reranker API — 검색 정밀도 개선
Reranker API — 검색 정밀도 개선
임베딩 검색이 1차로 넓게 뽑은 결과를, 쿼리와 문서의 심층 상호작용까지 고려해 다시 정렬하면 정확도가 크게 좋아져요. Jina의 Reranker API가 그 역할을 해요. 멀티모달·다국어 문서를 재순위화하고, 에이전트용 RAG에서 함수 호출과 코드 검색까지 지원해요.
Endpoint: https://api.jina.ai/v1/rerank
curl "https://api.jina.ai/v1/rerank" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $JINA_API_KEY" \
-d @- <<EOF
{
"model": "jina-reranker-v3.5",
"query": "Organic skincare products for sensitive skin",
"top_n": 3,
"documents": ["...doc1...", "...doc2...", "...doc3..."]
}
EOF
리랭커가 동작하는 방식은 크게 세 단계예요.
- Initial Retrieval — 임베딩이나 BM25로 쿼리에 잠재적으로 관련된 문서를 넓게 뽑아요.
- Reranking — 리랭커가 결과를 더 세밀하게 분석하며 쿼리 용어가 문서 내용과 어떻게 상호작용하는지 살펴요.
- Improved Results — 더 깊은 분석에 근거해 가장 관련 높은 결과를 위로 재정렬해요.
Jina Reranker v2는 2024년 6월 Agentic RAG용으로 출시됐어요. 100개 이상 언어의 다국어 검색, 함수 호출·코드 검색, 그리고 자연어 쿼리로 테이블 스키마를 정렬해 SQL 생성 전에 가장 관련 높은 테이블을 고르는 표·구조화 데이터 지원이 특징이에요. 텍스트 재순위화는 jina-reranker-v3.5가 그 뒤를 잇습니다.
Reranker·Vector Search·BM25를 비교해 보면 용도가 분명해져요.
| Reranker | Vector Search | BM25 | |
|---|---|---|---|
| Best For | 검색 정밀도·관련성 향상 | 초기 빠른 필터링 | 광범위한 질의에 대한 일반 텍스트 검색 |
| Granularity | 상세: 하위 문서·쿼리 세그먼트 | 광범위: 전체 문서 | 중간: 다양한 텍스트 세그먼트 |
| Query Time Complexity | 높음 | 중간 | 낮음 |
| Indexing Time Complexity | 불필요 | 높음 | 낮음(사전 구축 인덱스 이용) |
더 알아보기
- https://docs.jina.ai/reference/rerank/ — Reranker API
- https://docs.jina.ai/ — Search Foundation API 가이드