MemoryEmbeddingStorageService
Wisej.AI.Services.MemoryEmbeddingStorageService
Namespace: Wisej.AI.Services
Assembly: Wisej.AI (3.5.0.0)
Provides an in-memory implementation of the IEmbeddingStorageService interface.
public class MemoryEmbeddingStorageService : IEmbeddingStorageService
This service stores embedded documents in memory using a dictionary. It supports operations such as checking for existence, querying, removing, retrieving, and storing documents.
Constructors
MemoryEmbeddingStorageService()

Initializes a new instance of MemoryEmbeddingStorageService.
Methods
ExistsAsync(collectionName, documentName)

Checks if a document exists in the specified collection.
Returns: Task<Boolean>. A task that represents the asynchronous operation. The task result contains a boolean indicating whether the document exists.
QueryAsync(collectionName, query, topN, minSimilarity, filter)

Queries the specified collection for documents similar to the provided query vector.
filter
An optional filter predicate to apply to documents. Default is null.
Returns: Task<EmbeddedDocument[]>. A task that represents the asynchronous operation. The task result contains an array of EmbeddedDocument objects.
QueryAsync(collectionName, documentName, query, topN, minSimilarity)

Queries a specific document in the collection for similarity to the provided query vector.
Returns: Task<EmbeddedDocument>. A task that represents the asynchronous operation. The task result contains the EmbeddedDocument with the top similar chunks.
Throws:
ArgumentNullException Thrown when the document is null.
RemoveAsync(collectionName, filter)

Removes documents from the specified collection that match the given filter.
filter
An optional filter predicate to apply to documents. Default is null.
Returns: Task. A task that represents the asynchronous operation.
RemoveAsync(collectionName, documentName)

Removes a specific document from the collection.
Returns: Task. A task that represents the asynchronous operation.
RetrieveAsync(collectionName, documentName, includeEmbedding)

Retrieves a specific document from the collection.
Returns: Task<EmbeddedDocument>. A task that represents the asynchronous operation. The task result contains the EmbeddedDocument.
RetrieveAsync(collectionName, includeEmbedding, filter)

Retrieves all documents from the specified collection that match the given filter.
filter
An optional filter predicate to apply to documents. Default is null.
Returns: Task<EmbeddedDocument[]>. A task that represents the asynchronous operation. The task result contains an array of EmbeddedDocument objects.
StoreAsync(collectionName, document)

Stores a document in the specified collection.
Returns: Task. A task that represents the asynchronous operation.
Throws:
ArgumentNullException Thrown when the document is null.
Implements
Represents a service for storing and querying embedded documents within specified collections.
Last updated