Add support to define Model parameters dynamically using placeholders
Fixes #117
Why is the change necessary?
Currently, it is not possible to use placeholders for Sagemaker Model parameters. The properties cannot be defined dynamically, as they need to be defined in the Model which does not accept placeholders.
This change makes it possible to use placeholders for Model properties by using the parameters field that are passed down from the ModelStep.
Solution
Use the parameters field that is compatible with placeholders to define ModelStep properties.
Merge the parameters that were generated from the Model with the input parameters:
The input parameters will overwrite the parameters generated from the Model if the properties were defined in both
The input parameters should follow the schema described in CreateModel API doc
Description
Add support to define Model parameters dynamically using placeholders
Fixes #117
Why is the change necessary?
Currently, it is not possible to use placeholders for Sagemaker Model parameters. The properties cannot be defined dynamically, as they need to be defined in the Model which does not accept placeholders. This change makes it possible to use placeholders for Model properties by using the parameters field that are passed down from the ModelStep.
Solution
Use the
parameters
field that is compatible with placeholders to define ModelStep properties. Merge the parameters that were generated from the Model with the input parameters:The input parameters will overwrite the parameters generated from the Model if the properties were defined in both
The input parameters should follow the schema described in CreateModel API doc
Same solution was adopted for feat: Support placeholders for processing step
Testing
Added unit and integ tests
Pull Request Checklist
Please check all boxes (including N/A items)
Testing
Documentation
Title and description
Fixes #xxx
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license.