Skip to content

An easier equivalent to the removed update_endpoint argument #1920

@athewsey

Description

@athewsey

Describe the feature you'd like

A direct/simple way to update an existing endpoint to a new model version (created e.g. by Model() constructor or Estimator.fit()).

Per the SDK v2 migration doc, Estimator.deploy() and Model.deploy() have had their update_endpoint argument removed and raise an error when called with an existing endpoint name. Users are advised to use Predictor.update_endpoint() instead.

The problem is the update_endpoint() method takes an existing SageMaker Model name as parameter and, per #1094, I'm not aware of an easy/SDK way to register a Model in the API given a Model object or a trained Estimator.

How would this feature be used? Please describe.

When a user has re-trained an Estimator or created a new Model object in the SDK, they'll be able to easily update an existing endpoint - like they would have done in v1 with Model.deploy(..., update_endpoint=True).

Describe alternatives you've considered

The implementation could maybe proceed as:

  • Re-instate the update_endpoint parameter to enable the old one-line flow
  • Add a method on Model (and maybe Estimator too?) to register the Model in the SageMaker API.
  • Something else?

Additional context

As used in, for example, the amazon-sagemaker-analyze-model-predictions sample.

It'd be great to know if I'm just missing an easy way to use Predictor.update_endpoint() for this!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions