Search code examples
amazon-web-servicesmodelmonitoramazon-sagemaker

AWS sagemaker model monitor- ImportError: cannot import name 'ModelQualityMonitor'


I am trying to create a model quality monitor job, using the class ModelQualityMonitor from Sagemaker model_monitor, and i think i have all the import statements defined yet i get the message cannot import name error

from sagemaker import get_execution_role, session, Session
from sagemaker.model_monitor import ModelQualityMonitor
                
role = get_execution_role()
session = Session()

model_quality_monitor = ModelQualityMonitor(
    role=role,
    instance_count=1,
    instance_type='ml.m5.xlarge',
    volume_size_in_gb=20,
    max_runtime_in_seconds=1800,
    sagemaker_session=session
)

Any pointers are appreciated


Solution

  • Are you using an Amazon SageMaker Notebook? When I run your code above in a new conda_python3 Amazon SageMaker notebook, I don't get any errors at all.

    Example screenshot output showing no errors:

    enter image description here

    If you're getting something like NameError: name 'ModelQualityMonitor' is not defined then I suspect you are running in a Python environment that doesn't have the Amazon SageMaker SDK installed in it. Perhaps try running pip install sagemaker and then see if this resolves your error.