FlashRank README — 설치, 사용, 배포 패턴
FlashRank README — 설치, 사용, 배포 패턴
FlashRank 는 검색·검색 증강 파이프라인에 리랭킹을 추가하는 아주 가벼운 파이썬 라이브러리예요. 설치하고 몇 줄로 재정렬할 수 있어요.
설치
pip install flashrank # 경량 pairwise 리랭커(기본)
pip install flashrank[listwise] # LLM 기반 listwise 리랭커
기본 사용
from flashrank import Ranker, RerankRequest
ranker = Ranker(max_length=128)
query = "How to speedup LLMs?"
passages = [
{"id": 1, "text": "Introduce *lookahead decoding*..."},
{"id": 2, "text": "LLM inference efficiency will be..."},
{"id": 3, "text": "There are many ways to increase LLM..."},
]
rerankrequest = RerankRequest(query=query, passages=passages)
results = ranker.rerank(rerankrequest)
print(results) # score 내림차순 정렬된 리스트
다른 모델 선택
ranker = Ranker(model_name="ms-marco-MiniLM-L-12-v2") # 최고 성능
ranker = Ranker(model_name="rank-T5-flan") # 최고 zeroshot
ranker = Ranker(model_name="ms-marco-MultiBERT-L-12") # 다국어
ranker = Ranker(model_name="rank_zephyr_7b_v1_full", max_length=1024) # LLM
속도 최적화
max_length 를 가장 긴 구절+쿼리 토큰 수에 맞게 잡아요. 지나치게 크게 잡으면 응답이 느려져요.
배포 패턴 (AWS Lambda)
서버리스는 읽기 전용 VM 이므로 커스텀 디렉토리를 만들어 모델 캐시로 쓰세요:
ranker = Ranker(model_name="ms-marco-MiniLM-L-12-v2", cache_dir="/opt")
파이프라인 활용
- 어휘 검색(역색인) 결과, 시맨틱/벡터 검색(RAG) 결과, 하이브리드 검색 결과 모두에 붙일 수 있어요.
더 알아보기 (Learn more)
출처: FlashRank README