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 processed function for remote inference input dataset parameters to convert it back to its orignal datatype #2852

Merged
merged 6 commits into from
Aug 28, 2024

Conversation

b4sjoo
Copy link
Collaborator

@b4sjoo b4sjoo commented Aug 28, 2024

Description

This PR add a method to process the parameters field in the remote inference input dataset to convert it back to its original datatype, instead of a string.

Related Issues

In #2829 we have identified a model interface issue, however we found the root cause is the parsing method of RemoteInferenceInputDataset will make all the value inside Parameters map into string. Thus in the model interface validation process we need to parse it back to its original datatype.

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.

…to convert it back to its orignal datatype

Signed-off-by: b4sjoo <sicheng.song@outlook.com>
@dhrubo-os
Copy link
Collaborator

apply spotless.

Signed-off-by: b4sjoo <sicheng.song@outlook.com>
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:06 — with GitHub Actions Inactive
@b4sjoo b4sjoo had a problem deploying to ml-commons-cicd-env August 28, 2024 20:06 — with GitHub Actions Failure
Signed-off-by: b4sjoo <sicheng.song@outlook.com>
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:13 — with GitHub Actions Inactive
@b4sjoo b4sjoo had a problem deploying to ml-commons-cicd-env August 28, 2024 20:13 — with GitHub Actions Failure
Signed-off-by: b4sjoo <sicheng.song@outlook.com>
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:29 — with GitHub Actions Inactive
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:30 — with GitHub Actions Inactive
b4sjoo added 2 commits August 28, 2024 20:40
Signed-off-by: b4sjoo <sicheng.song@outlook.com>
Signed-off-by: b4sjoo <sicheng.song@outlook.com>
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:41 — with GitHub Actions Inactive
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 20:41 — with GitHub Actions Inactive
@b4sjoo
Copy link
Collaborator Author

b4sjoo commented Aug 28, 2024

Tested all automated model interface on a test domain with prediction twice, looks good.

@b4sjoo b4sjoo added bug Something isn't working backport 2.x 2.17 labels Aug 28, 2024
@b4sjoo b4sjoo merged commit 0a89537 into opensearch-project:main Aug 28, 2024
8 checks passed
opensearch-trigger-bot bot pushed a commit that referenced this pull request Aug 28, 2024
…to convert it back to its orignal datatype (#2852)

* Add processed function for remote inference input dataset parameters to convert it back to its orignal datatype

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* spotless

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* remove debugging print

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Add UTs

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Add UTs

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Spotless

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

---------

Signed-off-by: b4sjoo <sicheng.song@outlook.com>
(cherry picked from commit 0a89537)
b4sjoo added a commit that referenced this pull request Aug 28, 2024
…to convert it back to its orignal datatype (#2852) (#2855)

* Add processed function for remote inference input dataset parameters to convert it back to its orignal datatype

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* spotless

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* remove debugging print

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Add UTs

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Add UTs

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

* Spotless

Signed-off-by: b4sjoo <sicheng.song@outlook.com>

---------

Signed-off-by: b4sjoo <sicheng.song@outlook.com>
(cherry picked from commit 0a89537)

Co-authored-by: Sicheng Song <sicheng.song@outlook.com>
@b4sjoo b4sjoo temporarily deployed to ml-commons-cicd-env August 28, 2024 21:51 — with GitHub Actions Inactive
String textValue = value.asText();
try {
// Try to parse the string as JSON
JsonNode parsedValue = mapper.readTree(textValue);
Copy link
Collaborator

Choose a reason for hiding this comment

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

can it handle this case that a parameter is string, but it's a json string. For example
"content": "{\"title\": \"hello\"}"

@b4sjoo b4sjoo deleted the main_fixinterface branch October 1, 2024 09:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.17 backport 2.x bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants