google-cloud-pipeline-components 2.15.0__py3-none-any.whl → 2.16.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of google-cloud-pipeline-components might be problematic. Click here for more details.

Files changed (58) hide show
  1. google_cloud_pipeline_components/_implementation/model_evaluation/llm_evaluation_preprocessor/component.py +11 -1
  2. google_cloud_pipeline_components/_implementation/starry_net/dataprep/component.py +14 -0
  3. google_cloud_pipeline_components/_implementation/starry_net/get_training_artifacts/component.py +1 -1
  4. google_cloud_pipeline_components/_implementation/starry_net/train/component.py +11 -0
  5. google_cloud_pipeline_components/_implementation/starry_net/upload_decomposition_plots/component.py +6 -1
  6. google_cloud_pipeline_components/_implementation/starry_net/version.py +3 -3
  7. google_cloud_pipeline_components/container/preview/custom_job/remote_runner.py +22 -0
  8. google_cloud_pipeline_components/preview/automl/forecasting/forecasting_ensemble.py +1 -1
  9. google_cloud_pipeline_components/preview/automl/forecasting/forecasting_stage_1_tuner.py +2 -2
  10. google_cloud_pipeline_components/preview/automl/forecasting/forecasting_stage_2_tuner.py +2 -2
  11. google_cloud_pipeline_components/preview/automl/forecasting/learn_to_learn_forecasting_pipeline.yaml +38 -34
  12. google_cloud_pipeline_components/preview/automl/forecasting/sequence_to_sequence_forecasting_pipeline.yaml +38 -34
  13. google_cloud_pipeline_components/preview/automl/forecasting/temporal_fusion_transformer_forecasting_pipeline.yaml +38 -34
  14. google_cloud_pipeline_components/preview/automl/forecasting/time_series_dense_encoder_forecasting_pipeline.yaml +38 -34
  15. google_cloud_pipeline_components/preview/automl/forecasting/utils.py +49 -7
  16. google_cloud_pipeline_components/preview/automl/tabular/auto_feature_engineering.py +1 -1
  17. google_cloud_pipeline_components/preview/automl/tabular/automl_tabular_feature_selection_pipeline.yaml +39 -39
  18. google_cloud_pipeline_components/preview/automl/tabular/automl_tabular_v2_pipeline.yaml +41 -41
  19. google_cloud_pipeline_components/preview/automl/tabular/distillation_stage_feature_transform_engine.py +2 -2
  20. google_cloud_pipeline_components/preview/automl/tabular/feature_selection.py +2 -2
  21. google_cloud_pipeline_components/preview/automl/tabular/feature_selection_pipeline.yaml +4 -4
  22. google_cloud_pipeline_components/preview/automl/tabular/feature_transform_engine.py +3 -3
  23. google_cloud_pipeline_components/preview/automl/tabular/tabnet_hyperparameter_tuning_job.py +2 -2
  24. google_cloud_pipeline_components/preview/automl/tabular/tabnet_hyperparameter_tuning_job_pipeline.yaml +15 -15
  25. google_cloud_pipeline_components/preview/automl/tabular/tabnet_trainer.py +2 -2
  26. google_cloud_pipeline_components/preview/automl/tabular/tabnet_trainer_pipeline.yaml +13 -13
  27. google_cloud_pipeline_components/preview/automl/tabular/wide_and_deep_hyperparameter_tuning_job.py +2 -2
  28. google_cloud_pipeline_components/preview/automl/tabular/wide_and_deep_hyperparameter_tuning_job_pipeline.yaml +14 -14
  29. google_cloud_pipeline_components/preview/automl/tabular/wide_and_deep_trainer.py +2 -2
  30. google_cloud_pipeline_components/preview/automl/tabular/wide_and_deep_trainer_pipeline.yaml +13 -13
  31. google_cloud_pipeline_components/preview/automl/tabular/xgboost_hyperparameter_tuning_job_pipeline.yaml +14 -14
  32. google_cloud_pipeline_components/preview/automl/tabular/xgboost_trainer_pipeline.yaml +13 -13
  33. google_cloud_pipeline_components/preview/custom_job/utils.py +45 -6
  34. google_cloud_pipeline_components/preview/starry_net/component.py +60 -34
  35. google_cloud_pipeline_components/v1/automl/forecasting/bqml_arima_predict_pipeline.yaml +10 -10
  36. google_cloud_pipeline_components/v1/automl/forecasting/bqml_arima_train_pipeline.yaml +31 -31
  37. google_cloud_pipeline_components/v1/automl/forecasting/prophet_predict_pipeline.yaml +13 -13
  38. google_cloud_pipeline_components/v1/automl/forecasting/prophet_trainer.py +3 -3
  39. google_cloud_pipeline_components/v1/automl/forecasting/prophet_trainer_pipeline.yaml +14 -14
  40. google_cloud_pipeline_components/v1/automl/tabular/automl_tabular_pipeline.yaml +37 -37
  41. google_cloud_pipeline_components/v1/automl/tabular/cv_trainer.py +2 -2
  42. google_cloud_pipeline_components/v1/automl/tabular/ensemble.py +2 -2
  43. google_cloud_pipeline_components/v1/automl/tabular/finalizer.py +1 -1
  44. google_cloud_pipeline_components/v1/automl/tabular/infra_validator.py +1 -1
  45. google_cloud_pipeline_components/v1/automl/tabular/split_materialized_data.py +1 -1
  46. google_cloud_pipeline_components/v1/automl/tabular/stage_1_tuner.py +2 -2
  47. google_cloud_pipeline_components/v1/automl/tabular/stats_and_example_gen.py +2 -2
  48. google_cloud_pipeline_components/v1/automl/tabular/training_configurator_and_validator.py +1 -1
  49. google_cloud_pipeline_components/v1/automl/tabular/transform.py +2 -2
  50. google_cloud_pipeline_components/v1/custom_job/component.py +3 -0
  51. google_cloud_pipeline_components/v1/custom_job/utils.py +4 -0
  52. google_cloud_pipeline_components/v1/model_evaluation/evaluation_llm_text_generation_pipeline.py +17 -0
  53. google_cloud_pipeline_components/version.py +1 -1
  54. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.0.dist-info}/METADATA +17 -17
  55. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.0.dist-info}/RECORD +58 -58
  56. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.0.dist-info}/WHEEL +1 -1
  57. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.0.dist-info}/LICENSE +0 -0
  58. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.0.dist-info}/top_level.txt +0 -0
@@ -39,6 +39,7 @@ def evaluation_dataset_preprocessor_internal(
39
39
  gcp_resources: dsl.OutputPath(str),
40
40
  input_field_name: str = 'input_text',
41
41
  role_field_name: str = 'role',
42
+ target_field_name: str = 'ground_truth',
42
43
  model_name: str = 'publishers/google/model/text-bison@002',
43
44
  display_name: str = 'llm_evaluation_dataset_preprocessor_component',
44
45
  machine_type: str = 'e2-highmem-16',
@@ -60,6 +61,8 @@ def evaluation_dataset_preprocessor_internal(
60
61
  contains the input prompts to the LLM.
61
62
  role_field_name: The field name of the role for input eval dataset instances
62
63
  that contains the input prompts to the LLM.
64
+ target_field_name: The field name of the target for input eval dataset
65
+ instances.
63
66
  model_name: Name of the model being used to create model-specific schemas.
64
67
  machine_type: The machine type of this custom job. If not set, defaulted
65
68
  to `e2-highmem-16`. More details:
@@ -98,7 +101,10 @@ def evaluation_dataset_preprocessor_internal(
98
101
  f'--gcs_source_uris={gcs_source_uris}',
99
102
  f'--input_field_name={input_field_name}',
100
103
  f'--role_field_name={role_field_name}',
101
- f'--model_name={model_name}',
104
+ (
105
+ f'--target_field_name={target_field_name}'
106
+ f'--model_name={model_name}'
107
+ ),
102
108
  f'--output_dirs={output_dirs}',
103
109
  '--executor_input={{$.json_escape[1]}}',
104
110
  ],
@@ -117,6 +123,7 @@ def llm_evaluation_dataset_preprocessor_graph_component(
117
123
  gcs_source_uris: List[str],
118
124
  input_field_name: str = 'input_text',
119
125
  role_field_name: str = 'role',
126
+ target_field_name: str = 'ground_truth',
120
127
  model_name: str = 'publishers/google/model/text-bison@002',
121
128
  display_name: str = 'llm_evaluation_dataset_preprocessor_component',
122
129
  machine_type: str = 'e2-standard-4',
@@ -137,6 +144,8 @@ def llm_evaluation_dataset_preprocessor_graph_component(
137
144
  contains the input prompts to the LLM.
138
145
  role_field_name: The field name of the role for input eval dataset
139
146
  instances that contains the input prompts to the LLM.
147
+ target_field_name: The field name of the target for input eval dataset
148
+ instances.
140
149
  model_name: Name of the model being used to create model-specific schemas.
141
150
  display_name: The name of the Evaluation job.
142
151
  machine_type: The machine type of this custom job. If not set, defaulted
@@ -176,6 +185,7 @@ def llm_evaluation_dataset_preprocessor_graph_component(
176
185
  ).output,
177
186
  input_field_name=input_field_name,
178
187
  role_field_name=role_field_name,
188
+ target_field_name=target_field_name,
179
189
  model_name=model_name,
180
190
  display_name=display_name,
181
191
  machine_type=machine_type,
@@ -33,6 +33,7 @@ def dataprep(
33
33
  ts_identifier_columns: str,
34
34
  time_column: str,
35
35
  static_covariate_columns: str,
36
+ static_covariates_vocab_path: str, # pytype: disable=unused-argument
36
37
  target_column: str,
37
38
  machine_type: str,
38
39
  docker_region: str,
@@ -45,6 +46,8 @@ def dataprep(
45
46
  disk_size_gb: int,
46
47
  test_set_only: bool,
47
48
  bigquery_output: str,
49
+ nan_threshold: float,
50
+ zero_threshold: float,
48
51
  gcs_source: str,
49
52
  gcs_static_covariate_source: str,
50
53
  encryption_spec_key_name: str,
@@ -76,6 +79,8 @@ def dataprep(
76
79
  data source.
77
80
  time_column: The column with timestamps in the BigQuery source.
78
81
  static_covariate_columns: The names of the staic covariates.
82
+ static_covariates_vocab_path: The path to the master static covariates vocab
83
+ json.
79
84
  target_column: The target column in the Big Query data source.
80
85
  machine_type: The machine type of the dataflow workers.
81
86
  docker_region: The docker region, used to determine which image to use.
@@ -90,6 +95,13 @@ def dataprep(
90
95
  to create TFRecords for traiing and validation.
91
96
  bigquery_output: The BigQuery dataset where the test set is written in the
92
97
  form bq://project.dataset.
98
+ nan_threshold: Series having more nan / missing values than
99
+ nan_threshold (inclusive) in percentage for either backtest or forecast
100
+ will not be sampled in the training set (including missing due to
101
+ train_start and train_end). All existing nans are replaced by zeros.
102
+ zero_threshold: Series having more 0.0 values than zero_threshold
103
+ (inclusive) in percentage for either backtest or forecast will not be
104
+ sampled in the training set.
93
105
  gcs_source: The path the csv file of the data source.
94
106
  gcs_static_covariate_source: The path to the csv file of static covariates.
95
107
  encryption_spec_key_name: Customer-managed encryption key options for the
@@ -129,6 +141,8 @@ def dataprep(
129
141
  f'--config.datasets.val_rolling_window_size={test_set_stride}',
130
142
  f'--config.datasets.n_test_windows={n_test_windows}',
131
143
  f'--config.datasets.test_rolling_window_size={test_set_stride}',
144
+ f'--config.datasets.nan_threshold={nan_threshold}',
145
+ f'--config.datasets.zero_threshold={zero_threshold}',
132
146
  f'--config.model.static_cov_names={static_covariate_columns}',
133
147
  f'--config.model.blocks_list={model_blocks}',
134
148
  f'--bigquery_source={bigquery_source}',
@@ -55,7 +55,7 @@ def get_training_artifacts(
55
55
  instance_schema_uri=str,
56
56
  )
57
57
  return outputs(
58
- f'{docker_region}-docker.pkg.dev/vertex-ai/starryn/predictor:20240617_2142_RC00', # pylint: disable=too-many-function-args
58
+ f'{docker_region}-docker.pkg.dev/vertex-ai/starryn/predictor:20240723_0542_RC00', # pylint: disable=too-many-function-args
59
59
  private_dir, # pylint: disable=too-many-function-args
60
60
  os.path.join(private_dir, 'predict_schema.yaml'), # pylint: disable=too-many-function-args
61
61
  os.path.join(private_dir, 'instance_schema.yaml'), # pylint: disable=too-many-function-args
@@ -38,6 +38,8 @@ def train(
38
38
  n_val_windows: int,
39
39
  n_test_windows: int,
40
40
  test_set_stride: int,
41
+ nan_threshold: float,
42
+ zero_threshold: float,
41
43
  cleaning_activation_regularizer_coeff: float,
42
44
  change_point_activation_regularizer_coeff: float,
43
45
  change_point_output_regularizer_coeff: float,
@@ -88,6 +90,13 @@ def train(
88
90
  n_test_windows: The number of windows to use for the test set. Must be >= 1.
89
91
  test_set_stride: The number of timestamps to roll forward when
90
92
  constructing the val and test sets.
93
+ nan_threshold: Series having more nan / missing values than
94
+ nan_threshold (inclusive) in percentage for either backtest or forecast
95
+ will not be sampled in the training set (including missing due to
96
+ train_start and train_end). All existing nans are replaced by zeros.
97
+ zero_threshold: Series having more 0.0 values than zero_threshold
98
+ (inclusive) in percentage for either backtest or forecast will not be
99
+ sampled in the training set.
91
100
  cleaning_activation_regularizer_coeff: The regularization coefficient for
92
101
  the cleaning param estimator's final layer's activation in the cleaning
93
102
  block.
@@ -182,6 +191,8 @@ def train(
182
191
  f'--config.datasets.val_rolling_window_size={test_set_stride}',
183
192
  f'--config.datasets.n_test_windows={n_test_windows}',
184
193
  f'--config.datasets.test_rolling_window_size={test_set_stride}',
194
+ f'--config.datasets.nan_threshold={nan_threshold}',
195
+ f'--config.datasets.zero_threshold={zero_threshold}',
185
196
  f'--config.model.regularizer_coeff={cleaning_activation_regularizer_coeff}',
186
197
  f'--config.model.activation_regularizer_coeff={change_point_activation_regularizer_coeff}',
187
198
  f'--config.model.output_regularizer_coeff={change_point_output_regularizer_coeff}',
@@ -16,7 +16,12 @@
16
16
  from kfp import dsl
17
17
 
18
18
 
19
- @dsl.component(packages_to_install=['google-cloud-aiplatform[tensorboard]'])
19
+ @dsl.component(
20
+ packages_to_install=[
21
+ 'google-cloud-aiplatform[tensorboard]',
22
+ 'protobuf==3.20.*',
23
+ ]
24
+ )
20
25
  def upload_decomposition_plots(
21
26
  project: str,
22
27
  location: str,
@@ -13,6 +13,6 @@
13
13
  # limitations under the License.
14
14
  """Version constants for starry net components."""
15
15
 
16
- DATAPREP_VERSION = '20240617_2225_RC00'
17
- PREDICTOR_VERSION = '20240617_2142_RC00'
18
- TRAINER_VERSION = '20240617_2142_RC00'
16
+ DATAPREP_VERSION = '20240722_2225_RC00'
17
+ PREDICTOR_VERSION = '20240723_0542_RC00'
18
+ TRAINER_VERSION = '20240723_0542_RC00'
@@ -32,6 +32,27 @@ def insert_system_labels_into_payload(payload):
32
32
  return json.dumps(job_spec)
33
33
 
34
34
 
35
+ def cast_accelerator_count_to_int(payload):
36
+ """Casts accelerator_count from string to an int."""
37
+
38
+ job_spec = json.loads(payload)
39
+ # TODO(b/353577594): accelerator_count placeholder is not resolved to int.
40
+ # Need to typecast to int to avoid type mismatch error. Can remove when fix
41
+ # placeholder resolution.
42
+ if (
43
+ 'accelerator_count'
44
+ in job_spec['job_spec']['worker_pool_specs'][0]['machine_spec']
45
+ ):
46
+ job_spec['job_spec']['worker_pool_specs'][0]['machine_spec'][
47
+ 'accelerator_count'
48
+ ] = int(
49
+ job_spec['job_spec']['worker_pool_specs'][0]['machine_spec'][
50
+ 'accelerator_count'
51
+ ]
52
+ )
53
+ return json.dumps(job_spec)
54
+
55
+
35
56
  def create_custom_job_with_client(job_client, parent, job_spec):
36
57
  create_custom_job_fn = None
37
58
  try:
@@ -86,6 +107,7 @@ def create_custom_job(
86
107
  # Create custom job if it does not exist
87
108
  job_name = remote_runner.check_if_job_exists()
88
109
  if job_name is None:
110
+ payload = cast_accelerator_count_to_int(payload)
89
111
  job_name = remote_runner.create_job(
90
112
  create_custom_job_with_client,
91
113
  insert_system_labels_into_payload(payload),
@@ -72,7 +72,7 @@ def automl_forecasting_ensemble(
72
72
  # fmt: on
73
73
  job_id = dsl.PIPELINE_JOB_ID_PLACEHOLDER
74
74
  task_id = dsl.PIPELINE_TASK_ID_PLACEHOLDER
75
- image_uri = 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625'
75
+ image_uri = 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625'
76
76
  display_name = f'automl-forecasting-ensemble-{job_id}-{task_id}'
77
77
 
78
78
  error_file_path = f'{root_dir}/{job_id}/{task_id}/error.pb'
@@ -99,14 +99,14 @@ def automl_forecasting_stage_1_tuner(
99
99
  ' 1, "machine_spec": {"machine_type": "n1-standard-8"},'
100
100
  ' "container_spec": {"image_uri":"'
101
101
  ),
102
- 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625',
102
+ 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625',
103
103
  '", "args": ["forecasting_mp_l2l_stage_1_tuner',
104
104
  '", "--region=',
105
105
  location,
106
106
  '", "--transform_output_path=',
107
107
  transform_output.uri,
108
108
  '", "--training_docker_uri=',
109
- 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625',
109
+ 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625',
110
110
  '", "--reduce_search_space_mode=',
111
111
  reduce_search_space_mode,
112
112
  f'", "--component_id={dsl.PIPELINE_TASK_ID_PLACEHOLDER}',
@@ -97,14 +97,14 @@ def automl_forecasting_stage_2_tuner(
97
97
  ' 1, "machine_spec": {"machine_type": "n1-standard-8"},'
98
98
  ' "container_spec": {"image_uri":"'
99
99
  ),
100
- 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625',
100
+ 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625',
101
101
  '", "args": ["forecasting_mp_l2l_stage_2_tuner',
102
102
  '", "--region=',
103
103
  location,
104
104
  '", "--transform_output_path=',
105
105
  transform_output.uri,
106
106
  '", "--training_docker_uri=',
107
- 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625',
107
+ 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625',
108
108
  f'", "--component_id={dsl.PIPELINE_TASK_ID_PLACEHOLDER}',
109
109
  '", "--training_base_dir=',
110
110
  root_dir,
@@ -1074,6 +1074,8 @@ components:
1074
1074
  componentInputParameter: pipelinechannel--dataflow_subnetwork
1075
1075
  dataflow_use_public_ips:
1076
1076
  componentInputParameter: pipelinechannel--dataflow_use_public_ips
1077
+ dataflow_workers_num:
1078
+ componentInputParameter: pipelinechannel--evaluation_dataflow_starting_num_workers
1077
1079
  encryption_spec_key_name:
1078
1080
  componentInputParameter: pipelinechannel--encryption_spec_key_name
1079
1081
  forecasting_quantiles:
@@ -1795,6 +1797,8 @@ components:
1795
1797
  componentInputParameter: pipelinechannel--dataflow_subnetwork
1796
1798
  dataflow_use_public_ips:
1797
1799
  componentInputParameter: pipelinechannel--dataflow_use_public_ips
1800
+ dataflow_workers_num:
1801
+ componentInputParameter: pipelinechannel--evaluation_dataflow_starting_num_workers
1798
1802
  encryption_spec_key_name:
1799
1803
  componentInputParameter: pipelinechannel--encryption_spec_key_name
1800
1804
  forecasting_quantiles:
@@ -5573,7 +5577,7 @@ deploymentSpec:
5573
5577
  - '{"display_name": "automl-forecasting-ensemble-{{$.pipeline_job_uuid}}-{{$.pipeline_task_uuid}}",
5574
5578
  "encryption_spec": {"kms_key_name": "{{$.inputs.parameters[''encryption_spec_key_name'']}}"},
5575
5579
  "job_spec": {"worker_pool_specs": [{"replica_count": 1, "machine_spec":
5576
- {"machine_type": "n1-highmem-8"}, "container_spec": {"image_uri": "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5580
+ {"machine_type": "n1-highmem-8"}, "container_spec": {"image_uri": "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5577
5581
  "args": ["forecasting_mp_ensemble", "--transform_output_path={{$.inputs.artifacts[''transform_output''].uri}}",
5578
5582
  "--error_file_path={{$.inputs.parameters[''root_dir'']}}/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/error.pb",
5579
5583
  "--metadata_path={{$.inputs.artifacts[''metadata''].uri}}", "--tuning_result_input_path={{$.inputs.artifacts[''tuning_result_input''].uri}}",
@@ -5607,7 +5611,7 @@ deploymentSpec:
5607
5611
  - '{"display_name": "automl-forecasting-ensemble-{{$.pipeline_job_uuid}}-{{$.pipeline_task_uuid}}",
5608
5612
  "encryption_spec": {"kms_key_name": "{{$.inputs.parameters[''encryption_spec_key_name'']}}"},
5609
5613
  "job_spec": {"worker_pool_specs": [{"replica_count": 1, "machine_spec":
5610
- {"machine_type": "n1-highmem-8"}, "container_spec": {"image_uri": "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5614
+ {"machine_type": "n1-highmem-8"}, "container_spec": {"image_uri": "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5611
5615
  "args": ["forecasting_mp_ensemble", "--transform_output_path={{$.inputs.artifacts[''transform_output''].uri}}",
5612
5616
  "--error_file_path={{$.inputs.parameters[''root_dir'']}}/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/error.pb",
5613
5617
  "--metadata_path={{$.inputs.artifacts[''metadata''].uri}}", "--tuning_result_input_path={{$.inputs.artifacts[''tuning_result_input''].uri}}",
@@ -5642,11 +5646,11 @@ deploymentSpec:
5642
5646
  \"encryption_spec\": {\"kms_key_name\":\"", "{{$.inputs.parameters[''encryption_spec_key_name'']}}",
5643
5647
  "\"}, \"job_spec\": {\"worker_pool_specs\": [{\"replica_count\": 1, \"machine_spec\":
5644
5648
  {\"machine_type\": \"n1-standard-8\"}, \"container_spec\": {\"image_uri\":\"",
5645
- "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5649
+ "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5646
5650
  "\", \"args\": [\"forecasting_mp_l2l_stage_1_tuner", "\", \"--region=",
5647
5651
  "{{$.inputs.parameters[''location'']}}", "\", \"--transform_output_path=",
5648
5652
  "{{$.inputs.artifacts[''transform_output''].uri}}", "\", \"--training_docker_uri=",
5649
- "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5653
+ "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5650
5654
  "\", \"--reduce_search_space_mode=", "{{$.inputs.parameters[''reduce_search_space_mode'']}}",
5651
5655
  "\", \"--component_id={{$.pipeline_task_uuid}}", "\", \"--training_base_dir=",
5652
5656
  "{{$.inputs.parameters[''root_dir'']}}", "/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/train",
@@ -5685,11 +5689,11 @@ deploymentSpec:
5685
5689
  \"encryption_spec\": {\"kms_key_name\":\"", "{{$.inputs.parameters[''encryption_spec_key_name'']}}",
5686
5690
  "\"}, \"job_spec\": {\"worker_pool_specs\": [{\"replica_count\": 1, \"machine_spec\":
5687
5691
  {\"machine_type\": \"n1-standard-8\"}, \"container_spec\": {\"image_uri\":\"",
5688
- "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5692
+ "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5689
5693
  "\", \"args\": [\"forecasting_mp_l2l_stage_2_tuner", "\", \"--region=",
5690
5694
  "{{$.inputs.parameters[''location'']}}", "\", \"--transform_output_path=",
5691
5695
  "{{$.inputs.artifacts[''transform_output''].uri}}", "\", \"--training_docker_uri=",
5692
- "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240419_0625",
5696
+ "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/forecasting-training:20240710_0625",
5693
5697
  "\", \"--component_id={{$.pipeline_task_uuid}}", "\", \"--training_base_dir=",
5694
5698
  "{{$.inputs.parameters[''root_dir'']}}", "/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/train",
5695
5699
  "\", \"--num_parallel_trial=", "{{$.inputs.parameters[''num_parallel_trials'']}}",
@@ -5728,7 +5732,7 @@ deploymentSpec:
5728
5732
  \"encryption_spec\": {\"kms_key_name\":\"", "{{$.inputs.parameters[''encryption_spec_key_name'']}}",
5729
5733
  "\"}, \"job_spec\": {\"worker_pool_specs\": [{\"replica_count\": 1, \"machine_spec\":
5730
5734
  {\"machine_type\": \"n1-standard-8\"}, \"container_spec\": {\"image_uri\":\"",
5731
- "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/training:20240419_0625", "\",
5735
+ "us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/training:20240710_0625", "\",
5732
5736
  \"args\": [\"cancel_l2l_tuner\", \"--error_file_path=", "{{$.inputs.parameters[''root_dir'']}}",
5733
5737
  "/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/error.pb\", \"--cleanup_lro_job_infos=",
5734
5738
  "{{$.inputs.parameters[''root_dir'']}}", "/{{$.pipeline_job_uuid}}/lro\"]}}]}}"]}'
@@ -5793,7 +5797,7 @@ deploymentSpec:
5793
5797
  \ 'stage_2_single_run_max_secs',\n ],\n )(\n stage_1_deadline_hours,\n\
5794
5798
  \ stage_1_single_run_max_secs,\n stage_2_deadline_hours,\n \
5795
5799
  \ stage_2_single_run_max_secs,\n )\n\n"
5796
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
5800
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
5797
5801
  exec-calculate-training-parameters-2:
5798
5802
  container:
5799
5803
  args:
@@ -5849,7 +5853,7 @@ deploymentSpec:
5849
5853
  \ 'stage_2_single_run_max_secs',\n ],\n )(\n stage_1_deadline_hours,\n\
5850
5854
  \ stage_1_single_run_max_secs,\n stage_2_deadline_hours,\n \
5851
5855
  \ stage_2_single_run_max_secs,\n )\n\n"
5852
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
5856
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
5853
5857
  exec-feature-attribution:
5854
5858
  container:
5855
5859
  args:
@@ -6040,8 +6044,8 @@ deploymentSpec:
6040
6044
  "/{{$.pipeline_job_uuid}}/{{$.pipeline_task_uuid}}/dataflow_tmp"]}'
6041
6045
  - '{"Concat": ["--dataflow_max_num_workers=", "{{$.inputs.parameters[''dataflow_max_num_workers'']}}"]}'
6042
6046
  - '{"Concat": ["--dataflow_machine_type=", "{{$.inputs.parameters[''dataflow_machine_type'']}}"]}'
6043
- - --dataflow_worker_container_image=us-docker.pkg.dev/vertex-ai/automl-tabular/dataflow-worker:20240419_0625
6044
- - --feature_transform_engine_docker_uri=us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240419_0625
6047
+ - --dataflow_worker_container_image=us-docker.pkg.dev/vertex-ai/automl-tabular/dataflow-worker:20240710_0625
6048
+ - --feature_transform_engine_docker_uri=us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240710_0625
6045
6049
  - '{"Concat": ["--dataflow_disk_size_gb=", "{{$.inputs.parameters[''dataflow_disk_size_gb'']}}"]}'
6046
6050
  - '{"Concat": ["--dataflow_subnetwork_fully_qualified=", "{{$.inputs.parameters[''dataflow_subnetwork'']}}"]}'
6047
6051
  - '{"Concat": ["--dataflow_use_public_ips=", "{{$.inputs.parameters[''dataflow_use_public_ips'']}}"]}'
@@ -6058,7 +6062,7 @@ deploymentSpec:
6058
6062
  - '{"IfPresent": {"InputName": "group_temporal_total_weight", "Then": {"Concat":
6059
6063
  ["--group_temporal_total_weight=", "{{$.inputs.parameters[''group_temporal_total_weight'']}}"]}}}'
6060
6064
  - '{"Concat": ["--encryption_spec_key_name=", "{{$.inputs.parameters[''encryption_spec_key_name'']}}"]}'
6061
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240419_0625
6065
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240710_0625
6062
6066
  resources:
6063
6067
  cpuLimit: 8.0
6064
6068
  memoryLimit: 30.0
@@ -6089,7 +6093,7 @@ deploymentSpec:
6089
6093
  \ = 'point'\n else:\n forecasting_type = 'quantile'\n\n return collections.namedtuple(\n\
6090
6094
  \ 'Outputs',\n (\n 'forecasting_type',\n 'quantiles',\n\
6091
6095
  \ ),\n )(forecasting_type, quantiles)\n\n"
6092
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6096
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6093
6097
  exec-finalize-eval-quantile-parameters-2:
6094
6098
  container:
6095
6099
  args:
@@ -6117,7 +6121,7 @@ deploymentSpec:
6117
6121
  \ = 'point'\n else:\n forecasting_type = 'quantile'\n\n return collections.namedtuple(\n\
6118
6122
  \ 'Outputs',\n (\n 'forecasting_type',\n 'quantiles',\n\
6119
6123
  \ ),\n )(forecasting_type, quantiles)\n\n"
6120
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6124
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6121
6125
  exec-get-or-create-model-description:
6122
6126
  container:
6123
6127
  args:
@@ -6146,7 +6150,7 @@ deploymentSpec:
6146
6150
  \ return f'{original_description} From: {pipeline_url}'\n\n # The pipeline\
6147
6151
  \ url contains KFP placeholders injected at runtime.\n return f'Vertex\
6148
6152
  \ forecasting model trained in the pipeline: {pipeline_url}'\n\n"
6149
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6153
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6150
6154
  exec-get-or-create-model-description-2:
6151
6155
  container:
6152
6156
  args:
@@ -6175,7 +6179,7 @@ deploymentSpec:
6175
6179
  \ return f'{original_description} From: {pipeline_url}'\n\n # The pipeline\
6176
6180
  \ url contains KFP placeholders injected at runtime.\n return f'Vertex\
6177
6181
  \ forecasting model trained in the pipeline: {pipeline_url}'\n\n"
6178
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6182
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6179
6183
  exec-get-prediction-image-uri:
6180
6184
  container:
6181
6185
  args:
@@ -6198,14 +6202,14 @@ deploymentSpec:
6198
6202
  Returns the prediction image corresponding to the given model type.\"\"\"\
6199
6203
  \n # Keys come from AutoMlTimeSeriesForecastingTrainSpec.\n # The URIs\
6200
6204
  \ must be hardcoded without any breaks in the code so string\n # replacement\
6201
- \ will work correctly.\n images = {\n 'l2l': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-l2l:20240419_0625',\n\
6202
- \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240419_0625',\n\
6203
- \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240419_0625',\n\
6204
- \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240419_0625',\n\
6205
+ \ will work correctly.\n images = {\n 'l2l': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-l2l:20240710_0625',\n\
6206
+ \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240710_0625',\n\
6207
+ \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240710_0625',\n\
6208
+ \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240710_0625',\n\
6205
6209
  \ }\n if model_type not in images:\n raise ValueError(\n f'Invalid\
6206
6210
  \ forecasting model type: {model_type}. Valid options are: '\n f'{images.keys()}.'\n\
6207
6211
  \ )\n return images[model_type]\n\n"
6208
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6212
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6209
6213
  exec-get-prediction-image-uri-2:
6210
6214
  container:
6211
6215
  args:
@@ -6228,14 +6232,14 @@ deploymentSpec:
6228
6232
  Returns the prediction image corresponding to the given model type.\"\"\"\
6229
6233
  \n # Keys come from AutoMlTimeSeriesForecastingTrainSpec.\n # The URIs\
6230
6234
  \ must be hardcoded without any breaks in the code so string\n # replacement\
6231
- \ will work correctly.\n images = {\n 'l2l': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-l2l:20240419_0625',\n\
6232
- \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240419_0625',\n\
6233
- \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240419_0625',\n\
6234
- \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240419_0625',\n\
6235
+ \ will work correctly.\n images = {\n 'l2l': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-l2l:20240710_0625',\n\
6236
+ \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240710_0625',\n\
6237
+ \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240710_0625',\n\
6238
+ \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240710_0625',\n\
6235
6239
  \ }\n if model_type not in images:\n raise ValueError(\n f'Invalid\
6236
6240
  \ forecasting model type: {model_type}. Valid options are: '\n f'{images.keys()}.'\n\
6237
6241
  \ )\n return images[model_type]\n\n"
6238
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6242
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6239
6243
  exec-get-predictions-column:
6240
6244
  container:
6241
6245
  args:
@@ -6258,7 +6262,7 @@ deploymentSpec:
6258
6262
  \ str) -> str:\n \"\"\"Generates the BP output's target column name.\"\"\
6259
6263
  \"\n if forecasting_type == 'quantile':\n return f'predicted_{target_column}.quantile_predictions'\n\
6260
6264
  \ return f'predicted_{target_column}.value'\n\n"
6261
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6265
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6262
6266
  exec-get-predictions-column-2:
6263
6267
  container:
6264
6268
  args:
@@ -6281,7 +6285,7 @@ deploymentSpec:
6281
6285
  \ str) -> str:\n \"\"\"Generates the BP output's target column name.\"\"\
6282
6286
  \"\n if forecasting_type == 'quantile':\n return f'predicted_{target_column}.quantile_predictions'\n\
6283
6287
  \ return f'predicted_{target_column}.value'\n\n"
6284
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6288
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6285
6289
  exec-importer:
6286
6290
  importer:
6287
6291
  artifactUri:
@@ -6813,7 +6817,7 @@ deploymentSpec:
6813
6817
  \ 'model_display_name',\n 'transformations',\n ],\n\
6814
6818
  \ )(\n data_source_csv_filenames,\n data_source_bigquery_table_path,\n\
6815
6819
  \ model_display_name,\n transformations,\n )\n\n"
6816
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6820
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6817
6821
  exec-split-materialized-data:
6818
6822
  container:
6819
6823
  args:
@@ -6859,7 +6863,7 @@ deploymentSpec:
6859
6863
  \ 'w') as f:\n f.write(file_patterns[0])\n\n with tf.io.gfile.GFile(materialized_eval_split,\
6860
6864
  \ 'w') as f:\n f.write(file_patterns[1])\n\n with tf.io.gfile.GFile(materialized_test_split,\
6861
6865
  \ 'w') as f:\n f.write(file_patterns[2])\n\n"
6862
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/dataflow-worker:20240419_0625
6866
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/dataflow-worker:20240710_0625
6863
6867
  exec-string-not-empty:
6864
6868
  container:
6865
6869
  args:
@@ -6883,7 +6887,7 @@ deploymentSpec:
6883
6887
  \n Returns:\n Boolean value. -> 'true' if empty, 'false' if not empty.\
6884
6888
  \ We need to use str\n instead of bool due to a limitation in KFP compiler.\n\
6885
6889
  \ \"\"\"\n return 'true' if value else 'false'\n\n"
6886
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6890
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6887
6891
  exec-table-to-uri:
6888
6892
  container:
6889
6893
  args:
@@ -6913,7 +6917,7 @@ deploymentSpec:
6913
6917
  \ if use_bq_prefix:\n bq_uri = 'bq://' + bq_uri\n outputs.append(bq_uri)\n\
6914
6918
  \ return collections.namedtuple(\n 'Outputs',\n ['project_id',\
6915
6919
  \ 'dataset_id', 'table_id', 'uri'],\n )(*outputs)\n\n"
6916
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6920
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6917
6921
  exec-table-to-uri-2:
6918
6922
  container:
6919
6923
  args:
@@ -6943,7 +6947,7 @@ deploymentSpec:
6943
6947
  \ if use_bq_prefix:\n bq_uri = 'bq://' + bq_uri\n outputs.append(bq_uri)\n\
6944
6948
  \ return collections.namedtuple(\n 'Outputs',\n ['project_id',\
6945
6949
  \ 'dataset_id', 'table_id', 'uri'],\n )(*outputs)\n\n"
6946
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240419_0625
6950
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/kfp-v2-base:20240710_0625
6947
6951
  exec-training-configurator-and-validator:
6948
6952
  container:
6949
6953
  args:
@@ -6988,7 +6992,7 @@ deploymentSpec:
6988
6992
  ["--temporal_total_weight=", "{{$.inputs.parameters[''temporal_total_weight'']}}"]}}}'
6989
6993
  - '{"IfPresent": {"InputName": "group_temporal_total_weight", "Then": {"Concat":
6990
6994
  ["--group_temporal_total_weight=", "{{$.inputs.parameters[''group_temporal_total_weight'']}}"]}}}'
6991
- image: us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240419_0625
6995
+ image: us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240710_0625
6992
6996
  pipelineInfo:
6993
6997
  description: The AutoML Forecasting pipeline.
6994
6998
  name: learn-to-learn-forecasting