From 7bf109dd3edc206b9bc2a8c3da4a53204d947e8e Mon Sep 17 00:00:00 2001 From: Allen Kim Date: Tue, 16 Dec 2025 15:09:35 -0800 Subject: [PATCH] Add test for float16 type --- .../com/azure/cosmos/rx/VectorIndexTest.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/rx/VectorIndexTest.java b/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/rx/VectorIndexTest.java index 6390f8ba2df0..60429a598b1a 100644 --- a/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/rx/VectorIndexTest.java +++ b/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/rx/VectorIndexTest.java @@ -336,7 +336,13 @@ private List populateVectorIndexes() { cosmosVectorIndexSpec3.setIndexingSearchListSize(30); cosmosVectorIndexSpec3.setVectorIndexShardKeys(Arrays.asList("/country/city")); - return Arrays.asList(cosmosVectorIndexSpec1, cosmosVectorIndexSpec2, cosmosVectorIndexSpec3); + CosmosVectorIndexSpec cosmosVectorIndexSpec4 = new CosmosVectorIndexSpec(); + cosmosVectorIndexSpec4.setPath("/vector4"); + cosmosVectorIndexSpec4.setType(CosmosVectorIndexType.QUANTIZED_FLAT.toString()); + cosmosVectorIndexSpec4.setQuantizationSizeInBytes(2); + cosmosVectorIndexSpec4.setVectorIndexShardKeys(Arrays.asList("/zipCode")); + + return Arrays.asList(cosmosVectorIndexSpec1, cosmosVectorIndexSpec2, cosmosVectorIndexSpec3, cosmosVectorIndexSpec4); } private List populateEmbeddings() { @@ -357,14 +363,21 @@ private List populateEmbeddings() { embedding3.setDataType(CosmosVectorDataType.UINT8); embedding3.setEmbeddingDimensions(3); embedding3.setDistanceFunction(CosmosVectorDistanceFunction.EUCLIDEAN); - return Arrays.asList(embedding1, embedding2, embedding3); + + CosmosVectorEmbedding embedding4 = new CosmosVectorEmbedding(); + embedding4.setPath("/vector4"); + embedding4.setDataType(CosmosVectorDataType.FLOAT16); + embedding4.setEmbeddingDimensions(3); + embedding4.setDistanceFunction(CosmosVectorDistanceFunction.DOT_PRODUCT); + return Arrays.asList(embedding1, embedding2, embedding3, embedding4); } private String getVectorEmbeddingPolicyAsString() { return "{\"vectorEmbeddings\":[" + "{\"path\":\"/vector1\",\"dataType\":\"int8\",\"dimensions\":3,\"distanceFunction\":\"cosine\"}," + "{\"path\":\"/vector2\",\"dataType\":\"float32\",\"dimensions\":3,\"distanceFunction\":\"dotproduct\"}," + - "{\"path\":\"/vector3\",\"dataType\":\"uint8\",\"dimensions\":3,\"distanceFunction\":\"euclidean\"}" + + "{\"path\":\"/vector3\",\"dataType\":\"uint8\",\"dimensions\":3,\"distanceFunction\":\"euclidean\"}," + + "{\"path\":\"/vector4\",\"dataType\":\"float16\",\"dimensions\":3,\"distanceFunction\":\"dotproduct\"}" + "]}"; } }