MongoDB Atlas Vector Store 노드 문서
MongoDB Atlas Vector Search는 사용자가 벡터 임베딩을 저장하고 쿼리할 수 있게 해주는 MongoDB Atlas의 기능입니다. 이 페이지에서는 MongoDB Atlas Vector Store 노드의 파라미터와 추가 리소스 링크를 확인할 수 있습니다.
MongoDB Atlas Vector Search는 사용자가 벡터 임베딩을 저장하고 쿼리할 수 있게 해주는 MongoDB Atlas의 기능입니다. 이 노드를 사용하여 MongoDB Atlas 컬렉션의 Vector Search 인덱스와 상호작용합니다. 문서를 삽입하거나 검색하고, 체인 또는 에이전트의 도구로 벡터 스토어를 활용할 수 있습니다.
이 페이지에서는 MongoDB Atlas Vector Store 노드의 파라미터와 추가 리소스 링크를 확인할 수 있습니다.
이 노드의 인증 정보는 여기에서 확인할 수 있습니다.
서브 노드는 표현식을 사용하여 여러 항목을 처리할 때 다른 노드와 다르게 동작합니다.
루트 노드를 포함한 대부분의 노드는 임의 수의 항목을 입력으로 받아 처리한 후 결과를 출력합니다. 표현식을 사용하여 입력 항목을 참조할 수 있으며, 노드는 각 항목에 대해 순서대로 표현식을 해석합니다. 예를 들어, 5개의 name 값이 입력된 경우 {{ $json.name }} 표현식은 각 이름을 순서대로 해석합니다.
서브 노드에서는 표현식이 항상 첫 번째 항목으로 해석됩니다. 예를 들어, 5개의 name 값이 입력된 경우 {{ $json.name }} 표현식은 항상 첫 번째 이름으로 해석됩니다.
사전 요구 사항#
이 노드를 사용하기 전에 MongoDB Atlas 컬렉션에 Vector Search 인덱스를 생성해야 합니다. 다음 단계에 따라 생성하세요:
-
MongoDB Atlas 대시보드에 로그인합니다.
-
조직 및 프로젝트를 선택합니다.
-
"Search & Vector Search" 섹션을 찾습니다.
-
클러스터를 선택하고 "Go to search"를 클릭합니다.
-
"Create Search Index"를 클릭합니다.
-
"Vector Search" 모드를 선택하고 시각적 편집기 또는 JSON 편집기를 사용합니다. 예시:
{ "fields": [ { "type": "vector", "path": "<field-name>", "numDimensions": 1536, // 다른 값도 가능 "similarity": "<similarity-function>" } ] } -
임베딩 모델에 맞게 "dimensions" 값을 조정합니다 (예: OpenAI의
text-embedding-small-3의 경우1536). -
인덱스 이름을 지정하고 생성합니다.
노드 구성 시 필요한 다음 값을 기록해 두세요:
- 컬렉션 이름
- 벡터 인덱스 이름
- 임베딩 및 메타데이터의 필드 이름
노드 사용 패턴#
MongoDB Atlas Vector Store 노드는 다음 패턴으로 사용할 수 있습니다:
문서 삽입 및 검색을 위한 일반 노드로 사용#
MongoDB Atlas Vector Store를 일반 노드로 사용하여 문서를 삽입하거나 가져올 수 있습니다. 이 패턴은 에이전트를 사용하지 않고 MongoDB Atlas Vector Store를 일반 연결 흐름에 배치합니다.
이 템플릿의 시나리오 1에서 예시를 확인할 수 있습니다 (템플릿은 Supabase Vector Store를 사용하지만 패턴은 동일합니다).
AI 에이전트에 도구로 직접 연결#
MongoDB Atlas Vector Store 노드를 AI 에이전트의 도구 커넥터에 직접 연결하여 쿼리에 응답할 때 벡터 스토어를 리소스로 활용할 수 있습니다.
이 경우 연결은 다음과 같습니다: AI 에이전트 (tools connector) -> MongoDB Atlas Vector Store 노드.
리트리버를 사용하여 문서 가져오기#
Vector Store Retriever 노드와 MongoDB Atlas Vector Store 노드를 함께 사용하여 문서를 가져올 수 있습니다. 주어진 채팅 입력과 일치하는 문서를 벡터 스토어에서 가져오기 위해 Question and Answer Chain 노드와 함께 자주 사용됩니다.
연결 흐름 예시 (링크된 예시는 Pinecone을 사용하지만 패턴은 동일합니다): Question and Answer Chain (Retriever connector) -> Vector Store Retriever (Vector Store connector) -> MongoDB Atlas Vector Store.
Vector Store Question Answer Tool로 질문에 답변#
또 다른 패턴은 Vector Store Question Answer Tool을 사용하여 MongoDB Atlas Vector Store 노드의 결과를 요약하고 질문에 답변하는 것입니다. MongoDB Atlas Vector Store를 도구로 직접 연결하는 대신, 이 패턴은 벡터 스토어의 데이터를 요약하도록 특별히 설계된 도구를 사용합니다.
이 경우 연결 흐름 (링크된 예시는 In-Memory Vector Store를 사용하지만 패턴은 동일합니다)은 다음과 같습니다: AI 에이전트 (tools connector) -> Vector Store Question Answer Tool (Vector Store connector) -> In-Memory Vector store.
노드 파라미터#
작동 모드#
이 Vector Store 노드에는 네 가지 모드가 있습니다: 여러 개 가져오기(Get Many), 문서 삽입(Insert Documents), 문서 검색(체인/도구용 벡터 스토어로 사용)(Retrieve Documents (As Vector Store for Chain/Tool)), 문서 검색(AI 에이전트용 도구로 사용)(Retrieve Documents (As Tool for AI Agent)). 선택한 모드에 따라 노드에서 수행할 수 있는 작업과 사용 가능한 입력 및 출력이 결정됩니다.
Get Many#
이 모드에서는 프롬프트를 제공하여 벡터 데이터베이스에서 여러 문서를 검색할 수 있습니다. 프롬프트가 임베딩되어 유사도 검색에 사용됩니다. 노드는 프롬프트와 가장 유사한 문서를 유사도 점수와 함께 반환합니다. 유사한 문서 목록을 검색하여 에이전트에 추가 컨텍스트로 전달하려는 경우에 유용합니다.
Insert Documents#
문서 삽입 모드를 사용하여 벡터 데이터베이스에 새 문서를 삽입합니다.
Retrieve Documents (as Vector Store for Chain/Tool)#
벡터 스토어 검색기와 함께 Retrieve Documents (As Vector Store for Chain/Tool) 모드를 사용하여 벡터 데이터베이스에서 문서를 검색하고 체인에 연결된 검색기에 제공합니다. 이 모드에서는 노드를 검색기 노드 또는 루트 노드에 연결해야 합니다.
Retrieve Documents (as Tool for AI Agent)#
쿼리에 응답할 때 벡터 스토어를 도구 리소스로 사용하려면 Retrieve Documents (As Tool for AI Agent) 모드를 사용합니다. 응답을 구성할 때 에이전트는 벡터 스토어 이름과 설명이 질문 내용과 일치하면 벡터 스토어를 사용합니다.
결과 재순위 지정#
재순위 지정(reranking)을 활성화합니다. 이 옵션을 활성화하면 벡터 스토어에 재순위 지정 노드를 연결해야 합니다. 해당 노드가 쿼리 결과를 재순위 지정합니다. 이 옵션은 여러 개 가져오기(Get Many), 문서 검색(체인/도구용 벡터 스토어로 사용)(Retrieve Documents (As Vector Store for Chain/Tool)), 문서 검색(AI 에이전트용 도구로 사용)(Retrieve Documents (As Tool for AI Agent)) 모드와 함께 사용할 수 있습니다.
여러 항목 가져오기 파라미터#
- Mongo Collection: 사용할 MongoDB 컬렉션 이름을 입력합니다.
- Vector Index Name: MongoDB Atlas 컬렉션의 Vector Search 인덱스 이름을 입력합니다.
- Embedding Field: 벡터 임베딩이 포함된 문서의 필드 이름을 입력합니다.
- Metadata Field: 텍스트 메타데이터가 포함된 문서의 필드 이름을 입력합니다.
문서 삽입 파라미터#
- Mongo Collection: 사용할 MongoDB 컬렉션 이름을 입력합니다.
- Vector Index Name: MongoDB Atlas 컬렉션의 Vector Search 인덱스 이름을 입력합니다.
- Embedding Field: 벡터 임베딩이 포함된 문서의 필드 이름을 입력합니다.
- Metadata Field: 텍스트 메타데이터가 포함된 문서의 필드 이름을 입력합니다.
문서 검색 파라미터 (체인/도구를 위한 벡터 스토어로)#
- Mongo Collection: 사용할 MongoDB 컬렉션 이름을 입력합니다.
- Vector Index Name: MongoDB Atlas 컬렉션의 Vector Search 인덱스 이름을 입력합니다.
- Embedding Field: 벡터 임베딩이 포함된 문서의 필드 이름을 입력합니다.
- Metadata Field: 텍스트 메타데이터가 포함된 문서의 필드 이름을 입력합니다.
문서 검색 파라미터 (AI 에이전트를 위한 도구로)#
- Name: 벡터 스토어의 이름입니다.
- Description: LLM에게 이 도구가 무엇을 하는지 설명합니다. 구체적인 설명일수록 LLM이 기대하는 결과를 더 자주 생성합니다.
- Mongo Collection: 사용할 MongoDB 컬렉션 이름을 입력합니다.
- Vector Index Name: MongoDB Atlas 컬렉션의 Vector Search 인덱스 이름을 입력합니다.
- Limit: 벡터 스토어에서 검색할 결과 수를 입력합니다. 예를 들어 가장 좋은 결과 10개를 가져오려면
10으로 설정합니다.
노드 옵션#
옵션#
- Metadata Filter: 메타데이터 기반으로 결과를 필터링합니다.
템플릿 및 예시#
이 노드의 워크플로 템플릿은 n8n 워크플로 템플릿 갤러리에서 확인할 수 있습니다.
관련 리소스#
다음을 참고하세요:
- 서비스에 대한 자세한 내용은 LangChain의 MongoDB Atlas Vector Search 문서를 참고하세요.
- MongoDB Atlas Vector Search에 대한 자세한 내용은 MongoDB Atlas Vector Search 문서를 참고하세요.
n8n의 Advanced AI 문서를 확인하세요.
셀프 호스팅 AI 스타터 킷#
AI 작업과 셀프 호스팅 n8n이 처음이신가요? Ollama, Qdrant, PostgreSQL을 활용한 개념 증명(PoC) 또는 데모 플레이그라운드를 시작하려면 n8n의 셀프 호스팅 AI 스타터 킷을 사용해 보세요.
