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]