Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Elasticsearch 8 #2810

Closed
5 tasks done
masci opened this issue Jul 14, 2022 · 7 comments
Closed
5 tasks done

Add support for Elasticsearch 8 #2810

masci opened this issue Jul 14, 2022 · 7 comments
Assignees
Labels

Comments

@masci
Copy link
Contributor

masci commented Jul 14, 2022

Is your feature request related to a problem? Please describe.
Haystack should be compatible with more recent Elasticsearch releases, possibly also leveraging new features

Describe the solution you'd like
The kNN search API was changed with version 8 and most likely will speed up dense retrieval. Other features could also be interesting for Haystack, e.g. pytorch model support

Tasks

  1. breaking change topic:CI topic:build/distribution topic:dependencies topic:document_store topic:pinecone topic:retriever topic:tests type:documentation
  2. ignore-for-release-notes topic:windows
  3. topic:document_store topic:elasticsearch
  4. P1 topic:elasticsearch
    bogdankostic
  5. Contributions wanted! P2 topic:document_store topic:elasticsearch type:documentation type:enhancement
    bogdankostic
@UmarEm
Copy link

UmarEm commented Aug 23, 2022

Hey @masci @ZanSara @julian-risch Can we get the timeline/plan for Elasticsearch 8.x support. You had earlier mentioned, that the support for Elasticsearch 8.x is scheduled for this quater
It would be great, if we could know what is the progress, and when can we expect the update.

Thank you

@nickchomey
Copy link
Contributor

Above it says 8.3.3 is pinned for testing, but ES 8.4 moved the ANN mechanism into the _search endpoint, which probably would require various changes on your end. I'm just sharing this in case you missed the recent announcement/update.

And any guidance (however tentative) that you might be able to provide about when this will be supported by Haystack would be very appreciated. Thanks for the great work!

https://www.elastic.co/guide/en/elasticsearch/reference/current/release-highlights.html#integrate_ann_into_search_endpoint

@julian-risch
Copy link
Member

I noticed that Haystack's dependency BEIR pins the version of the elasticsearch client to elasticsearch==7.9.1. However, BEIR is just an optional dependency (not mandatory) and is only installed for the installation options all, all-gpu, and beir.

@anakin87
Copy link
Member

I noticed that Haystack's dependency BEIR pins the version of the elasticsearch client to elasticsearch==7.9.1. However, BEIR is just an optional dependency (not mandatory) and is only installed for the installation options all, all-gpu, and beir.

Similar problem (beir pins faiss-cpu): #3218

@masci masci added epic:in-progress Epic is in progress and removed epic:idle Epic not yet started labels Nov 22, 2022
@masci masci assigned masci and unassigned julian-risch and ZanSara Dec 28, 2022
@julian-risch
Copy link
Member

Slightly related: A user needed just a few lines of code to use Haystack with Elastic on GCP #4547

@julian-risch
Copy link
Member

ES8 is now supported and the last related issue has been merged: #5320

@julian-risch julian-risch removed the epic:in-progress Epic is in progress label Jul 14, 2023
@btofan
Copy link

btofan commented Jul 18, 2023

Does the current solution support the approximate KNN feature that elasticsearch offers? According to the elasticsearch documentation (cf. https://www.elastic.co/guide/en/elasticsearch/reference/current/knn-search.html#approximate-knn), a specific kind of indexing and querying is required for approximate KNN search. I couldn't find the solution in the current commits. (This was also one of the main intentions of this issue and the related issues #2833, #2368.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Development

No branches or pull requests

7 participants