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.

Vector Search Queries

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