Skip to content

create_data_quality_job_definition

create_data_quality_job_definition(
    *,
    config_overrides: Optional[SageMakerClientConfig] = None,
    job_definition_name: Optional[MonitoringJobDefinitionName] = None,
    data_quality_baseline_config: Optional[DataQualityBaselineConfig] = None,
    data_quality_app_specification: Optional[DataQualityAppSpecification] = None,
    data_quality_job_input: Optional[DataQualityJobInput] = None,
    data_quality_job_output_config: Optional[MonitoringOutputConfig] = None,
    job_resources: Optional[MonitoringResources] = None,
    network_config: Optional[MonitoringNetworkConfig] = None,
    role_arn: Optional[RoleArn] = None,
    stopping_condition: Optional[MonitoringStoppingCondition] = None,
    tags: Optional[TagList] = None,
) -> CreateDataQualityJobDefinitionResponse

Creates a definition for a job that monitors data quality and drift. For information about model monitor, see Amazon SageMaker AI Model Monitor.

Parameters:

  • job_definition_name (Optional[MonitoringJobDefinitionName], default: None ) –

    The name for the monitoring job definition.

  • data_quality_baseline_config (Optional[DataQualityBaselineConfig], default: None ) –

    Configures the constraints and baselines for the monitoring job.

  • data_quality_app_specification (Optional[DataQualityAppSpecification], default: None ) –

    Specifies the container that runs the monitoring job.

  • data_quality_job_input (Optional[DataQualityJobInput], default: None ) –

    A list of inputs for the monitoring job. Currently endpoints are supported as monitoring inputs.

  • network_config (Optional[MonitoringNetworkConfig], default: None ) –

    Specifies networking configuration for the monitoring job.

  • role_arn (Optional[RoleArn], default: None ) –

    The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker AI can assume to perform tasks on your behalf.

  • tags (Optional[TagList], default: None ) –

    (Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.

Raises:

  • ResourceInUse –

    Resource being accessed is in use.

  • ResourceLimitExceeded –

    You have exceeded an SageMaker resource limit. For example, you might have too many training jobs created.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_sagemaker/_services/sage_maker.py
def create_data_quality_job_definition(
    self,
    *,
    config_overrides: Optional[SageMakerClientConfig] = None,
    job_definition_name: Optional[
        "capo_sagemaker.types.monitoring_job_definition_name.MonitoringJobDefinitionName"
    ] = None,
    data_quality_baseline_config: Optional[
        "capo_sagemaker.types.data_quality_baseline_config.DataQualityBaselineConfig"
    ] = None,
    data_quality_app_specification: Optional[
        "capo_sagemaker.types.data_quality_app_specification.DataQualityAppSpecification"
    ] = None,
    data_quality_job_input: Optional[
        "capo_sagemaker.types.data_quality_job_input.DataQualityJobInput"
    ] = None,
    data_quality_job_output_config: Optional[
        "capo_sagemaker.types.monitoring_output_config.MonitoringOutputConfig"
    ] = None,
    job_resources: Optional[
        "capo_sagemaker.types.monitoring_resources.MonitoringResources"
    ] = None,
    network_config: Optional[
        "capo_sagemaker.types.monitoring_network_config.MonitoringNetworkConfig"
    ] = None,
    role_arn: Optional["capo_sagemaker.types.role_arn.RoleArn"] = None,
    stopping_condition: Optional[
        "capo_sagemaker.types.monitoring_stopping_condition.MonitoringStoppingCondition"
    ] = None,
    tags: Optional["capo_sagemaker.types.tag_list.TagList"] = None,
) -> "capo_sagemaker.types.create_data_quality_job_definition_response.CreateDataQualityJobDefinitionResponse":
    """<p>Creates a definition for a job that monitors data quality and drift. For information about model monitor, see <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html">Amazon SageMaker AI Model Monitor</a>.</p>

    Args:
        job_definition_name: <p>The name for the monitoring job definition.</p>
        data_quality_baseline_config: <p>Configures the constraints and baselines for the monitoring job.</p>
        data_quality_app_specification: <p>Specifies the container that runs the monitoring job.</p>
        data_quality_job_input: <p>A list of inputs for the monitoring job. Currently endpoints are supported as monitoring inputs.</p>
        network_config: <p>Specifies networking configuration for the monitoring job.</p>
        role_arn: <p>The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker AI can assume to perform tasks on your behalf.</p>
        tags: <p>(Optional) An array of key-value pairs. For more information, see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL"> Using Cost Allocation Tags</a> in the <i>Amazon Web Services Billing and Cost Management User Guide</i>.</p>

    Raises:
        capo_sagemaker.errors.resource_in_use.ResourceInUse: <p>Resource being accessed is in use.</p>
        capo_sagemaker.errors.resource_limit_exceeded.ResourceLimitExceeded: <p> You have exceeded an SageMaker resource limit. For example, you might have too many training jobs created. </p>
        capo_sagemaker.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_sagemaker.types.create_data_quality_job_definition_request.CreateDataQualityJobDefinitionRequest]",
    ) -> OperationResponse[
        "capo_sagemaker.types.create_data_quality_job_definition_response.CreateDataQualityJobDefinitionResponse"
    ]:
        import capo_sagemaker._operations.sage_maker.create_data_quality_job_definition

        output, http_response = (
            capo_sagemaker._operations.sage_maker.create_data_quality_job_definition.create_data_quality_job_definition(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateDataQualityJobDefinition")
    )
    input_: capo_sagemaker.types.create_data_quality_job_definition_request.CreateDataQualityJobDefinitionRequest = {}
    if job_definition_name is not None:
        input_["job_definition_name"] = job_definition_name
    if data_quality_baseline_config is not None:
        input_["data_quality_baseline_config"] = data_quality_baseline_config
    if data_quality_app_specification is not None:
        input_["data_quality_app_specification"] = data_quality_app_specification
    if data_quality_job_input is not None:
        input_["data_quality_job_input"] = data_quality_job_input
    if data_quality_job_output_config is not None:
        input_["data_quality_job_output_config"] = data_quality_job_output_config
    if job_resources is not None:
        input_["job_resources"] = job_resources
    if network_config is not None:
        input_["network_config"] = network_config
    if role_arn is not None:
        input_["role_arn"] = role_arn
    if stopping_condition is not None:
        input_["stopping_condition"] = stopping_condition
    if tags is not None:
        input_["tags"] = tags

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output