-
Notifications
You must be signed in to change notification settings - Fork 72
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
[FEATURE INTAKE] Improving Search relevancy through Reranker interfaces #542
Comments
@martin-gaievski is there any chance you have a cloud formation script or otherwise that sets up the benchmarking cluster or am I on my own? |
if you are ok with hosting cluster in AWS then you can use this tool - https://github.com/opensearch-project/opensearch-cluster-cdk. as your code isn't part of the official build you'll need to replace neural-search artifacts in data nodes before running benchmarks. You can try to build a complete deployable tarball using this tool https://github.com/opensearch-project/opensearch-build/, but setup maybe be a bit complex, so I suggest for one time test like this to use cluster-cdk. You can take this latest 2.12 distribution build as a basis: https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/2.12.0/8999/linux/x64/tar/dist/opensearch/opensearch-2.12.0-linux-x64.tar.gz |
Performance benchmarks: First a couple notes:
If these seem like rather lackluster results, that's because they kinda are... I think I may have prepared bge wrong? |
@HenryL27 thank you for sharing these results. For the review we also need results for search relevancy, mainly nDCG@10, format can be a simplified version of one that shared in the blog for Hybrid query search |
@HenryL27 I am closing this issue. As the feature is released. |
hey @HenryL27 I am currently trying to replicate this results for reranking, I wanted to ask what you meant by this statement:
For neural search benchmarking I am following what is in the example given by Martin to test search latency with neural query. However for reranking based on the docs I see for the feature, the query isn't a neural query. What do you mean by "all reranking experiments were done over neural searches"? |
reranking is an extension of a query - you run a query and then you rerank the results from that query.
means that the base query I used (and subsequently extended with reranking) was a neural query with minilm. |
I see so the index you queried against was an knn index (or at least had embedding stored in one of the fields)? In the doc website I saw:
is it more relevant to benchmarking of a query that looks like this:
My goal is to get a good base line for p50, p90, p99 query latency for reranker neural clause for comparison. |
yeah, the second is essentially what I did in benchmarking. In general the reranking latency is gonna be substantially higher than the neural or bm25, just by nature of the computations that are going on. |
This document captures the activities that needs to be performed in order to prepare the Re-ranking Feature #485 for release.
Release Activities
Below are the release activities that needs to be done to ensure that Re-ranking feature can be merged in 2.12 release of OpenSearch.
Code Freeze Date: Feb 6, 2024
Release calendar: https://opensearch.org/releases.html
PR Merge
Once the PR is approved, it can be merged to the feature branch. The PR will move to main and 2.x branch once the security review and Benchmarking is done. We can wait for documentation to be completed.
Status: Completed
Application Security Approval
Status: In progress
Benchmarking
To ensure that this feature is fully tested and we are aware of latency and search relevancy impact team needs to run the benchmarks.
Status: Not started
Benchmarking Details
Benchmarking tool: https://github.com/martin-gaievski/info-retrieval-test/tree/score-normalization-combination-testing/beir/retrieval
Cluster Configuration
Data sets
Re-ranking Model
Use the models which are Opensource so that the results can be reproduced by other users.
Once you have the results please paste the result table on the RFC. The benchmarking results will be reviewed by the maintainers of the Neural Search plugin to understand the tradeoffs. As a general guidance you should be able justify the latency trade-offs(if any) with improved relevancy metrics.
Documentation
As this is a new feature the feature owner needs to start writing the documentation for this feature. This task has not been started yet. We can add the new section under this table of Search Relevancy. https://opensearch.org/docs/latest/search-plugins/search-relevance/index/.
Status: Not started
Expectation from Documentation:
Feature Demo
As this is new feature we need to a feature demo for this. Aryn team can provide a demo video.
Status: Not started
The text was updated successfully, but these errors were encountered: