AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

자동화된 임베딩 개요

You can configure MongoDB 벡터 검색 to automatically generate and manage vector embeddings for the text data in your Atlas 클러스터. 자동 임베딩을 활성화 하면 MongoDB Vector Search는 컬렉션 의 지정된 텍스트 필드 에 대한 인덱스 타임과 쿼리 의 텍스트 문자열에 대한 쿼리 타임에 지정된 Voyage AI 임베딩 모델을 사용하여 임베딩을 자동으로 생성합니다.

자동화된 임베딩은 시맨틱 검색 구축 프로세스 간소화합니다. 벡터 임베딩을 직접 생성, 저장 또는 관리 필요가 없습니다. Atlas 임베딩 생성, 업데이트 및 쿼리를 기본적으로 처리합니다.

참고

자동 임베딩은 무료(M0), Flex 계층 및 전용(M10+) 클러스터에서 지원됩니다.

전용 클러스터(M10+)에서 자동 임베딩을 사용하려면 저장 및 클러스터 계층 자동 확장 모두 활성화 해야 합니다. 대규모 데이터 세트의 초기 인덱스 빌드를 위한 리소스를 확장하다 하려면 자동 확장이 필요합니다. 인덱스 빌드가 완료되면 새 인덱스 크기에 더 높은 저장 리소스가 필요하지 않은 경우 클러스터 원래 컴퓨팅 계층 으로 다시 축소됩니다.

자동 확장 설정을 다음과 같이 설정합니다.

  • 현재 클러스터 계층 M10 또는 M20 (버스트 가능 CPU 인스턴스)인 경우 최대 인스턴스 크기를 M30 이상으로 설정하다 .

  • 현재 클러스터 계층 M30 이상인 경우 최대 인스턴스 크기를 현재 계층 보다 높은 계층 으로 설정하다 .

  • NVMe 스토리지 사용하는 클러스터의 경우 저장 실행 시 NVME 클러스터 계층 확장 옵션을 선택합니다.

MongoDB Vector Search 인덱스의 자동 임베딩을 통해 MongoDB Vector Search를 배포 하고 텍스트 데이터에 대한 지능적인 AI 기반 시맨틱 검색 활성화 수 있습니다. MongoDB의 자동 임베딩 기능은 기존에 복잡한 벡터 검색 구현 프로세스 단일 단계 솔루션으로 전환합니다. 이제 별도의 임베딩 인프라, 모델 선택, 통합 코드를 관리하는 대신 간단한 필드 구성을 통해 시맨틱 검색 구현 수 있습니다.

MongoDB Vector Search 인덱스를 구성하면 선택한 최신 Voyage AI 임베딩 모델을 사용하여 컬렉션 의 텍스트 데이터에 대한 벡터 임베딩을 자동으로 생성하고, 데이터 변경에 따라 임베딩을 동기화 하며, 다음을 지원합니다. 언어 텍스트 쿼리 사용. 이러한 벡터 임베딩은 데이터에서 의미 있는 관계를 캡처하고 키워드가 아닌 의도를 기반으로 검색할 수 있습니다.

자동 임베딩을 활성화 하려면 autoEmbed 유형을 사용하여 MongoDB 벡터 검색 인덱스 생성합니다. autoEmbed 유형은 자동 임베딩을 활성화 하려는 필드 와 사용하려는 임베딩 모델을 지정합니다. 하나 이상의 필드를 포함하여 filter 유형을 사용하여 데이터를 사전 필터링할 수도 있습니다.

1{
2 "fields": [
3 {
4 "type": "autoEmbed",
5 "modality": "text",
6 "path": "<field-to-index>",
7 "model": "<embedding-model>"
8 },
9 {
10 "type": "filter",
11 "path": "<field-to-index>"
12 },
13 ...
14 ]
15}

인덱스 구문 및 필드에 대해 자세히 학습하려면 벡터 검색을 위해 필드를 인덱싱하는 방법을 참조하세요.

MongoDB Vector Search는 삽입하거나 업데이트 기존 문서와 새 문서에 대한 임베딩을 자동으로 생성합니다.

인덱스 만든 후에는 쿼리를 실행 수 있습니다. MongoDB Vector Search는 인덱스 에 지정한 것과 동일한 임베딩 모델을 사용하여 쿼리 텍스트에 대한 임베딩을 자동으로 생성합니다. $vectorSearch파이프라인 단계에서 model 옵션을 사용하여 다른 임베딩 모델을 선택적으로 지정할 수 있지만, 지정된 임베딩 모델은 인덱스 시점에 사용된 임베딩 모델과 호환되어야 합니다.

1[
2 {
3 "$vectorSearch": {
4 "index": "<index-name>",
5 "path": "<field-to-index>",
6 "query": "<query-text>",
7 "model": "<embedding-model>"
8 }
9 },
10 {
11 "$project": {
12 "_id": 0,
13 "<field-to-index>": 1,
14 "score": { "$meta": "vectorSearchScore" }
15 }
16 }
17]

자세한 내용은 벡터 검색 쿼리 실행을 참조하세요.

참고

이 기능은 Docker, tarball 또는 패키지 관리자를 사용하는 MongoDB Search 및 MongoDB 벡터 검색 배포 와 MongoDB 8.2 이상 Community Edition과 함께 Kubernetes 연산자용 MongoDB 컨트롤러를 사용하는 배포 에서 사용할 수 있습니다. 자동화된 임베딩 기능은 아직 MongoDB Enterprise Edition에서 사용할 수 없습니다.

임베딩 코드를 작성하거나, model 인프라를 관리하거나, 벡터 파이프라인을 처리하지 않고도 간단한 구성 변경을 통해 AI 에이전트에 대한 시맨틱 검색, RAG 및 메모리를 활성화 할 수 있습니다. 즉, MongoDB 검색 및 벡터 검색 프로세스 mongot와 함께 MongoDB Community Edition 배포할 때 임베딩을 생성하는 데 사용할 Voyage AI API 키 를 제공할 수 있으며, 하나는 인덱싱 작업에, 다른 하나는 다른 프로젝트의 쿼리 작업에 사용하는 것이 가장 좋습니다.

배포서버 후 다음을 수행합니다.

  1. 컬렉션 에서 시맨틱 검색 활성화 하려는 텍스트 필드 선택합니다.

  2. 사용 가능한 임베딩 모델 목록에서 임베딩 모델을 선택합니다.

  3. MongoDB Vector Search 인덱스 정의에서 autoEmbed 유형을 사용하여 자동 임베딩을 구성합니다.

자동 임베딩을 위한 MongoDB Vector Search 인덱스 구성에 대해 자세히 알아보려면 벡터 검색을 위한 필드 인덱싱 방법을 참조하세요.

MongoDB Vector Search는 MongoDB Community Edition 초기화할 때 지정한 API 키를 사용하여 삽입하거나 업데이트 기존 문서와 새 문서에 대한 임베딩을 자동으로 생성합니다.

쿼리의 경우 $vectorSearch 파이프라인 단계에서 query.text 옵션을 사용합니다. MongoDB Vector Search는 인덱스 정의에서 동일한 임베딩 모델을 사용하여 텍스트 쿼리 에 대한 임베딩을 생성합니다. $vectorSearch파이프라인 단계에서 model 옵션을 사용하여 다른 임베딩 모델을 지정할 수 있지만, 지정된 임베딩 모델은 인덱스 시점에 사용된 임베딩 모델과 호환되어야 합니다. MongoDB Vector Search는 MongoDB Community 초기화 중에 제공한 쿼리 API 키를 사용하여 쿼리 시점에 임베딩을 생성합니다. 자세한 학습은 벡터 검색 쿼리 실행을 참조하세요.

API 키를 사용하여 임베딩을 생성하면 요금이 발생합니다. 자세히 학습하려면 청구 관리를 참조하세요.

임베딩을 자동화하고 샘플 쿼리 실행 하려면 MongoDB Vector Search 빠른 시작 튜토리얼을 참조하세요.

인덱스 시점과 쿼리 시점에 임베딩을 생성하는 데 단일 API 키를 사용할 수 있지만, 쿼리 작업이 인덱싱 작업에 부정적인 영향을 미치지 않도록 하려면 별도의 API 키를 사용하는 것이 좋습니다.

다음과 같은 방법으로 API 키를 생성할 수 있습니다.

키를 생성한 후에는 MongoDB Community Edition 사용하여 배포서버 하는 동안 mongot 를 구성할 때 자동 임베딩에 사용할 키를 지정해야 합니다. MongoDB Vector Search는 mongot 배포서버 중에 제공한 Voyage AI API 키를 사용하여 인덱스 의 데이터와 쿼리 시점의 쿼리 텍스트에 대한 임베딩을 자동으로 생성합니다.

자동 임베딩 인덱스는 vector embeddings를 비동기적으로 생성하고 별도의 예비 데이터베이스 에 MongoDB 클러스터 에 유지됩니다. 각 자동 임베딩 인덱스 해당하는 생성된 임베딩 컬렉션 정확히 하나만 있습니다. 생성된 임베딩 컬렉션 동일한 클러스터 의 전용 내부 데이터베이스 에 저장됩니다.

자세한 학습은 생성된 임베딩 컬렉션을 참조하세요.

MongoDB Vector Search는 각각 특정 사용 사례에 최적화된 Voyage AI의 최신 임베딩 모델과 통합됩니다.

임베딩 모델
설명
토큰 1M당 가격

voyage-4-lite

비용에 민감한 대용량 애플리케이션에 최적화되어 있습니다.

$0.02

voyage-4

(권장) 일반 텍스트 검색 위한 균형 잡힌 성능.

$0.06

voyage-4-large

복잡한 시맨틱 관계에 대한 정확도를 극대화합니다.

$0.12

voyage-code-3

코드 검색 및 기술 문서화에 전문화되어 있습니다.

$0.18

자세한 학습 은 자동 임베딩을 위한 모델을 참조하세요.

임베딩 모델

embedding models are algorithms that convert data into vector embeddings that capture your data's semantic, or 기본, meaning. 이러한 벡터를 사용하면 벡터 검색 활성화 .

자동 embedding model의 embedding model에 대해 자세히 학습하려면 사용 가능한 model을 참조하세요.

벡터 임베딩

벡터 임베딩은 숫자 배열 로, 각 차원은 데이터의 다른 기능 이나 속성을 나타냅니다. 벡터는 텍스트, 이미지, 동영상부터 구조화되지 않은 데이터에 이르기까지 모든 유형의 데이터를 표현하는 데 사용할 수 있습니다. 임베딩 모델을 통해 데이터를 전달하여 벡터 임베딩을 생성하고, 이러한 임베딩을 MongoDB 와 같은 벡터 임베딩을 지원하는 데이터베이스 에 저장 수 있습니다.

자동 임베딩을 위한 임베딩 저장에 대해 자세히 알아보려면 생성된 임베딩 컬렉션을 참조하세요.

tokens

임베딩 모델 및 LLM과 관련하여 토큰은 모델이 임베딩을 생성하거나 텍스트를 생성하기 위해 처리하는 단어, 하위 단어 또는 문자와 같은 텍스트의 기본 단위입니다. 토큰은 임베딩 모델 및 LLM 사용에 대한 요금이 청구되는 방식입니다.

자동 임베딩을 위한 토큰에 대해 자세히 학습하려면 자동 임베딩을 위한 청구 관리를 참조하세요.

속도 제한

속도 제한은 API 제공자가 특정 시간 내에 사용자가 할 수 있는 요청 수에 대해 부과하는 제한이며, 종종 분당 토큰(TPM) 또는 분당 요청(RPM)으로 측정됩니다. 이러한 제한은 공정한 사용을 보장하고, 남용을 방지하며, 모든 사용자를 위해 서비스의 안정성과 성능을 유지합니다.

자동 임베딩의 속도 제한에 대해 자세히 학습 속도 제한을 참조하세요.

양자화

양자화는 벡터 임베딩의 정밀도를 줄여 메모리와 저장 사용량을 줄이고 검색 정확도는 절충합니다. 자동화된 임베딩의 경우 MongoDB Vector Search는 다음과 같은 quantization 유형을 지원합니다.

Quantization 유형
설명

float

vector embeddings를 32비트 float 값으로 저장합니다.

scalar

각 벡터 차원을 32비트 부동 소수점에서 8비트 정수로 줄입니다.

binary

각 벡터 차원을 단일 비트로 줄이고 상위 결과의 점수를 다시 매깁니다.

binaryNoRescore

점수를 다시 매기지 않고 각 벡터 차원을 단일 비트로 줄입니다.

자동 임베딩의 quantization에 대해 자세히 학습하려면 quantization 정보를 참조하세요.

차원의 수

The number of dimensions specifies the length of the embedding vector for each document (how many numbers are in the 배열). 차원이 높을수록 더 많은 시맨틱 세부 정보를 캡처하고 일반적으로 검색 정확도가 향상되지만 저장 및 컴퓨팅 비용(인덱스 크기, RAM 사용량, 때로는 지연 시간)이 증가합니다.

자세히 학습하려면 numCandidates 선택을 참조하세요.

유사성

유사성 함수는 두 벡터 간의 유사성 또는 인덱스 에 있는 벡터에 대한 쿼리 벡터의 유사성을 측정하는 데 사용됩니다. MongoDB Vector Search는 다음과 같은 유사성 함수를 지원합니다.

  • cosine - 벡터 사이의 각도를 기준으로 유사성을 측정합니다.

  • dotProduct - cosine와(과) 같이 유사성을 측정하지만 벡터의 크기를 고려합니다. 완전 충실도 또는 scalar 양자화에는 이 유사성 함수를 권장합니다.

  • euclidean - 벡터의 끝과 끝 사이의 거리를 측정합니다. 이 유사성 함수는 벡터가 압축되고 해밍 또는 유클리드 공간의 거리가 올바른 신호인 binary 또는 binaryNoRescore 양자화에 권장됩니다.

자동 임베딩의 유사성 함수에 대해 자세히 알아보려면 유사성 함수 정보를 참조하세요.

스킬 배지 획득

무료로 'MongoDB를 사용한 RAG'를 마스터하세요!

자세한 내용을 알아보세요.