class_docstr: A generic Estimator to train using any algorithm object (with an ``algorithm_arn``).
  
  The Algorithm can be your own, or any Algorithm from AWS
  Marketplace that you have a valid subscription for. This class will perform
  client-side validation on all the inputs.
docstr: Create a model to deploy.
  
  The serializer and deserializer are only used to define a default
  Predictor. They are ignored if an explicit predictor class is passed in.
  Other arguments are passed through to the Model class.
  
  Args:
      role (str): The ``ExecutionRoleArn`` IAM Role ARN for the ``Model``,
          which is also used during transform jobs. If not specified, the
          role from the Estimator will be used.
      predictor_cls (Predictor): The predictor class to use when
          deploying the model.
      serializer (:class:`~sagemaker.serializers.BaseSerializer`): A
          serializer object, used to encode data for an inference endpoint
          (default: :class:`~sagemaker.serializers.IdentitySerializer`).
      deserializer (:class:`~sagemaker.deserializers.BaseDeserializer`): A
          deserializer object, used to decode data from an inference
          endpoint (default: :class:`~sagemaker.deserializers.BytesDeserializer`).
      vpc_config_override (dict[str, list[str]]): Optional override for VpcConfig set on
          the model. Default: use subnets and security groups from this Estimator.
          * 'Subnets' (list[str]): List of subnet ids.
          * 'SecurityGroupIds' (list[str]): List of security group ids.
      **kwargs: Additional arguments for creating a :class:`~sagemaker.model.ModelPackage`.
  
  .. tip::
  
      You can find additional parameters for using this method at
      :class:`~sagemaker.model.ModelPackage` and
      :class:`~sagemaker.model.Model`.
  
  Returns:
      a Model ready for deployment.
code: def create_model(
      self,
      role=None,
      predictor_cls=None,
      serializer=IdentitySerializer(),
      deserializer=BytesDeserializer(),
      vpc_config_override=vpc_utils.VPC_CONFIG_DEFAULT,
      **kwargs,
  ):
      """Create a model to deploy.
  
      The serializer and deserializer are only used to define a default
      Predictor. They are ignored if an explicit predictor class is passed in.
      Other arguments are passed through to the Model class.
  
      Args:
          role (str): The ``ExecutionRoleArn`` IAM Role ARN for the ``Model``,
              which is also used during transform jobs. If not specified, the
              role from the Estimator will be used.
          predictor_cls (Predictor): The predictor class to use when
              deploying the model.
          serializer (:class:`~sagemaker.serializers.BaseSerializer`): A
              serializer object, used to encode data for an inference endpoint
              (default: :class:`~sagemaker.serializers.IdentitySerializer`).
          deserializer (:class:`~sagemaker.deserializers.BaseDeserializer`): A
              deserializer object, used to decode data from an inference
              endpoint (default: :class:`~sagemaker.deserializers.BytesDeserializer`).
          vpc_config_override (dict[str, list[str]]): Optional override for VpcConfig set on
              the model. Default: use subnets and security groups from this Estimator.
              * 'Subnets' (list[str]): List of subnet ids.
              * 'SecurityGroupIds' (list[str]): List of security group ids.
          **kwargs: Additional arguments for creating a :class:`~sagemaker.model.ModelPackage`.
  
      .. tip::
  
          You can find additional parameters for using this method at
          :class:`~sagemaker.model.ModelPackage` and
          :class:`~sagemaker.model.Model`.
  
      Returns:
          a Model ready for deployment.
      """
      removed_kwargs("content_type", kwargs)
      removed_kwargs("accept", kwargs)
  
      if predictor_cls is None:
  
          def predict_wrapper(endpoint, session):
              return Predictor(
                  endpoint, session, serializer, deserializer
              )
  
          predictor_cls = predict_wrapper
  
      role = role or self.role
  
      return sagemaker.ModelPackage(
          role,
          algorithm_arn=self.algorithm_arn,
          model_data=self.model_data,
          vpc_config=self.get_vpc_config(vpc_config_override),
          sagemaker_session=self.sagemaker_session,
          predictor_cls=predictor_cls,
          **kwargs,
      )
  
imports: from __future__ import absolute_import
  from typing import Optional, Union, Dict, List
  import sagemaker
  import sagemaker.parameter
  from sagemaker import vpc_utils
  from sagemaker.deserializers import BytesDeserializer
  from sagemaker.deprecations import removed_kwargs
  from sagemaker.estimator import EstimatorBase
  from sagemaker.inputs import TrainingInput, FileSystemInput
  from sagemaker.serializers import IdentitySerializer
  from sagemaker.transformer import Transformer
  from sagemaker.predictor import Predictor
  from sagemaker.session import Session
  from sagemaker.workflow.entities import PipelineVariable
  from sagemaker.workflow.pipeline_context import runnable_by_pipeline
  from sagemaker.utils import format_tags, Tags
  from sagemaker.workflow import is_pipeline_variable
label_desc: Use image node_id 7 for calling the AlgorithmEstimator obj's underlying member method code with example usage: obj.create_model(role, predictor_cls, serializer, deserializer, vpc_config_override) and returns: sagemaker, Predictor