Docs Menu
Docs Home
/ /

MongoDB Vector Search 및 MongoDB Search로 하이브리드 검색 수행

이 튜토리얼에서는 동일한 쿼리 조건에 대해 전체 텍스트 검색과 시맨틱 검색을 집계한 하이브리드 검색을 시연합니다. 전체 텍스트 검색은 쿼리 텀에 대한 정확한 일치를 찾는 데 효과적인 반면, 시맨틱 검색은 문서에 정확한 쿼리 텀이 포함되어 있지 않더라도 의미적으로 유사한 문서를 식별할 수 있는 추가 이점을 제공합니다. 이를 통해 동의어나 맥락적으로 유사한 결과도 두 검색 방법을 결합한 결과에 포함될 수 있습니다.

반대로 데이터 세트에 고유 명사나 특정 키워드에 대한 토큰이 포함되어 있다면 이러한 토큰이 데이터 세트에서 사용되는 동일한 맥락에서 임베딩 모델의 학습에 고려되지 않기를 원할 수 있습니다. 이 경우 벡터 검색을 전체 텍스트 검색과 결합하면 더 나은 결과를 얻을 수 있습니다.

또한 쿼리별로 각 검색 방법에 대한 가중치를 설정할 수 있습니다. 전체 텍스트 또는 시맨틱 검색 결과가 쿼리에 가장 관련성이 높고 적절한지 여부에 따라, 쿼리별로 해당 검색 방법의 가중치를 높일 수 있습니다.

이 튜토리얼에서는 영화에 대한 세부 정보가 포함된 sample_mflix.embedded_movies 컬렉션 에서 MongoDB Vector Search와 MongoDB Search 쿼리를 결합한 하이브리드 검색 실행 통합 검색 결과를 얻는 방법을 보여 줍니다. 구체적으로 이 튜토리얼에서는 다음 단계를 안내합니다.

  1. plot_embedding_voyage_3_large 필드 에 MongoDB Vector Search 인덱스 생성합니다. 이 필드 에는 영화 줄거리의 요약을 나타내는 벡터 임베딩이 포함됩니다.

  2. sample_mflix.embedded_movies 컬렉션 의 title 필드 에 MongoDB Search 인덱스 만듭니다. 이 필드 에는 영화 이름이 텍스트 문자열로 포함됩니다.

  3. $rankFusion 또는 $scoreFusion 를 사용하는 쿼리 실행하여 plot_embedding_voyage_3_large 필드 대한 $vectorSearch 쿼리 와 title 필드 대한 $search 쿼리 의 결과를 결합합니다.

시작하기 전에 전제 조건을 완료하세요.

이 섹션에서는 sample_mflix.embedded_movies collection의 필드에 다음 인덱스를 생성하는 방법을 보여 줍니다.

  • 해당 필드 에 대해 벡터 쿼리를 실행 위한 plot_embedding_voyage_3_large 필드 에 대한 MongoDB Vector Search 인덱스 .

  • 해당 필드 에 대해 전체 텍스트 검색 실행 위한 title 필드 에 대한 MongoDB Search 인덱스 .

돌아가기

하이브리드 검색

이 페이지의 내용