k-NN icon indicating copy to clipboard operation
k-NN copied to clipboard

[DO NOT MERGE][NEED INITIAL FEEDBACK] Adds NativeEngineKnnFloatVectorQuery

Open shatejas opened this issue 1 year ago • 3 comments

Description

This approach extends Lucene's KNNFloatVectorQuery. Testing in progress

There are some differences and its hard to achieve status quo with current implementation without overriding rewrite or making changes in lucene Differences

Related Issues

Resolves #[Issue number to be closed when this PR is merged]

Check List

  • [ ] New functionality includes testing.
  • [ ] New functionality has been documented.
  • [ ] API changes companion pull request created.
  • [ ] Commits are signed per the DCO using --signoff.
  • [ ] Public documentation issue/PR created.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.

shatejas avatar Jul 30 '24 00:07 shatejas

I dont think we can get rid of that setting without following deprecation path. Why is it blocked? If we cant get around it, I think this is a non-starter then.

jmazanec15 avatar Jul 30 '24 14:07 jmazanec15

I dont think we can get rid of that setting without following deprecation path. Why is it blocked? If we cant get around it, I think this is a non-starter then.

Its blocked we are trying to use lucenes rewrite method which has a simpler condition and no way to extend

shatejas avatar Jul 30 '24 17:07 shatejas

Is it worth extending AbstractKnnFloatQuery and overwriting everything just for sake of not having to copy DocAndScoreQuery code?

One comment around setting: in future, if we move towards implementing codec reader search methods, we could pass the setting to the codec if its an index setting. But, thats out of scope for this.

jmazanec15 avatar Jul 30 '24 18:07 jmazanec15