검색기(Retriever)
저장된 벡터 데이터베이스에서 사용자의 질문과 관련된 문서를 검색하는 과정
Sparse Retriever
- 문서와 쿼리(질문)를 이산적인 키워드 벡터로 변환하여 처리
Dense
- 문서와 쿼리를 연속적인 고차원 벡터로 인코딩
- 키워드가 완벽히 일치하지 않더라도 의미적으로 관련된 문서를 검색
- 복잡한 쿼리에 대해 더 정확한 검색 결과를 제공
1. 벡터 스토어 기반 검색기
- vector store를 사용하여 문서를 검색하는 retriever
- Vector store에 구현된 유사도 검색(similarity search) 이나 MMR 과 같은 검색 메서드를 사용하여 vector store 내의 텍스트를 쿼리
as_retriever 을 통해 다양한 검색 옵션을 설정하여 사용자의 요구에 맞는 문서 검색을 수행
- 유사도, MMR, 임계값 기반
- 메타데이터 필터링으로 특정 조건의 문서만 검색 가능
tags 매개변수를 통해 검색기에 태그 추가 가능
<검색옵션>
MMR(max marginal relevance)