aws / aws/amazon-sagemaker-feedback
SageMaker Local Mode TransformJob requires creation of Model locally
- Dominant language
- No language data
- Stars
- 10
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
### Product Version
- [ ] Amazon SageMaker Studio Classic
- [ ] Amazon SageMaker Studio
- [x] It is not related to SageMaker Studio
### Product Category
Pipelines
### Description
I created a pipeline that takes an existing, unversioned SageMaker model, created with the CreateModel API and runs batch-transform job on it, followed by some processing job. Works in remote execution, but fails in local mode. The reason seems that in order to use a SageMaker Model in a Transform Job in Local Mode, you [need to create the model in the local mode](https://github.com/aws/sagemaker-python-sdk/blob/fd566bd23e6441617af7a28fb648697c2f66304c/src/sagemaker/local/local_session.py#L304).
This is a severe (and IMO undocumented) limitation that breaks the efficient local developer workflow. In particular for people who split up training and inference pipelines and want to reference a previously trained model later while using local mode.
The `describe_model()` method in `LocalSagemakerClient` should consider models stored in AWS SageMaker too, not just locally created ones.
### Other Details
I opened a support case with AWS Premium Support: 175758248900603
Contributor guide
Research direction
Start with src/sagemaker/local/local_session.py around LocalSagemakerClient.describe_model() and reproduce the reported pipeline with an existing CreateModel model in local mode. Compare how remote and local TransformJob execution resolves the model. Done means the local transform can reference the existing SageMaker model without requiring a separately created local model.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws
- Domain
- cloud
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100