문서 메뉴
문서 홈
/
MongoDB Atlas
/

Atlas Vector Search 빠른 시작

이 페이지의 내용

  • 목표
  • 전제 조건
  • 인덱스 벡터 임베딩
  • 벡터 검색 쿼리 실행

이 빠른 시작에서는 Atlas cluster에서 데이터의 벡터 임베딩을 인덱싱하고 유사한 데이터를 위한 벡터 임베딩을 검색하는 쿼리를 실행하는 방법을 설명합니다.

벡터는 하나 이상의 차원으로 정렬된 값의 배열입니다. OpenAI text-embedding-ada-002 과 같은 양방향 인코더 모델이 생성하는 벡터 임베딩은 단어, 구 및 문장을 나타낼 수 있습니다. 벡터 임베딩을 인덱싱하고 의미 또는 컨텍스트와 관련된 항목을 검색할 수 있습니다. 자세히 알아보려면 Atlas Vector Search 개요를 참조하세요.

이 빠른 시작에서는 다음 단계를 수행합니다.

  1. plot_embedding 필드를 vector 유형으로 인덱싱하는 sample_mflix.embedded_movies 컬렉션에 대한 인덱스 인덱스 정의를 만듭니다. plot_embedding 필드에는 OpenAI의 text-embedding-ada-002 임베딩 모델을 사용하여 생성된 임베딩이 포함되어 있습니다. 인덱스 정의는 1536 벡터 차원을 지정하고 cosine 을 사용하여 유사성을 측정합니다.

  2. 샘플 sample_mflix.embedded_movies collection을 검색하는 Atlas Vector Search 쿼리를 실행합니다. 이 쿼리는 $vectorSearch 단계를 사용하여 OpenAI의 text-embedding-ada-002 임베딩 모델을 사용하여 생성된 임베딩이 포함된 plot_embedding 필드를 검색합니다. 쿼리는 time 여행 문자열에 대한 벡터 임베딩을 사용하여 plot_embedding 필드를 검색합니다. 가장 가까운 이웃을 최대 150 고려하고 결과에 10 문서를 반환합니다.

이 빠른 시작을 완료하려면 다음 전제 조건을 충족해야 합니다.

다음과 같은 클러스터 구성이 있어야 합니다.

  • MongoDB 버전이 6 인 Atlas 클러스터입니다.0.11 또는 v7.0.2 이상( RC 포함).

  • Atlas cluster에 로드된 샘플 데이터

Atlas cluster에서 쿼리를 실행하려면 다음 애플리케이션 중 하나가 있어야 합니다.

  • mongosh

  • C#

  • Java

  • MongoDB 노드 드라이버

  • Pymongo

Atlas CLI로 생성한 로컬 Atlas 배포와 함께 Atlas Vector Search를 사용할 수도 있습니다. 자세히 알아보려면 로컬 Atlas 배포 만들기를 참조하세요.

Atlas Vector Search 인덱스를 만들려면 프로젝트에 대한 Project Data Access Admin 이상의 액세스 권한이 있어야 합니다.

다음 예시를 사용하여 Atlas cluster에서 데이터의 벡터 임베딩을 인덱싱합니다.

1
  1. 이미 표시되어 있지 않은 경우 탐색 모음의 Organizations 메뉴에서 원하는 프로젝트가 포함된 조직을 선택합니다.

  2. 이미 표시되어 있지 않은 경우 Projects 탐색 모음의 프로젝트 메뉴에서 원하는 프로젝트를 선택합니다.

  3. Clusters 페이지가 아직 표시되지 않은 경우 사이드바에서 Database를 클릭합니다.

2
  1. 클러스터 이름을 클릭합니다.

  2. Atlas Search 탭을 클릭합니다.

3
  1. Create Search Index를 클릭합니다.

  2. Atlas Vector Search 섹션에서 JSON Editor를 선택합니다.

  3. Next를 클릭합니다.

4
  1. Database and Collection 섹션에서 sample_mflix 데이터베이스를 찾고 embedded_movies 컬렉션을 선택합니다.

  2. Index Name 필드에 vector_index를 지정합니다.

5

sample_mflix.embedded_movies 컬렉션에 대한 다음 예제 인덱스 정의는 plot_embedding 필드를 vector 유형으로 인덱싱합니다. plot_embedding 필드에는 OpenAI의 text-embedding-ada-002 임베딩 모델을 사용하여 생성된 임베딩이 포함되어 있습니다. 인덱스 정의는 1536 벡터 차원을 지정하고 cosine 을 사용하여 유사성을 측정합니다.

1{
2 "fields": [{
3 "type": "vector",
4 "path": "plot_embedding",
5 "numDimensions": 1536,
6 "similarity": "cosine"
7 }]
8}

자세한 사항은 벡터 검색용 필드 인덱싱 방법을 참조하십시오.

6

인덱스 정의를 검토하고 Create Search Index 을 클릭합니다.

모달 창은 인덱스가 작성 중임을 나타냅니다.

7

Close 을 클릭하여 You're All Set! 모달 창을 닫고 인덱스 빌드가 완료될 때까지 기다립니다.

인덱스를 빌드하는 데 약 1분 정도 걸립니다. 빌드되는 동안 Status 열은 Initial Sync 을 읽습니다. 빌드가 완료되면 Status 열에 Active 이 표시됩니다.

다음 예시를 사용하여 벡터 임베딩을 검색하는 쿼리를 실행합니다.


언어 선택 드롭다운 메뉴를 사용하여 이 섹션의 예시 쿼리를 실행하는 데 사용할 클라이언트를 선택합니다.


← Atlas Vector Search 개요