Skip to content

Add model version to model metadata and change model metadata reads to be from cluster metadata - #2005

Merged
naveentatikonda merged 13 commits into
opensearch-project:mainfrom
ryanbogan:add_model_version
Sep 5, 2024
Merged

Add model version to model metadata and change model metadata reads to be from cluster metadata#2005
naveentatikonda merged 13 commits into
opensearch-project:mainfrom
ryanbogan:add_model_version

Conversation

@ryanbogan

@ryanbogan ryanbogan commented Aug 27, 2024

Copy link
Copy Markdown
Member

Description

Adds the OpenSearch version with which a model is created to its metadata. Additionally, changes modelMetadata reads to read from cluster metadata in order to eliminate an unnecessary get model call.

This change helps prevent null pointer exceptions, since we can tell which variables are present in the metadata based on the version. Additionally, it is required for re-scoring features that are being added as part of disk-based search.

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.

Ryan Bogan added 3 commits August 26, 2024 10:11
Signed-off-by: Ryan Bogan <rbogan@amazon.com>
…o be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Comment thread src/main/java/org/opensearch/knn/common/KNNConstants.java
Comment thread src/main/java/org/opensearch/knn/indices/ModelMetadata.java Outdated
Comment thread src/main/java/org/opensearch/knn/training/TrainingJob.java Outdated
Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: Ryan Bogan <rbogan@amazon.com>
@jmazanec15

Copy link
Copy Markdown
Member

@ryanbogan

Copy link
Copy Markdown
Member Author

Ryan Bogan added 2 commits August 29, 2024 15:42
navneet1v
navneet1v previously approved these changes Sep 3, 2024
Ryan Bogan added 2 commits September 4, 2024 11:42
Ryan Bogan added 2 commits September 5, 2024 02:09
Signed-off-by: Ryan Bogan <rbogan@amazon.com>
@ryanbogan

Copy link
Copy Markdown
Member Author

Skipping changelog because change is in release notes

+ "\"<KNNEngine>,<SpaceType>,<Dimension>,<ModelState>,<Timestamp>,<Description>,<Error>,<NodeAssignment>,<MethodContext>\" or "
+ "\"<KNNEngine>,<SpaceType>,<Dimension>,<ModelState>,<Timestamp>,<Description>,<Error>,<NodeAssignment>,<MethodContext>,<VectorDataType>\". or "
+ "\"<KNNEngine>,<SpaceType>,<Dimension>,<ModelState>,<Timestamp>,<Description>,<Error>,<NodeAssignment>,<MethodContext>,<VectorDataType>,<Mode>,<CompressionLevel>\"."
+ "\"<KNNEngine>,<SpaceType>,<Dimension>,<ModelState>,<Timestamp>,<Description>,<Error>,<NodeAssignment>,<MethodContext>,<VectorDataType>,<Mode>,<CompressionLevel>\" or "

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FAR: since Mode, CLevel and Version are all same release, we can simplify this.

Comment thread src/main/java/org/opensearch/knn/indices/ModelUtil.java Outdated
Signed-off-by: John Mazanec <jmazane@amazon.com>
jmazanec15
jmazanec15 previously approved these changes Sep 5, 2024

@jmazanec15 jmazanec15 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Vikasht34 Vikasht34 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@naveentatikonda

Copy link
Copy Markdown
Member

@ryanbogan can you rebase this PR with main branch to fix conflicts ?

@naveentatikonda
naveentatikonda merged commit 6814c8f into opensearch-project:main Sep 5, 2024
@ryanbogan
ryanbogan deleted the add_model_version branch September 5, 2024 17:30
@opensearch-trigger-bot

Copy link
Copy Markdown
Contributor

The backport to 2.x failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.x 2.x
# Navigate to the new working tree
cd .worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-2005-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 6814c8f60707ff8e3be835558ab35ae5a9ea0c1a
# Push it to GitHub
git push --set-upstream origin backport/backport-2005-to-2.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.x

Then, create a pull request where the base branch is 2.x and the compare/head branch is backport/backport-2005-to-2.x.

@opensearch-trigger-bot

Copy link
Copy Markdown
Contributor

The backport to 2.17 failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.17 2.17
# Navigate to the new working tree
cd .worktrees/backport-2.17
# Create a new branch
git switch --create backport/backport-2005-to-2.17
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 6814c8f60707ff8e3be835558ab35ae5a9ea0c1a
# Push it to GitHub
git push --set-upstream origin backport/backport-2005-to-2.17
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.17

Then, create a pull request where the base branch is 2.17 and the compare/head branch is backport/backport-2005-to-2.17.

ryanbogan pushed a commit that referenced this pull request Sep 5, 2024
…o be from cluster metadata (#2005)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
(cherry picked from commit 6814c8f)
naveentatikonda pushed a commit that referenced this pull request Sep 5, 2024
…o be from cluster metadata (#2005) (#2054)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
(cherry picked from commit 6814c8f)
ryanbogan pushed a commit that referenced this pull request Sep 6, 2024
…o be from cluster metadata (#2005)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
(cherry picked from commit 6814c8f)
navneet1v pushed a commit that referenced this pull request Sep 9, 2024
…etadata reads to be from cluster metadata (#2063)

* Add model version to model metadata and change model metadata reads to be from cluster metadata (#2005)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
(cherry picked from commit 6814c8f)

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
akashsha1 pushed a commit to akashsha1/k-NN that referenced this pull request Sep 16, 2024
…o be from cluster metadata (opensearch-project#2005)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
Signed-off-by: Akash Shankaran <akash.shankaran@intel.com>
jingqimao77-spec pushed a commit to jingqimao77-spec/k-NN that referenced this pull request Mar 15, 2026
…o be from cluster metadata (opensearch-project#2005)

* Add model version to model metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add model version to model metadata and change model metadata reads to be from cluster metadata

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Add changelog entry

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Set version from config context

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix spotless

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Update model index mappings

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Change field mapper to read model version

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* Fix tests

Signed-off-by: Ryan Bogan <rbogan@amazon.com>

* remove println

Signed-off-by: John Mazanec <jmazane@amazon.com>

---------

Signed-off-by: Ryan Bogan <rbogan@amazon.com>
Signed-off-by: John Mazanec <jmazane@amazon.com>
Co-authored-by: John Mazanec <jmazane@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants