Skip to main content

Class: QdrantVectorStore

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:229

IVectorStore

Description

Defines the contract for interacting with a specific vector database or storage backend. Implementations will wrap specific clients (e.g., Pinecone client, Weaviate client, in-memory store logic).

Implements

Constructors

Constructor

new QdrantVectorStore(): QdrantVectorStore

Returns

QdrantVectorStore

Methods

checkHealth()

checkHealth(): Promise<{ details?: any; isHealthy: boolean; }>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:359

Checks the operational health of the vector store provider. This might involve pinging the service, checking connection status, or verifying authentication.

Returns

Promise<{ details?: any; isHealthy: boolean; }>

A promise that resolves with the health status. details can include specific error messages or status information.

Async

Implementation of

IVectorStore.checkHealth


collectionExists()

collectionExists(collectionName): Promise<boolean>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:388

Checks if a collection with the given name exists in the vector store.

Parameters

collectionName

string

The name of the collection to check.

Returns

Promise<boolean>

A promise that resolves with true if the collection exists, false otherwise.

Async

Throws

If the check fails for reasons other than existence (e.g., connection issue).

Implementation of

IVectorStore.collectionExists


createCollection()

createCollection(collectionName, dimension, options?): Promise<void>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:407

Creates a new collection (or index, class, etc.) in the vector store. This is often necessary before documents can be upserted into it, depending on the provider.

Parameters

collectionName

string

The name of the collection to create.

dimension

number

The dimensionality of the vector embeddings that will be stored in this collection.

options?

CreateCollectionOptions

Optional parameters for collection creation, such as similarity metric or provider-specific settings.

Returns

Promise<void>

A promise that resolves when the collection is successfully created.

Async

Throws

If collection creation fails (e.g., name conflict and not overwriting, invalid parameters).

Implementation of

IVectorStore.createCollection


delete()

delete(collectionName, ids?, options?): Promise<DeleteResult>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:791

Deletes documents from a specified collection by their IDs or by a metadata filter.

Parameters

collectionName

string

The name of the collection to delete documents from.

ids?

string[]

An array of document IDs to delete.

options?

DeleteOptions

Optional parameters, including metadata filters or a deleteAll flag. If ids are provided, options.filter might be ignored or combined, depending on store behavior. Use with caution.

Returns

Promise<DeleteResult>

A promise that resolves with the result of the delete operation.

Async

Throws

If the delete operation fails.

Implementation of

IVectorStore.delete


deleteCollection()

deleteCollection(collectionName): Promise<void>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:459

Deletes an entire collection from the vector store. This is a destructive operation.

Parameters

collectionName

string

The name of the collection to delete.

Returns

Promise<void>

A promise that resolves when the collection is successfully deleted.

Async

Throws

If collection deletion fails.

Implementation of

IVectorStore.deleteCollection


getStats()

getStats(collectionName?): Promise<Record<string, any>>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:468

Optional: Retrieves statistics about a specific collection or the store itself. The structure of the returned statistics is provider-dependent.

Parameters

collectionName?

string

Optional: The name of the collection to get stats for. If omitted, may return store-wide stats if supported.

Returns

Promise<Record<string, any>>

A promise that resolves with a statistics object.

Async

Throws

If fetching statistics fails.

Implementation of

IVectorStore.getStats


hybridSearch()

hybridSearch(collectionName, queryEmbedding, queryText, options?): Promise<QueryResult>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:628

Optional: Hybrid retrieval combining dense vector similarity with lexical search.

This is typically implemented using a store-native full-text index (e.g., SQLite FTS5), or a store-side BM25 implementation, then fusing dense and lexical rankings (e.g., RRF).

If not implemented, callers should fall back to query() (dense similarity).

Parameters

collectionName

string

queryEmbedding

number[]

queryText

string

options?

QueryOptions & object

Returns

Promise<QueryResult>

Implementation of

IVectorStore.hybridSearch


initialize()

initialize(config): Promise<void>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:244

Initializes the vector store provider with its specific configuration. This method must be called before any other operations can be performed. It sets up connections, authenticates, and prepares the store for use.

Parameters

config

VectorStoreProviderConfig

The configuration object specific to this vector store provider. This is typically a more specific type that extends VectorStoreProviderConfig.

Returns

Promise<void>

A promise that resolves when initialization is complete.

Async

Throws

If initialization fails (e.g., invalid configuration, connection error, authentication failure).

Implementation of

IVectorStore.initialize


query()

query(collectionName, queryEmbedding, options?): Promise<QueryResult>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:592

Queries a specified collection for documents similar to the provided query embedding.

Parameters

collectionName

string

The name of the collection to query.

queryEmbedding

number[]

The query vector embedding.

options?

QueryOptions

Optional parameters for the query operation, including filters and topK.

Returns

Promise<QueryResult>

A promise that resolves with the query results.

Async

Throws

If the query operation fails.

Implementation of

IVectorStore.query


shutdown()

shutdown(): Promise<void>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:383

Gracefully shuts down the vector store provider, releasing any resources such as database connections or client instances.

Returns

Promise<void>

A promise that resolves when shutdown is complete.

Async

Implementation of

IVectorStore.shutdown


upsert()

upsert(collectionName, documents, options?): Promise<UpsertResult>

Defined in: packages/agentos/src/rag/implementations/vector_stores/QdrantVectorStore.ts:486

Upserts (inserts or updates) a batch of documents into a specified collection. If a document with the same ID already exists, it is typically updated; otherwise, it's inserted.

Parameters

collectionName

string

The name of the collection (or index, class, etc.) to upsert documents into.

documents

VectorDocument[]

An array of documents to upsert.

options?

UpsertOptions

Optional parameters for the upsert operation.

Returns

Promise<UpsertResult>

A promise that resolves with the result of the upsert operation.

Async

Throws

If the upsert operation fails critically.

Implementation of

IVectorStore.upsert