kaivalnp commented on code in PR #16065:
URL: https://github.com/apache/lucene/pull/16065#discussion_r3304309237


##########
lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissLibraryNativeImpl.java:
##########
@@ -275,31 +268,34 @@ private interface FloatToFloatFunction {
     private final Arena arena;
     private final MemorySegment indexPointer;
     private final FloatToFloatFunction scaler;
+    private final VectorSimilarityFunction function;
+    private final int dimension;
     private boolean closed;
 
-    private Index(MemorySegment indexPointer) {
+    private Index(MemorySegment indexPointer, VectorSimilarityFunction 
function) {
       this.arena = Arena.ofShared();
       this.indexPointer =
           indexPointer
               // Ensure timely cleanup
               .reinterpret(arena, wrapper::faiss_Index_free);
-
-      // Get underlying function
-      int metricType = wrapper.faiss_Index_metric_type(indexPointer);
-      VectorSimilarityFunction function = metricToFunction(metricType);

Review Comment:
   The latency difference b/w `flat` and `hnsw` looks too small? Perhaps the 
number of docs was low too..
   I'd also be interested in a comparison b/w Lucene and Faiss based HNSW
   In any case, this does demonstrate correctness^



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to