google-cloud-pipeline-components 2.15.0__py3-none-any.whl → 2.16.1__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 (59) 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 +31 -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 +42 -38
  12. google_cloud_pipeline_components/preview/automl/forecasting/sequence_to_sequence_forecasting_pipeline.yaml +42 -38
  13. google_cloud_pipeline_components/preview/automl/forecasting/temporal_fusion_transformer_forecasting_pipeline.yaml +42 -38
  14. google_cloud_pipeline_components/preview/automl/forecasting/time_series_dense_encoder_forecasting_pipeline.yaml +42 -38
  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 +45 -45
  18. google_cloud_pipeline_components/preview/automl/tabular/automl_tabular_v2_pipeline.yaml +47 -47
  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 +64 -15
  34. google_cloud_pipeline_components/preview/starry_net/component.py +60 -34
  35. google_cloud_pipeline_components/proto/template_metadata_pb2.py +21 -17
  36. google_cloud_pipeline_components/v1/automl/forecasting/bqml_arima_predict_pipeline.yaml +10 -10
  37. google_cloud_pipeline_components/v1/automl/forecasting/bqml_arima_train_pipeline.yaml +31 -31
  38. google_cloud_pipeline_components/v1/automl/forecasting/prophet_predict_pipeline.yaml +13 -13
  39. google_cloud_pipeline_components/v1/automl/forecasting/prophet_trainer.py +3 -3
  40. google_cloud_pipeline_components/v1/automl/forecasting/prophet_trainer_pipeline.yaml +14 -14
  41. google_cloud_pipeline_components/v1/automl/tabular/automl_tabular_pipeline.yaml +43 -43
  42. google_cloud_pipeline_components/v1/automl/tabular/cv_trainer.py +2 -2
  43. google_cloud_pipeline_components/v1/automl/tabular/ensemble.py +2 -2
  44. google_cloud_pipeline_components/v1/automl/tabular/finalizer.py +1 -1
  45. google_cloud_pipeline_components/v1/automl/tabular/infra_validator.py +1 -1
  46. google_cloud_pipeline_components/v1/automl/tabular/split_materialized_data.py +1 -1
  47. google_cloud_pipeline_components/v1/automl/tabular/stage_1_tuner.py +2 -2
  48. google_cloud_pipeline_components/v1/automl/tabular/stats_and_example_gen.py +2 -2
  49. google_cloud_pipeline_components/v1/automl/tabular/training_configurator_and_validator.py +1 -1
  50. google_cloud_pipeline_components/v1/automl/tabular/transform.py +2 -2
  51. google_cloud_pipeline_components/v1/custom_job/component.py +3 -0
  52. google_cloud_pipeline_components/v1/custom_job/utils.py +4 -0
  53. google_cloud_pipeline_components/v1/model_evaluation/evaluation_llm_text_generation_pipeline.py +1 -1
  54. google_cloud_pipeline_components/version.py +1 -1
  55. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.1.dist-info}/METADATA +10 -10
  56. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.1.dist-info}/RECORD +59 -59
  57. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.1.dist-info}/WHEEL +1 -1
  58. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.1.dist-info}/LICENSE +0 -0
  59. {google_cloud_pipeline_components-2.15.0.dist-info → google_cloud_pipeline_components-2.16.1.dist-info}/top_level.txt +0 -0
@@ -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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_0625
6048
+ - --feature_transform_engine_docker_uri=us-docker.pkg.dev/vertex-ai/automl-tabular/feature-transform-engine:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_0625',\n\
6206
+ \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240808_0625',\n\
6207
+ \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240808_0625',\n\
6208
+ \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240808_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:20240808_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:20240808_0625',\n\
6236
+ \ 'seq2seq': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-seq2seq:20240808_0625',\n\
6237
+ \ 'tft': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tft:20240808_0625',\n\
6238
+ \ 'tide': 'us-docker.pkg.dev/vertex-ai/automl-tabular/forecasting-prediction-server-tide:20240808_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:20240808_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:20240808_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:20240808_0625
6285
6289
  exec-importer:
6286
6290
  importer:
6287
6291
  artifactUri:
@@ -6330,7 +6334,7 @@ deploymentSpec:
6330
6334
  - -u
6331
6335
  - -m
6332
6336
  - launcher
6333
- image: gcr.io/ml-pipeline/automl-tables-private:1.0.13
6337
+ image: gcr.io/ml-pipeline/automl-tables-private:1.0.18
6334
6338
  exec-model-batch-explanation-2:
6335
6339
  container:
6336
6340
  args:
@@ -6372,7 +6376,7 @@ deploymentSpec:
6372
6376
  - -u
6373
6377
  - -m
6374
6378
  - launcher
6375
- image: gcr.io/ml-pipeline/automl-tables-private:1.0.13
6379
+ image: gcr.io/ml-pipeline/automl-tables-private:1.0.18
6376
6380
  exec-model-batch-predict:
6377
6381
  container:
6378
6382
  args:
@@ -6727,7 +6731,7 @@ deploymentSpec:
6727
6731
  - -u
6728
6732
  - -m
6729
6733
  - launcher
6730
- image: gcr.io/ml-pipeline/automl-tables-private:1.0.17
6734
+ image: gcr.io/ml-pipeline/automl-tables-private:1.0.18
6731
6735
  exec-model-upload-2:
6732
6736
  container:
6733
6737
  args:
@@ -6756,7 +6760,7 @@ deploymentSpec:
6756
6760
  - -u
6757
6761
  - -m
6758
6762
  - launcher
6759
- image: gcr.io/ml-pipeline/automl-tables-private:1.0.17
6763
+ image: gcr.io/ml-pipeline/automl-tables-private:1.0.18
6760
6764
  exec-set-optional-inputs:
6761
6765
  container:
6762
6766
  args:
@@ -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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_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:20240808_0625
6992
6996
  pipelineInfo:
6993
6997
  description: The Timeseries Dense Encoder (TiDE) Forecasting pipeline.
6994
6998
  name: time-series-dense-encoder-forecasting
@@ -13,6 +13,20 @@ _RETAIL_MODEL_DISABLED_OPTIONS = frozenset([
13
13
  ])
14
14
 
15
15
 
16
+ def _validate_start_max_parameters(
17
+ starting_worker_count: int,
18
+ max_worker_count: int,
19
+ starting_count_name: str,
20
+ max_count_name: str,
21
+ ):
22
+ if starting_worker_count > max_worker_count:
23
+ raise ValueError(
24
+ 'Starting count must be less than or equal to max count.'
25
+ f' {starting_count_name}: {starting_worker_count}, {max_count_name}:'
26
+ f' {max_worker_count}'
27
+ )
28
+
29
+
16
30
  def _get_base_forecasting_parameters(
17
31
  *,
18
32
  project: str,
@@ -59,6 +73,7 @@ def _get_base_forecasting_parameters(
59
73
  evaluation_batch_predict_max_replica_count: int = 25,
60
74
  evaluation_dataflow_machine_type: str = 'n1-standard-16',
61
75
  evaluation_dataflow_max_num_workers: int = 25,
76
+ evaluation_dataflow_starting_num_workers: int = 22,
62
77
  evaluation_dataflow_disk_size_gb: int = 50,
63
78
  study_spec_parameters_override: Optional[List[Dict[str, Any]]] = None,
64
79
  stage_1_tuner_worker_pool_specs_override: Optional[Dict[str, Any]] = None,
@@ -91,6 +106,20 @@ def _get_base_forecasting_parameters(
91
106
  )
92
107
  time_series_identifier_columns = [time_series_identifier_column]
93
108
 
109
+ _validate_start_max_parameters(
110
+ starting_worker_count=evaluation_batch_predict_starting_replica_count,
111
+ max_worker_count=evaluation_batch_predict_max_replica_count,
112
+ starting_count_name='evaluation_batch_predict_starting_replica_count',
113
+ max_count_name='evaluation_batch_predict_max_replica_count',
114
+ )
115
+
116
+ _validate_start_max_parameters(
117
+ starting_worker_count=evaluation_dataflow_starting_num_workers,
118
+ max_worker_count=evaluation_dataflow_max_num_workers,
119
+ starting_count_name='evaluation_dataflow_starting_num_workers',
120
+ max_count_name='evaluation_dataflow_max_num_workers',
121
+ )
122
+
94
123
  parameter_values = {}
95
124
  parameters = {
96
125
  'project': project,
@@ -152,6 +181,9 @@ def _get_base_forecasting_parameters(
152
181
  'evaluation_dataflow_max_num_workers': (
153
182
  evaluation_dataflow_max_num_workers
154
183
  ),
184
+ 'evaluation_dataflow_starting_num_workers': (
185
+ evaluation_dataflow_starting_num_workers
186
+ ),
155
187
  'evaluation_dataflow_disk_size_gb': evaluation_dataflow_disk_size_gb,
156
188
  'study_spec_parameters_override': study_spec_parameters_override,
157
189
  'stage_1_tuner_worker_pool_specs_override': (
@@ -174,13 +206,11 @@ def _get_base_forecasting_parameters(
174
206
 
175
207
  # Filter out empty values and those excluded from the particular pipeline.
176
208
  # (example: TFT and Seq2Seq don't support `quantiles`.)
177
- parameter_values.update(
178
- {
179
- param: value
180
- for param, value in parameters.items()
181
- if value is not None and param not in fields_to_exclude
182
- }
183
- )
209
+ parameter_values.update({
210
+ param: value
211
+ for param, value in parameters.items()
212
+ if value is not None and param not in fields_to_exclude
213
+ })
184
214
  return parameter_values
185
215
 
186
216
 
@@ -229,6 +259,7 @@ def get_learn_to_learn_forecasting_pipeline_and_parameters(
229
259
  evaluation_batch_predict_max_replica_count: int = 25,
230
260
  evaluation_dataflow_machine_type: str = 'n1-standard-16',
231
261
  evaluation_dataflow_max_num_workers: int = 25,
262
+ evaluation_dataflow_starting_num_workers: int = 22,
232
263
  evaluation_dataflow_disk_size_gb: int = 50,
233
264
  study_spec_parameters_override: Optional[List[Dict[str, Any]]] = None,
234
265
  stage_1_tuner_worker_pool_specs_override: Optional[Dict[str, Any]] = None,
@@ -291,6 +322,7 @@ def get_learn_to_learn_forecasting_pipeline_and_parameters(
291
322
  evaluation_batch_predict_max_replica_count: The maximum count of replicas the batch prediction job can scale to.
292
323
  evaluation_dataflow_machine_type: Machine type for the dataflow job in evaluation, such as 'n1-standard-16'.
293
324
  evaluation_dataflow_max_num_workers: Maximum number of dataflow workers.
325
+ evaluation_dataflow_starting_num_workers: Starting number of dataflow workers.
294
326
  evaluation_dataflow_disk_size_gb: The disk space in GB for dataflow.
295
327
  study_spec_parameters_override: The list for overriding study spec.
296
328
  stage_1_tuner_worker_pool_specs_override: The dictionary for overriding stage 1 tuner worker pool spec.
@@ -354,6 +386,7 @@ def get_learn_to_learn_forecasting_pipeline_and_parameters(
354
386
  evaluation_batch_predict_max_replica_count=evaluation_batch_predict_max_replica_count,
355
387
  evaluation_dataflow_machine_type=evaluation_dataflow_machine_type,
356
388
  evaluation_dataflow_max_num_workers=evaluation_dataflow_max_num_workers,
389
+ evaluation_dataflow_starting_num_workers=evaluation_dataflow_starting_num_workers,
357
390
  evaluation_dataflow_disk_size_gb=evaluation_dataflow_disk_size_gb,
358
391
  study_spec_parameters_override=study_spec_parameters_override,
359
392
  stage_1_tuner_worker_pool_specs_override=stage_1_tuner_worker_pool_specs_override,
@@ -423,6 +456,7 @@ def get_time_series_dense_encoder_forecasting_pipeline_and_parameters(
423
456
  evaluation_batch_predict_max_replica_count: int = 25,
424
457
  evaluation_dataflow_machine_type: str = 'n1-standard-16',
425
458
  evaluation_dataflow_max_num_workers: int = 25,
459
+ evaluation_dataflow_starting_num_workers: int = 22,
426
460
  evaluation_dataflow_disk_size_gb: int = 50,
427
461
  study_spec_parameters_override: Optional[List[Dict[str, Any]]] = None,
428
462
  stage_1_tuner_worker_pool_specs_override: Optional[Dict[str, Any]] = None,
@@ -485,6 +519,7 @@ def get_time_series_dense_encoder_forecasting_pipeline_and_parameters(
485
519
  evaluation_batch_predict_max_replica_count: The maximum count of replicas the batch prediction job can scale to.
486
520
  evaluation_dataflow_machine_type: Machine type for the dataflow job in evaluation, such as 'n1-standard-16'.
487
521
  evaluation_dataflow_max_num_workers: Maximum number of dataflow workers.
522
+ evaluation_dataflow_starting_num_workers: Starting number of dataflow workers.
488
523
  evaluation_dataflow_disk_size_gb: The disk space in GB for dataflow.
489
524
  study_spec_parameters_override: The list for overriding study spec.
490
525
  stage_1_tuner_worker_pool_specs_override: The dictionary for overriding stage 1 tuner worker pool spec.
@@ -548,6 +583,7 @@ def get_time_series_dense_encoder_forecasting_pipeline_and_parameters(
548
583
  evaluation_batch_predict_max_replica_count=evaluation_batch_predict_max_replica_count,
549
584
  evaluation_dataflow_machine_type=evaluation_dataflow_machine_type,
550
585
  evaluation_dataflow_max_num_workers=evaluation_dataflow_max_num_workers,
586
+ evaluation_dataflow_starting_num_workers=evaluation_dataflow_starting_num_workers,
551
587
  evaluation_dataflow_disk_size_gb=evaluation_dataflow_disk_size_gb,
552
588
  study_spec_parameters_override=study_spec_parameters_override,
553
589
  stage_1_tuner_worker_pool_specs_override=stage_1_tuner_worker_pool_specs_override,
@@ -616,6 +652,7 @@ def get_temporal_fusion_transformer_forecasting_pipeline_and_parameters(
616
652
  evaluation_batch_predict_max_replica_count: int = 25,
617
653
  evaluation_dataflow_machine_type: str = 'n1-standard-16',
618
654
  evaluation_dataflow_max_num_workers: int = 25,
655
+ evaluation_dataflow_starting_num_workers: int = 22,
619
656
  evaluation_dataflow_disk_size_gb: int = 50,
620
657
  study_spec_parameters_override: Optional[List[Dict[str, Any]]] = None,
621
658
  stage_1_tuner_worker_pool_specs_override: Optional[Dict[str, Any]] = None,
@@ -671,6 +708,7 @@ def get_temporal_fusion_transformer_forecasting_pipeline_and_parameters(
671
708
  evaluation_batch_predict_max_replica_count: The maximum count of replicas the batch prediction job can scale to.
672
709
  evaluation_dataflow_machine_type: Machine type for the dataflow job in evaluation, such as 'n1-standard-16'.
673
710
  evaluation_dataflow_max_num_workers: Maximum number of dataflow workers.
711
+ evaluation_dataflow_starting_num_workers: Starting number of dataflow workers.
674
712
  evaluation_dataflow_disk_size_gb: The disk space in GB for dataflow.
675
713
  study_spec_parameters_override: The list for overriding study spec.
676
714
  stage_1_tuner_worker_pool_specs_override: The dictionary for overriding stage 1 tuner worker pool spec.
@@ -731,6 +769,7 @@ def get_temporal_fusion_transformer_forecasting_pipeline_and_parameters(
731
769
  evaluation_batch_predict_max_replica_count=evaluation_batch_predict_max_replica_count,
732
770
  evaluation_dataflow_machine_type=evaluation_dataflow_machine_type,
733
771
  evaluation_dataflow_max_num_workers=evaluation_dataflow_max_num_workers,
772
+ evaluation_dataflow_starting_num_workers=evaluation_dataflow_starting_num_workers,
734
773
  evaluation_dataflow_disk_size_gb=evaluation_dataflow_disk_size_gb,
735
774
  study_spec_parameters_override=study_spec_parameters_override,
736
775
  stage_1_tuner_worker_pool_specs_override=stage_1_tuner_worker_pool_specs_override,
@@ -795,6 +834,7 @@ def get_sequence_to_sequence_forecasting_pipeline_and_parameters(
795
834
  evaluation_batch_predict_max_replica_count: int = 25,
796
835
  evaluation_dataflow_machine_type: str = 'n1-standard-16',
797
836
  evaluation_dataflow_max_num_workers: int = 25,
837
+ evaluation_dataflow_starting_num_workers: int = 22,
798
838
  evaluation_dataflow_disk_size_gb: int = 50,
799
839
  study_spec_parameters_override: Optional[List[Dict[str, Any]]] = None,
800
840
  stage_1_tuner_worker_pool_specs_override: Optional[Dict[str, Any]] = None,
@@ -851,6 +891,7 @@ def get_sequence_to_sequence_forecasting_pipeline_and_parameters(
851
891
  evaluation_batch_predict_max_replica_count: The maximum count of replicas the batch prediction job can scale to.
852
892
  evaluation_dataflow_machine_type: Machine type for the dataflow job in evaluation, such as 'n1-standard-16'.
853
893
  evaluation_dataflow_max_num_workers: Maximum number of dataflow workers.
894
+ evaluation_dataflow_starting_num_workers: Starting number of dataflow workers.
854
895
  evaluation_dataflow_disk_size_gb: The disk space in GB for dataflow.
855
896
  study_spec_parameters_override: The list for overriding study spec.
856
897
  stage_1_tuner_worker_pool_specs_override: The dictionary for overriding stage 1 tuner worker pool spec.
@@ -908,6 +949,7 @@ def get_sequence_to_sequence_forecasting_pipeline_and_parameters(
908
949
  evaluation_batch_predict_max_replica_count=evaluation_batch_predict_max_replica_count,
909
950
  evaluation_dataflow_machine_type=evaluation_dataflow_machine_type,
910
951
  evaluation_dataflow_max_num_workers=evaluation_dataflow_max_num_workers,
952
+ evaluation_dataflow_starting_num_workers=evaluation_dataflow_starting_num_workers,
911
953
  evaluation_dataflow_disk_size_gb=evaluation_dataflow_disk_size_gb,
912
954
  study_spec_parameters_override=study_spec_parameters_override,
913
955
  stage_1_tuner_worker_pool_specs_override=stage_1_tuner_worker_pool_specs_override,
@@ -65,7 +65,7 @@ def automated_feature_engineering(
65
65
  ' 1, "machine_spec": {"machine_type": "n1-standard-16"},'
66
66
  ' "container_spec": {"image_uri":"'
67
67
  ),
68
- 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/training:20240419_0625',
68
+ 'us-docker.pkg.dev/vertex-ai-restricted/automl-tabular/training:20240808_0625',
69
69
  '", "args": ["feature_engineering", "--project=', project,
70
70
  '", "--location=', location, '", "--data_source_bigquery_table_path=',
71
71
  data_source_bigquery_table_path,