Share via


BinaryQuantizationCompression Class

public final class BinaryQuantizationCompression
extends VectorSearchCompression

Contains configuration options specific to the binary quantization compression method used during indexing and querying.

Constructor Summary

Constructor Description
BinaryQuantizationCompression(String compressionName)

Creates an instance of BinaryQuantizationCompression class.

Method Summary

Modifier and Type Method and Description
static BinaryQuantizationCompression fromJson(JsonReader jsonReader)

Reads an instance of BinaryQuantizationCompression from the JsonReader.

VectorSearchCompressionKind getKind()

Get the kind property: The name of the kind of compression method being configured for use with vector search.

BinaryQuantizationCompression setDefaultOversampling(Double defaultOversampling)

Set the defaultOversampling property: Default oversampling factor.

BinaryQuantizationCompression setRerankWithOriginalVectors(Boolean rerankWithOriginalVectors)

Set the rerankWithOriginalVectors property: 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.

BinaryQuantizationCompression setRescoringOptions(RescoringOptions rescoringOptions)

Set the rescoringOptions property: Contains the options for rescoring.

BinaryQuantizationCompression setTruncationDimension(Integer truncationDimension)

Set the truncationDimension property: The number of dimensions to truncate the vectors to.

JsonWriter toJson(JsonWriter jsonWriter)

Methods inherited from VectorSearchCompression

Methods inherited from java.lang.Object

Constructor Details

BinaryQuantizationCompression

public BinaryQuantizationCompression(String compressionName)

Creates an instance of BinaryQuantizationCompression class.

Parameters:

compressionName - the compressionName value to set.

Method Details

fromJson

public static BinaryQuantizationCompression fromJson(JsonReader jsonReader)

Reads an instance of BinaryQuantizationCompression from the JsonReader.

Parameters:

jsonReader - The JsonReader being read.

Returns:

An instance of BinaryQuantizationCompression if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.

Throws:

IOException

- If the deserialized JSON object was missing any required properties.

getKind

public VectorSearchCompressionKind getKind()

Get the kind property: The name of the kind of compression method being configured for use with vector search.

Overrides:

BinaryQuantizationCompression.getKind()

Returns:

the kind value.

setDefaultOversampling

public BinaryQuantizationCompression setDefaultOversampling(Double defaultOversampling)

Set the defaultOversampling property: 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. For use with only service version 2024-07-01. If using 2025-09-01 or later, use RescoringOptions.defaultOversampling.

Overrides:

BinaryQuantizationCompression.setDefaultOversampling(Double defaultOversampling)

Parameters:

defaultOversampling

setRerankWithOriginalVectors

public BinaryQuantizationCompression setRerankWithOriginalVectors(Boolean rerankWithOriginalVectors)

Set the rerankWithOriginalVectors property: 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. For use with only service version 2024-07-01. If using 2025-09-01 or later, use RescoringOptions.rescoringEnabled.

Overrides:

BinaryQuantizationCompression.setRerankWithOriginalVectors(Boolean rerankWithOriginalVectors)

Parameters:

rerankWithOriginalVectors

setRescoringOptions

public BinaryQuantizationCompression setRescoringOptions(RescoringOptions rescoringOptions)

Set the rescoringOptions property: Contains the options for rescoring.

Overrides:

BinaryQuantizationCompression.setRescoringOptions(RescoringOptions rescoringOptions)

Parameters:

rescoringOptions

setTruncationDimension

public BinaryQuantizationCompression setTruncationDimension(Integer truncationDimension)

Set the truncationDimension property: 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.

Overrides:

BinaryQuantizationCompression.setTruncationDimension(Integer truncationDimension)

Parameters:

truncationDimension

toJson

public JsonWriter toJson(JsonWriter jsonWriter)

Overrides:

BinaryQuantizationCompression.toJson(JsonWriter jsonWriter)

Parameters:

jsonWriter

Throws:

Applies to