Skip to main content

Class: MongoDBAtlasVectorSearch

Vector store that uses MongoDB Atlas for storage and vector search. This store uses the $vectorSearch aggregation stage to perform vector similarity search.

Extends

Implements

Constructors

new MongoDBAtlasVectorSearch()

new MongoDBAtlasVectorSearch(init): MongoDBAtlasVectorSearch

Parameters

init: Partial<MongoDBAtlasVectorSearch> & object

Returns

MongoDBAtlasVectorSearch

Overrides

VectorStoreBase.constructor

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:142

Properties

autoCreateIndex

autoCreateIndex: boolean

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:79


collectionName

collectionName: string

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:78


dbName

dbName: string

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:77


embedModel

embedModel: BaseEmbedding

Inherited from

VectorStoreBase.embedModel

Defined in

packages/llamaindex/src/storage/vectorStore/types.ts:104


embeddingDefinition

embeddingDefinition: Record<string, unknown>

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:80


embeddingKey

embeddingKey: string

Name of the key containing the embedding vector.

Default: "embedding"

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:100


flatMetadata

flatMetadata: boolean = true

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:75


idKey

idKey: string

Name of the key containing the node id.

Default: "id"

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:107


indexName

indexName: string

Name of the vector index. If invalid, Mongo will silently ignore this issue and return 0 results.

Default: "default"

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:93


indexedMetadataFields

indexedMetadataFields: string[]

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:81


insertOptions?

optional insertOptions: BulkWriteOptions

Options to pass to the insertMany function when adding nodes.

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:126


metadataKey

metadataKey: string

Name of the key containing the node metadata.

Default: "metadata"

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:121


mongodbClient

mongodbClient: MongoClient

The used MongoClient. If not given, a new MongoClient is created based on the MONGODB_URI env variable.

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:86


numCandidates()

numCandidates: (query) => number

Function to determine the number of candidates to retrieve for a given query. In case your results are not good, you might tune this value.

Run Vector Search Queries

Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs

Default: query.similarityTopK * 10

Parameters

query: VectorStoreQuery

Returns

number

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:139


storesText

storesText: boolean = true

Implementation of

VectorStoreNoEmbedModel.storesText

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:74


textKey

textKey: string

Name of the key containing the node text.

Default: "text"

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:114

Accessors

client

get client(): any

Returns

any

Implementation of

VectorStoreNoEmbedModel.client

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:277

Methods

add()

add(nodes): Promise<string[]>

Add nodes to the vector store.

Parameters

nodes: BaseNode<Metadata>[]

Nodes to add to the vector store

Returns

Promise<string[]>

List of node ids that were added

Implementation of

VectorStoreNoEmbedModel.add

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:226


delete()

delete(refDocId, deleteOptions?): Promise<void>

Delete nodes from the vector store with the given redDocId.

Parameters

refDocId: string

The refDocId of the nodes to delete

deleteOptions?: any

Options to pass to the deleteOne function

Returns

Promise<void>

Implementation of

VectorStoreNoEmbedModel.delete

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:267


ensureCollection()

ensureCollection(): Promise<Collection<Document>>

Returns

Promise<Collection<Document>>

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:183


query()

query(query, options?): Promise<VectorStoreQueryResult>

Perform a vector similarity search query.

Parameters

query: VectorStoreQuery

The query to run

options?: any

Returns

Promise<VectorStoreQueryResult>

List of nodes and their similarities

Implementation of

VectorStoreNoEmbedModel.query

Defined in

packages/llamaindex/src/storage/vectorStore/MongoDBAtlasVectorStore.ts:287