Share via


Microsoft.Extensions.VectorData Namespace

Contains classes and interfaces for vector data operations, including vector search, filtering, indexing, and mapping between storage and data models.

Classes

AnyTagEqualToFilterClause

Represents a filter clause that filters by checking if a field consisting of a list of values contains a specific value.

DistanceFunction

Defines a list of well-known distance functions that can be used to compare vectors.

EqualToFilterClause

Represents a filter clause that filters using equality of a field value.

FilterClause

Defines a base class for filter clauses.

FilteredRecordRetrievalOptions<TRecord>.OrderByDefinition.SortInfo

Provides a way to define property ordering.

FilteredRecordRetrievalOptions<TRecord>.OrderByDefinition

Represents a builder for sorting.

FilteredRecordRetrievalOptions<TRecord>

Defines options for calling GetAsync(Expression<Func<TRecord,Boolean>>, Int32, FilteredRecordRetrievalOptions<TRecord>, CancellationToken).

HybridSearchOptions<TRecord>

Defines options for hybrid search when using a dense vector and string keywords to do the search.

IndexKind

Defines a list of well-known index types that can be used to index vectors.

KeywordHybridSearchExtensions

Provides a collection of static methods for extending IKeywordHybridSearchable<TRecord> instances.

RecordRetrievalOptions

Defines options for calling GetAsync(TKey, RecordRetrievalOptions, CancellationToken) or GetAsync(IEnumerable<TKey>, RecordRetrievalOptions, CancellationToken).

VectorSearchExtensions

Provides a collection of static methods for extending IVectorSearchable<TRecord> instances.

VectorSearchFilter

Provides filtering when doing vector searches. Contains configuration for doing basic vector search filtering.

VectorSearchOptions<TRecord>

Defines options for vector search via SearchAsync<TInput>(TInput, Int32, VectorSearchOptions<TRecord>, CancellationToken).

VectorSearchResult<TRecord>

Represents a single search result from a vector search.

VectorStore

Represents a vector store that contains collections of records.

VectorStoreCollection<TKey,TRecord>

Represents a named collection of records in a vector store, and can be used to search and manage records, and to create or delete the collection itself.

VectorStoreCollectionDefinition

Describes the properties of a record in a vector store collection.

VectorStoreCollectionMetadata

Provides metadata about an VectorStoreCollection<TKey,TRecord>.

VectorStoreCollectionOptions

Defines an abstract base class for options passed to a collection.

VectorStoreDataAttribute

Defines an attribute to mark a property on a record class as 'data'.

VectorStoreDataProperty

Defines a data property on a vector store record.

VectorStoreException

Defines a base exception type for any type of failure when using vector stores.

VectorStoreExtensions

Provides a collection of static methods for extending VectorStore instances.

VectorStoreKeyAttribute

Defines an attribute to mark a property on a record class as the key under which the record is stored in a vector store.

VectorStoreKeyProperty

Defines a key property on a vector store record.

VectorStoreMetadata

Provides metadata about an VectorStore.

VectorStoreProperty

Defines a base property class for properties on a vector store record.

VectorStoreVectorAttribute

Defines an attribute to mark a property on a record class as a vector.

VectorStoreVectorProperty

Defines a vector property on a vector store record.

VectorStoreVectorProperty<TInput>

Defines a vector property on a vector store record.

Interfaces

IKeywordHybridSearchable<TRecord>

Contains a method for performing a hybrid search using a vector and keywords.

IVectorSearchable<TRecord>

Defines an interface for performing vector searches on a vector store.