create_model

create_model(**kwargs)

Creates a new version of a model within an an Amazon Lookout for Vision project. CreateModel is an asynchronous operation in which Amazon Lookout for Vision trains, tests, and evaluates a new version of a model.

To get the current status, check the Status field returned in the response from DescribeModel.

If the project has a single dataset, Amazon Lookout for Vision internally splits the dataset to create a training and a test dataset. If the project has a training and a test dataset, Lookout for Vision uses the respective datasets to train and test the model.

After training completes, the evaluation metrics are stored at the location specified in OutputConfig .

This operation requires permissions to perform the lookoutvision:CreateModel operation. If you want to tag your model, you also require permission to the lookoutvision:TagResource operation.

See also: AWS API Documentation

Request Syntax

response = client.create_model(
    ProjectName='string',
    Description='string',
    ClientToken='string',
    OutputConfig={
        'S3Location': {
            'Bucket': 'string',
            'Prefix': 'string'
        }
    },
    KmsKeyId='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • ProjectName (string) --

    [REQUIRED]

    The name of the project in which you want to create a model version.

  • Description (string) -- A description for the version of the model.
  • ClientToken (string) --

    ClientToken is an idempotency token that ensures a call to CreateModel completes only once. You choose the value to pass. For example, An issue might prevent you from getting a response from CreateModel . In this case, safely retry your call to CreateModel by using the same ClientToken parameter value.

    If you don't supply a value for ClientToken , the AWS SDK you are using inserts a value for you. This prevents retries after a network error from starting multiple training jobs. You'll need to provide your own value for other use cases.

    An error occurs if the other input parameters are not the same as in the first request. Using a different value for ClientToken is considered a new call to CreateModel . An idempotency token is active for 8 hours.

    This field is autopopulated if not provided.

  • OutputConfig (dict) --

    [REQUIRED]

    The location where Amazon Lookout for Vision saves the training results.

    • S3Location (dict) -- [REQUIRED]

      The S3 location for the output.

      • Bucket (string) -- [REQUIRED]

        The S3 bucket that contains the training or model packaging job output. If you are training a model, the bucket must in your AWS account. If you use an S3 bucket for a model packaging job, the S3 bucket must be in the same AWS Region and AWS account in which you use AWS IoT Greengrass.

      • Prefix (string) --

        The path of the folder, within the S3 bucket, that contains the output.

  • KmsKeyId (string) -- The identifier for your AWS KMS key. The key is used to encrypt training and test images copied into the service for model training. Your source images are unaffected. If this parameter is not specified, the copied images are encrypted by a key that AWS owns and manages.
  • Tags (list) --

    A set of tags (key-value pairs) that you want to attach to the model.

    • (dict) --

      A key and value pair that is attached to the specified Amazon Lookout for Vision model.

      • Key (string) -- [REQUIRED]

        The key of the tag that is attached to the specified model.

      • Value (string) -- [REQUIRED]

        The value of the tag that is attached to the specified model.

Return type

dict

Returns

Response Syntax

{
    'ModelMetadata': {
        'CreationTimestamp': datetime(2015, 1, 1),
        'ModelVersion': 'string',
        'ModelArn': 'string',
        'Description': 'string',
        'Status': 'TRAINING'|'TRAINED'|'TRAINING_FAILED'|'STARTING_HOSTING'|'HOSTED'|'HOSTING_FAILED'|'STOPPING_HOSTING'|'SYSTEM_UPDATING'|'DELETING',
        'StatusMessage': 'string',
        'Performance': {
            'F1Score': ...,
            'Recall': ...,
            'Precision': ...
        }
    }
}

Response Structure

  • (dict) --

    • ModelMetadata (dict) --

      The response from a call to CreateModel .

      • CreationTimestamp (datetime) --

        The unix timestamp for the date and time that the model was created.

      • ModelVersion (string) --

        The version of the model.

      • ModelArn (string) --

        The Amazon Resource Name (ARN) of the model.

      • Description (string) --

        The description for the model.

      • Status (string) --

        The status of the model.

      • StatusMessage (string) --

        The status message for the model.

      • Performance (dict) --

        Performance metrics for the model. Not available until training has successfully completed.

        • F1Score (float) --

          The overall F1 score metric for the trained model.

        • Recall (float) --

          The overall recall metric value for the trained model.

        • Precision (float) --

          The overall precision metric value for the trained model.

Exceptions

  • LookoutforVision.Client.exceptions.AccessDeniedException
  • LookoutforVision.Client.exceptions.InternalServerException
  • LookoutforVision.Client.exceptions.ValidationException
  • LookoutforVision.Client.exceptions.ConflictException
  • LookoutforVision.Client.exceptions.ResourceNotFoundException
  • LookoutforVision.Client.exceptions.ThrottlingException
  • LookoutforVision.Client.exceptions.ServiceQuotaExceededException