def Run(self, args):
   stream_logs = jobs_util.GetStreamLogs(args.async_, args.stream_logs)
   scale_tier = jobs_util.ScaleTierFlagMap().GetEnumForChoice(args.scale_tier)
   scale_tier_name = scale_tier.name if scale_tier else None
   jobs_client = jobs.JobsClient()
   labels = jobs_util.ParseCreateLabels(jobs_client, args)
   custom_container_config = (
       jobs_util.TrainingCustomInputServerConfig.FromArgs(
           args, self._SUPPORT_TPU_TF_VERSION))
   custom_container_config.ValidateConfig()
   job = jobs_util.SubmitTraining(
       jobs_client,
       args.job,
       job_dir=args.job_dir,
       staging_bucket=args.staging_bucket,
       packages=args.packages,
       package_path=args.package_path,
       scale_tier=scale_tier_name,
       config=args.config,
       module_name=args.module_name,
       runtime_version=args.runtime_version,
       python_version=args.python_version,
       network=args.network if hasattr(args, 'network') else None,
       service_account=args.service_account,
       labels=labels,
       stream_logs=stream_logs,
       user_args=args.user_args,
       kms_key=_GetAndValidateKmsKey(args),
       custom_train_server_config=custom_container_config,
       enable_web_access=args.enable_web_access)
   # If the job itself failed, we will return a failure status.
   if stream_logs and job.state is not job.StateValueValuesEnum.SUCCEEDED:
     self.exit_code = 1
   return job
Esempio n. 2
0
  def Run(self, args):
    stream_logs = jobs_util.GetStreamLogs(args.async, args.stream_logs)
    scale_tier = jobs_util.ScaleTierFlagMap().GetEnumForChoice(args.scale_tier)
    scale_tier_name = scale_tier.name if scale_tier else None
    jobs_client = jobs.JobsClient()
    labels = jobs_util.ParseCreateLabels(jobs_client, args)
    custom_container_config = (
        jobs_util.TrainingCustomInputServerConfig.FromArgs(args))
    custom_container_config.ValidateConfig()

    job = jobs_util.SubmitTraining(
        jobs_client, args.job,
        job_dir=args.job_dir,
        staging_bucket=args.staging_bucket,
        packages=args.packages,
        package_path=args.package_path,
        scale_tier=scale_tier_name,
        config=args.config,
        module_name=args.module_name,
        runtime_version=args.runtime_version,
        python_version=args.python_version,
        labels=labels,
        stream_logs=stream_logs,
        user_args=args.user_args,
        custom_train_server_config=custom_container_config)
    # If the job itself failed, we will return a failure status.
    if stream_logs and job.state is not job.StateValueValuesEnum.SUCCEEDED:
      self.exit_code = 1
    return job
Esempio n. 3
0
 def Run(self, args):
     data_format = jobs_util.DataFormatFlagMap().GetEnumForChoice(
         args.data_format)
     jobs_client = jobs.JobsClient()
     labels = jobs_util.ParseCreateLabels(jobs_client, args)
     return jobs_util.SubmitPrediction(
         jobs_client,
         args.job,
         model_dir=args.model_dir,
         model=args.model,
         version=args.version,
         input_paths=args.input_paths,
         data_format=data_format.name,
         output_path=args.output_path,
         region=args.region,
         runtime_version=args.runtime_version,
         max_worker_count=args.max_worker_count,
         batch_size=args.batch_size,
         labels=labels)