Esempio n. 1
0
 def Run(self, args):
     region = region_util.GetRegion(args)
     with endpoint_util.MlEndpointOverrides(region=region):
         client = versions_api.VersionsClient()
         labels = versions_util.ParseCreateLabels(client, args)
         framework = flags.FRAMEWORK_MAPPER.GetEnumForChoice(args.framework)
         accelerator = flags.ParseAcceleratorFlag(args.accelerator)
         return versions_util.Create(client,
                                     operations.OperationsClient(),
                                     args.version,
                                     model=args.model,
                                     origin=args.origin,
                                     staging_bucket=args.staging_bucket,
                                     runtime_version=args.runtime_version,
                                     config_file=args.config,
                                     asyncronous=args.async_,
                                     description=args.description,
                                     labels=labels,
                                     machine_type=args.machine_type,
                                     framework=framework,
                                     python_version=args.python_version,
                                     accelerator_config=accelerator,
                                     min_nodes=args.min_nodes,
                                     max_nodes=args.max_nodes,
                                     metrics=args.metric_targets,
                                     autoscaling_hidden=False)
Esempio n. 2
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        models_client = models.ModelsClient()
        operations_client = operations.OperationsClient()
        models_util.Update(models_client, operations_client, args)
        log.UpdatedResource(args.model, kind='ai platform model')
Esempio n. 3
0
    def Run(self, args):
        """This is what gets called when the user runs this command.

    Args:
      args: an argparse namespace. All the arguments that were provided to this
        command invocation.

    Returns:
      Some value that we want to have printed later.
    """
        instances = predict_utilities.ReadInstancesFromArgs(
            args.json_request,
            args.json_instances,
            args.text_instances,
            limit=INPUT_INSTANCES_LIMIT)

        region = region_util.GetRegion(args)
        with endpoint_util.MlEndpointOverrides(region=region):
            model_or_version_ref = predict_utilities.ParseModelOrVersionRef(
                args.model, args.version)
            results = predict.Explain(model_or_version_ref, instances)

        if not args.IsSpecified('format'):
            # default format is based on the response.
            args.format = predict_utilities.GetDefaultFormat(
                results.get('predictions'))

        return results
Esempio n. 4
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        client = versions_api.VersionsClient()
        return versions_util.Delete(client,
                                    operations.OperationsClient(),
                                    args.version,
                                    model=args.model)
Esempio n. 5
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        versions_client = versions_api.VersionsClient()
        operations_client = operations.OperationsClient()
        version_ref = args.CONCEPTS.version.Parse()
        versions_util.Update(versions_client, operations_client, version_ref,
                             args)
        log.UpdatedResource(args.version, kind='AI Platform version')
Esempio n. 6
0
 def Run(self, args):
   region = region_util.GetRegion(args)
   with endpoint_util.MlEndpointOverrides(region=region):
     condition = iam_util.ValidateAndExtractCondition(args)
     iam_util.ValidateMutexConditionAndPrimitiveRoles(condition, args.role)
     return models_util.AddIamPolicyBindingWithCondition(
         models.ModelsClient(),
         args.model,
         args.member,
         args.role,
         condition)
Esempio n. 7
0
    def Run(self, args):
        """This is what gets called when the user runs this command.

    Args:
      args: an argparse namespace. All the arguments that were provided to this
        command invocation.

    Returns:
      The specified function with its description and configured filter.
    """
        region = region_util.GetRegion(args)
        with endpoint_util.MlEndpointOverrides(region=region):
            condition = iam_util.ValidateAndExtractCondition(args)
            iam_util.ValidateMutexConditionAndPrimitiveRoles(
                condition, args.role)
            return models_util.RemoveIamPolicyBindingWithCondition(
                models.ModelsClient(), args.model, args.member, args.role,
                condition)
Esempio n. 8
0
 def Run(self, args):
     region = region_util.GetRegion(args)
     with endpoint_util.MlEndpointOverrides(region=region):
         client = versions_api.VersionsClient()
         labels = versions_util.ParseCreateLabels(client, args)
         framework = flags.FRAMEWORK_MAPPER.GetEnumForChoice(args.framework)
         accelerator = flags.ParseAcceleratorFlag(args.accelerator)
         return versions_util.Create(
             client,
             operations.OperationsClient(),
             args.version,
             model=args.model,
             origin=args.origin,
             staging_bucket=args.staging_bucket,
             runtime_version=args.runtime_version,
             config_file=args.config,
             asyncronous=args.async_,
             labels=labels,
             description=args.description,
             machine_type=args.machine_type,
             framework=framework,
             python_version=args.python_version,
             prediction_class=args.prediction_class,
             package_uris=args.package_uris,
             service_account=args.service_account,
             accelerator_config=accelerator,
             explanation_method=args.explanation_method,
             num_integral_steps=args.num_integral_steps,
             num_paths=args.num_paths,
             image=args.image,
             command=args.command,
             container_args=args.args,
             env_vars=args.env_vars,
             ports=args.ports,
             predict_route=args.predict_route,
             health_route=args.health_route,
             min_nodes=args.min_nodes,
             max_nodes=args.max_nodes,
             metrics=args.metric_targets,
             containers_hidden=False,
             autoscaling_hidden=False)
Esempio n. 9
0
def GetModelRegion(args):
    """Extract the region from the command line args.

  Args:
    args: arguments from parser.

  Returns:
    region, model_regions

    region: str, regional endpoint or global endpoint.
    model_regions: list, region where the model will be deployed.

  Raises:
    RegionArgError: if both --region and --regions are specified.
  """
    if args.IsSpecified('region') and args.IsSpecified('regions'):
        raise RegionArgError(
            'Only one of --region or --regions can be specified.')
    if args.IsSpecified('regions'):
        return 'global', args.regions
    if args.IsSpecified('region') and args.region != 'global':
        return args.region, [args.region]

    region = region_util.GetRegion(args)
    if region != 'global':
        return region, [region]
    log.warning(
        'To specify a region where the model will deployed on the global '
        'endpoint, please use `--regions` and do not specify `--region`. '
        'Using [us-central1] by default on https://ml.googleapis.com. '
        'Please note that your model will be inaccessible from '
        'https://us-central1-ml.googelapis.com\n'
        '\n'
        'Learn more about regional endpoints and see a list of available '
        'regions: https://cloud.google.com/ai-platform/prediction/docs/'
        'regional-endpoints')
    return 'global', ['us-central1']
Esempio n. 10
0
def _Run(args):
  """This is what gets called when the user runs this command.

  Args:
    args: an argparse namespace. All the arguments that were provided to this
      command invocation.

  Returns:
    A json object that contains predictions.
  """
  instances = predict_utilities.ReadInstancesFromArgs(
      args.json_request,
      args.json_instances,
      args.text_instances,
      limit=INPUT_INSTANCES_LIMIT)

  region = region_util.GetRegion(args)
  with endpoint_util.MlEndpointOverrides(region=region):
    model_or_version_ref = predict_utilities.ParseModelOrVersionRef(
        args.model, args.version)
    if (args.signature_name is None and
        predict_utilities.CheckRuntimeVersion(args.model, args.version)):
      log.status.Print(
          'You are running on a runtime version >= 1.8. '
          'If the signature defined in the model is '
          'not serving_default then you must specify it via '
          '--signature-name flag, otherwise the command may fail.')
    results = predict.Predict(
        model_or_version_ref, instances, signature_name=args.signature_name)

  if not args.IsSpecified('format'):
    # default format is based on the response.
    args.format = predict_utilities.GetDefaultFormat(
        results.get('predictions'))

  return results
Esempio n. 11
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        models_client = models.ModelsClient()
        operations_client = operations.OperationsClient()
        return models_util.Delete(models_client, operations_client, args.model)
Esempio n. 12
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        return models.ModelsClient().Get(args.model)
Esempio n. 13
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        client = models.ModelsClient()
        return models_util.RemoveIamPolicyBinding(client, args.model,
                                                  args.member, args.role)
Esempio n. 14
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        client = versions_api.VersionsClient()
        return versions_util.List(client, model=args.model)
Esempio n. 15
0
def _Run(args):
    region = region_util.GetRegion(args)
    with endpoint_util.MlEndpointOverrides(region=region):
        return models_util.SetIamPolicy(models.ModelsClient(), args.model,
                                        args.policy_file)