Share via


VectorSearchCompression Class

Definition

Contains configuration options specific to the compression method used during indexing or querying. Please note VectorSearchCompression is the base class. According to the scenario, a derived class of the base class might need to be assigned here, or this property needs to be casted to one of the possible derived classes. The available derived classes include BinaryQuantizationCompression and ScalarQuantizationCompression.

public abstract class VectorSearchCompression
[System.ClientModel.Primitives.PersistableModelProxy(typeof(Azure.Search.Documents.Models.UnknownVectorSearchCompression))]
public abstract class VectorSearchCompression : System.ClientModel.Primitives.IJsonModel<Azure.Search.Documents.Indexes.Models.VectorSearchCompression>, System.ClientModel.Primitives.IPersistableModel<Azure.Search.Documents.Indexes.Models.VectorSearchCompression>
type VectorSearchCompression = class
[<System.ClientModel.Primitives.PersistableModelProxy(typeof(Azure.Search.Documents.Models.UnknownVectorSearchCompression))>]
type VectorSearchCompression = class
    interface IJsonModel<VectorSearchCompression>
    interface IPersistableModel<VectorSearchCompression>
Public MustInherit Class VectorSearchCompression
Public MustInherit Class VectorSearchCompression
Implements IJsonModel(Of VectorSearchCompression), IPersistableModel(Of VectorSearchCompression)
Inheritance
VectorSearchCompression
Derived
Attributes
Implements

Constructors

VectorSearchCompression(String)

Initializes a new instance of VectorSearchCompression.

Properties

CompressionName

The name to associate with this particular configuration.

DefaultOversampling

Default oversampling factor. Oversampling will internally request more documents (specified by this multiplier) in the initial search. This increases the set of results that will be reranked using recomputed similarity scores from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). This parameter can only be set when rerankWithOriginalVectors is true. Higher values improve recall at the expense of latency.

RerankWithOriginalVectors

If set to true, once the ordered set of results calculated using compressed vectors are obtained, they will be reranked again by recalculating the full-precision similarity scores. This will improve recall at the expense of latency.

RescoringOptions

Contains the options for rescoring.

TruncationDimension

The number of dimensions to truncate the vectors to. Truncating the vectors reduces the size of the vectors and the amount of data that needs to be transferred during search. This can save storage cost and improve search performance at the expense of recall. It should be only used for embeddings trained with Matryoshka Representation Learning (MRL) such as OpenAI text-embedding-3-large (small). The default value is null, which means no truncation.

Methods

JsonModelWriteCore(Utf8JsonWriter, ModelReaderWriterOptions)

Explicit Interface Implementations

IJsonModel<VectorSearchCompression>.Create(Utf8JsonReader, ModelReaderWriterOptions)

Reads one JSON value (including objects or arrays) from the provided reader and converts it to a model.

IJsonModel<VectorSearchCompression>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<VectorSearchCompression>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<VectorSearchCompression>.GetFormatFromOptions(ModelReaderWriterOptions)

Gets the data interchange format (JSON, Xml, etc) that the model uses when communicating with the service.

IPersistableModel<VectorSearchCompression>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

Applies to