oracle-ads 2.13.7__py3-none-any.whl → 2.13.9rc0__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.
- {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/METADATA +151 -151
- oracle_ads-2.13.9rc0.dist-info/RECORD +9 -0
- {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/WHEEL +2 -1
- {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/entry_points.txt +1 -2
- oracle_ads-2.13.9rc0.dist-info/top_level.txt +1 -0
- ads/aqua/__init__.py +0 -40
- ads/aqua/app.py +0 -506
- ads/aqua/cli.py +0 -96
- ads/aqua/client/__init__.py +0 -3
- ads/aqua/client/client.py +0 -836
- ads/aqua/client/openai_client.py +0 -305
- ads/aqua/common/__init__.py +0 -5
- ads/aqua/common/decorator.py +0 -125
- ads/aqua/common/entities.py +0 -266
- ads/aqua/common/enums.py +0 -122
- ads/aqua/common/errors.py +0 -109
- ads/aqua/common/utils.py +0 -1285
- ads/aqua/config/__init__.py +0 -4
- ads/aqua/config/container_config.py +0 -248
- ads/aqua/config/evaluation/__init__.py +0 -4
- ads/aqua/config/evaluation/evaluation_service_config.py +0 -147
- ads/aqua/config/utils/__init__.py +0 -4
- ads/aqua/config/utils/serializer.py +0 -339
- ads/aqua/constants.py +0 -114
- ads/aqua/data.py +0 -14
- ads/aqua/dummy_data/icon.txt +0 -1
- ads/aqua/dummy_data/oci_model_deployments.json +0 -56
- ads/aqua/dummy_data/oci_models.json +0 -1
- ads/aqua/dummy_data/readme.md +0 -26
- ads/aqua/evaluation/__init__.py +0 -8
- ads/aqua/evaluation/constants.py +0 -53
- ads/aqua/evaluation/entities.py +0 -186
- ads/aqua/evaluation/errors.py +0 -70
- ads/aqua/evaluation/evaluation.py +0 -1814
- ads/aqua/extension/__init__.py +0 -42
- ads/aqua/extension/aqua_ws_msg_handler.py +0 -76
- ads/aqua/extension/base_handler.py +0 -90
- ads/aqua/extension/common_handler.py +0 -121
- ads/aqua/extension/common_ws_msg_handler.py +0 -36
- ads/aqua/extension/deployment_handler.py +0 -298
- ads/aqua/extension/deployment_ws_msg_handler.py +0 -54
- ads/aqua/extension/errors.py +0 -30
- ads/aqua/extension/evaluation_handler.py +0 -129
- ads/aqua/extension/evaluation_ws_msg_handler.py +0 -61
- ads/aqua/extension/finetune_handler.py +0 -96
- ads/aqua/extension/model_handler.py +0 -390
- ads/aqua/extension/models/__init__.py +0 -0
- ads/aqua/extension/models/ws_models.py +0 -145
- ads/aqua/extension/models_ws_msg_handler.py +0 -50
- ads/aqua/extension/ui_handler.py +0 -282
- ads/aqua/extension/ui_websocket_handler.py +0 -130
- ads/aqua/extension/utils.py +0 -133
- ads/aqua/finetuning/__init__.py +0 -7
- ads/aqua/finetuning/constants.py +0 -23
- ads/aqua/finetuning/entities.py +0 -181
- ads/aqua/finetuning/finetuning.py +0 -731
- ads/aqua/model/__init__.py +0 -8
- ads/aqua/model/constants.py +0 -60
- ads/aqua/model/entities.py +0 -306
- ads/aqua/model/enums.py +0 -30
- ads/aqua/model/model.py +0 -2079
- ads/aqua/modeldeployment/__init__.py +0 -8
- ads/aqua/modeldeployment/constants.py +0 -10
- ads/aqua/modeldeployment/deployment.py +0 -1324
- ads/aqua/modeldeployment/entities.py +0 -653
- ads/aqua/modeldeployment/inference.py +0 -74
- ads/aqua/modeldeployment/utils.py +0 -543
- ads/aqua/resources/gpu_shapes_index.json +0 -94
- ads/aqua/server/__init__.py +0 -4
- ads/aqua/server/__main__.py +0 -24
- ads/aqua/server/app.py +0 -47
- ads/aqua/server/aqua_spec.yml +0 -1291
- ads/aqua/training/__init__.py +0 -4
- ads/aqua/training/exceptions.py +0 -476
- ads/aqua/ui.py +0 -499
- ads/automl/__init__.py +0 -9
- ads/automl/driver.py +0 -330
- ads/automl/provider.py +0 -975
- ads/bds/__init__.py +0 -5
- ads/bds/auth.py +0 -127
- ads/bds/big_data_service.py +0 -255
- ads/catalog/__init__.py +0 -19
- ads/catalog/model.py +0 -1576
- ads/catalog/notebook.py +0 -461
- ads/catalog/project.py +0 -468
- ads/catalog/summary.py +0 -178
- ads/common/__init__.py +0 -11
- ads/common/analyzer.py +0 -65
- ads/common/artifact/.model-ignore +0 -63
- ads/common/artifact/__init__.py +0 -10
- ads/common/auth.py +0 -1122
- ads/common/card_identifier.py +0 -83
- ads/common/config.py +0 -647
- ads/common/data.py +0 -165
- ads/common/decorator/__init__.py +0 -9
- ads/common/decorator/argument_to_case.py +0 -88
- ads/common/decorator/deprecate.py +0 -69
- ads/common/decorator/require_nonempty_arg.py +0 -65
- ads/common/decorator/runtime_dependency.py +0 -178
- ads/common/decorator/threaded.py +0 -97
- ads/common/decorator/utils.py +0 -35
- ads/common/dsc_file_system.py +0 -303
- ads/common/error.py +0 -14
- ads/common/extended_enum.py +0 -81
- ads/common/function/__init__.py +0 -5
- ads/common/function/fn_util.py +0 -142
- ads/common/function/func_conf.yaml +0 -25
- ads/common/ipython.py +0 -76
- ads/common/model.py +0 -679
- ads/common/model_artifact.py +0 -1759
- ads/common/model_artifact_schema.json +0 -107
- ads/common/model_export_util.py +0 -664
- ads/common/model_metadata.py +0 -24
- ads/common/object_storage_details.py +0 -296
- ads/common/oci_client.py +0 -175
- ads/common/oci_datascience.py +0 -46
- ads/common/oci_logging.py +0 -1144
- ads/common/oci_mixin.py +0 -957
- ads/common/oci_resource.py +0 -136
- ads/common/serializer.py +0 -559
- ads/common/utils.py +0 -1852
- ads/common/word_lists.py +0 -1491
- ads/common/work_request.py +0 -189
- ads/data_labeling/__init__.py +0 -13
- ads/data_labeling/boundingbox.py +0 -253
- ads/data_labeling/constants.py +0 -47
- ads/data_labeling/data_labeling_service.py +0 -244
- ads/data_labeling/interface/__init__.py +0 -5
- ads/data_labeling/interface/loader.py +0 -16
- ads/data_labeling/interface/parser.py +0 -16
- ads/data_labeling/interface/reader.py +0 -23
- ads/data_labeling/loader/__init__.py +0 -5
- ads/data_labeling/loader/file_loader.py +0 -241
- ads/data_labeling/metadata.py +0 -110
- ads/data_labeling/mixin/__init__.py +0 -5
- ads/data_labeling/mixin/data_labeling.py +0 -232
- ads/data_labeling/ner.py +0 -129
- ads/data_labeling/parser/__init__.py +0 -5
- ads/data_labeling/parser/dls_record_parser.py +0 -388
- ads/data_labeling/parser/export_metadata_parser.py +0 -94
- ads/data_labeling/parser/export_record_parser.py +0 -473
- ads/data_labeling/reader/__init__.py +0 -5
- ads/data_labeling/reader/dataset_reader.py +0 -574
- ads/data_labeling/reader/dls_record_reader.py +0 -121
- ads/data_labeling/reader/export_record_reader.py +0 -62
- ads/data_labeling/reader/jsonl_reader.py +0 -75
- ads/data_labeling/reader/metadata_reader.py +0 -203
- ads/data_labeling/reader/record_reader.py +0 -263
- ads/data_labeling/record.py +0 -52
- ads/data_labeling/visualizer/__init__.py +0 -5
- ads/data_labeling/visualizer/image_visualizer.py +0 -525
- ads/data_labeling/visualizer/text_visualizer.py +0 -357
- ads/database/__init__.py +0 -5
- ads/database/connection.py +0 -338
- ads/dataset/__init__.py +0 -10
- ads/dataset/capabilities.md +0 -51
- ads/dataset/classification_dataset.py +0 -339
- ads/dataset/correlation.py +0 -226
- ads/dataset/correlation_plot.py +0 -563
- ads/dataset/dask_series.py +0 -173
- ads/dataset/dataframe_transformer.py +0 -110
- ads/dataset/dataset.py +0 -1979
- ads/dataset/dataset_browser.py +0 -360
- ads/dataset/dataset_with_target.py +0 -995
- ads/dataset/exception.py +0 -25
- ads/dataset/factory.py +0 -987
- ads/dataset/feature_engineering_transformer.py +0 -35
- ads/dataset/feature_selection.py +0 -107
- ads/dataset/forecasting_dataset.py +0 -26
- ads/dataset/helper.py +0 -1450
- ads/dataset/label_encoder.py +0 -99
- ads/dataset/mixin/__init__.py +0 -5
- ads/dataset/mixin/dataset_accessor.py +0 -134
- ads/dataset/pipeline.py +0 -58
- ads/dataset/plot.py +0 -710
- ads/dataset/progress.py +0 -86
- ads/dataset/recommendation.py +0 -297
- ads/dataset/recommendation_transformer.py +0 -502
- ads/dataset/regression_dataset.py +0 -14
- ads/dataset/sampled_dataset.py +0 -1050
- ads/dataset/target.py +0 -98
- ads/dataset/timeseries.py +0 -18
- ads/dbmixin/__init__.py +0 -5
- ads/dbmixin/db_pandas_accessor.py +0 -153
- ads/environment/__init__.py +0 -9
- ads/environment/ml_runtime.py +0 -66
- ads/evaluations/README.md +0 -14
- ads/evaluations/__init__.py +0 -109
- ads/evaluations/evaluation_plot.py +0 -983
- ads/evaluations/evaluator.py +0 -1334
- ads/evaluations/statistical_metrics.py +0 -543
- ads/experiments/__init__.py +0 -9
- ads/experiments/capabilities.md +0 -0
- ads/explanations/__init__.py +0 -21
- ads/explanations/base_explainer.py +0 -142
- ads/explanations/capabilities.md +0 -83
- ads/explanations/explainer.py +0 -190
- ads/explanations/mlx_global_explainer.py +0 -1050
- ads/explanations/mlx_interface.py +0 -386
- ads/explanations/mlx_local_explainer.py +0 -287
- ads/explanations/mlx_whatif_explainer.py +0 -201
- ads/feature_engineering/__init__.py +0 -20
- ads/feature_engineering/accessor/__init__.py +0 -5
- ads/feature_engineering/accessor/dataframe_accessor.py +0 -535
- ads/feature_engineering/accessor/mixin/__init__.py +0 -5
- ads/feature_engineering/accessor/mixin/correlation.py +0 -166
- ads/feature_engineering/accessor/mixin/eda_mixin.py +0 -266
- ads/feature_engineering/accessor/mixin/eda_mixin_series.py +0 -85
- ads/feature_engineering/accessor/mixin/feature_types_mixin.py +0 -211
- ads/feature_engineering/accessor/mixin/utils.py +0 -65
- ads/feature_engineering/accessor/series_accessor.py +0 -431
- ads/feature_engineering/adsimage/__init__.py +0 -5
- ads/feature_engineering/adsimage/image.py +0 -192
- ads/feature_engineering/adsimage/image_reader.py +0 -170
- ads/feature_engineering/adsimage/interface/__init__.py +0 -5
- ads/feature_engineering/adsimage/interface/reader.py +0 -19
- ads/feature_engineering/adsstring/__init__.py +0 -7
- ads/feature_engineering/adsstring/oci_language/__init__.py +0 -8
- ads/feature_engineering/adsstring/string/__init__.py +0 -8
- ads/feature_engineering/data_schema.json +0 -57
- ads/feature_engineering/dataset/__init__.py +0 -5
- ads/feature_engineering/dataset/zip_code_data.py +0 -42062
- ads/feature_engineering/exceptions.py +0 -40
- ads/feature_engineering/feature_type/__init__.py +0 -133
- ads/feature_engineering/feature_type/address.py +0 -184
- ads/feature_engineering/feature_type/adsstring/__init__.py +0 -5
- ads/feature_engineering/feature_type/adsstring/common_regex_mixin.py +0 -164
- ads/feature_engineering/feature_type/adsstring/oci_language.py +0 -93
- ads/feature_engineering/feature_type/adsstring/parsers/__init__.py +0 -5
- ads/feature_engineering/feature_type/adsstring/parsers/base.py +0 -47
- ads/feature_engineering/feature_type/adsstring/parsers/nltk_parser.py +0 -96
- ads/feature_engineering/feature_type/adsstring/parsers/spacy_parser.py +0 -221
- ads/feature_engineering/feature_type/adsstring/string.py +0 -258
- ads/feature_engineering/feature_type/base.py +0 -58
- ads/feature_engineering/feature_type/boolean.py +0 -183
- ads/feature_engineering/feature_type/category.py +0 -146
- ads/feature_engineering/feature_type/constant.py +0 -137
- ads/feature_engineering/feature_type/continuous.py +0 -151
- ads/feature_engineering/feature_type/creditcard.py +0 -314
- ads/feature_engineering/feature_type/datetime.py +0 -190
- ads/feature_engineering/feature_type/discrete.py +0 -134
- ads/feature_engineering/feature_type/document.py +0 -43
- ads/feature_engineering/feature_type/gis.py +0 -251
- ads/feature_engineering/feature_type/handler/__init__.py +0 -5
- ads/feature_engineering/feature_type/handler/feature_validator.py +0 -524
- ads/feature_engineering/feature_type/handler/feature_warning.py +0 -319
- ads/feature_engineering/feature_type/handler/warnings.py +0 -128
- ads/feature_engineering/feature_type/integer.py +0 -142
- ads/feature_engineering/feature_type/ip_address.py +0 -144
- ads/feature_engineering/feature_type/ip_address_v4.py +0 -138
- ads/feature_engineering/feature_type/ip_address_v6.py +0 -138
- ads/feature_engineering/feature_type/lat_long.py +0 -256
- ads/feature_engineering/feature_type/object.py +0 -43
- ads/feature_engineering/feature_type/ordinal.py +0 -132
- ads/feature_engineering/feature_type/phone_number.py +0 -135
- ads/feature_engineering/feature_type/string.py +0 -171
- ads/feature_engineering/feature_type/text.py +0 -93
- ads/feature_engineering/feature_type/unknown.py +0 -43
- ads/feature_engineering/feature_type/zip_code.py +0 -164
- ads/feature_engineering/feature_type_manager.py +0 -406
- ads/feature_engineering/schema.py +0 -795
- ads/feature_engineering/utils.py +0 -245
- ads/feature_store/.readthedocs.yaml +0 -19
- ads/feature_store/README.md +0 -65
- ads/feature_store/__init__.py +0 -9
- ads/feature_store/common/__init__.py +0 -0
- ads/feature_store/common/enums.py +0 -339
- ads/feature_store/common/exceptions.py +0 -18
- ads/feature_store/common/spark_session_singleton.py +0 -125
- ads/feature_store/common/utils/__init__.py +0 -0
- ads/feature_store/common/utils/base64_encoder_decoder.py +0 -72
- ads/feature_store/common/utils/feature_schema_mapper.py +0 -283
- ads/feature_store/common/utils/transformation_utils.py +0 -82
- ads/feature_store/common/utils/utility.py +0 -403
- ads/feature_store/data_validation/__init__.py +0 -0
- ads/feature_store/data_validation/great_expectation.py +0 -129
- ads/feature_store/dataset.py +0 -1230
- ads/feature_store/dataset_job.py +0 -530
- ads/feature_store/docs/Dockerfile +0 -7
- ads/feature_store/docs/Makefile +0 -44
- ads/feature_store/docs/conf.py +0 -28
- ads/feature_store/docs/requirements.txt +0 -14
- ads/feature_store/docs/source/ads.feature_store.query.rst +0 -20
- ads/feature_store/docs/source/cicd.rst +0 -137
- ads/feature_store/docs/source/conf.py +0 -86
- ads/feature_store/docs/source/data_versioning.rst +0 -33
- ads/feature_store/docs/source/dataset.rst +0 -388
- ads/feature_store/docs/source/dataset_job.rst +0 -27
- ads/feature_store/docs/source/demo.rst +0 -70
- ads/feature_store/docs/source/entity.rst +0 -78
- ads/feature_store/docs/source/feature_group.rst +0 -624
- ads/feature_store/docs/source/feature_group_job.rst +0 -29
- ads/feature_store/docs/source/feature_store.rst +0 -122
- ads/feature_store/docs/source/feature_store_class.rst +0 -123
- ads/feature_store/docs/source/feature_validation.rst +0 -66
- ads/feature_store/docs/source/figures/cicd.png +0 -0
- ads/feature_store/docs/source/figures/data_validation.png +0 -0
- ads/feature_store/docs/source/figures/data_versioning.png +0 -0
- ads/feature_store/docs/source/figures/dataset.gif +0 -0
- ads/feature_store/docs/source/figures/dataset.png +0 -0
- ads/feature_store/docs/source/figures/dataset_lineage.png +0 -0
- ads/feature_store/docs/source/figures/dataset_statistics.png +0 -0
- ads/feature_store/docs/source/figures/dataset_statistics_viz.png +0 -0
- ads/feature_store/docs/source/figures/dataset_validation_results.png +0 -0
- ads/feature_store/docs/source/figures/dataset_validation_summary.png +0 -0
- ads/feature_store/docs/source/figures/drift_monitoring.png +0 -0
- ads/feature_store/docs/source/figures/entity.png +0 -0
- ads/feature_store/docs/source/figures/feature_group.png +0 -0
- ads/feature_store/docs/source/figures/feature_group_lineage.png +0 -0
- ads/feature_store/docs/source/figures/feature_group_statistics_viz.png +0 -0
- ads/feature_store/docs/source/figures/feature_store_deployment.png +0 -0
- ads/feature_store/docs/source/figures/feature_store_overview.png +0 -0
- ads/feature_store/docs/source/figures/featuregroup.gif +0 -0
- ads/feature_store/docs/source/figures/lineage_d1.png +0 -0
- ads/feature_store/docs/source/figures/lineage_d2.png +0 -0
- ads/feature_store/docs/source/figures/lineage_fg.png +0 -0
- ads/feature_store/docs/source/figures/logo-dark-mode.png +0 -0
- ads/feature_store/docs/source/figures/logo-light-mode.png +0 -0
- ads/feature_store/docs/source/figures/overview.png +0 -0
- ads/feature_store/docs/source/figures/resource_manager.png +0 -0
- ads/feature_store/docs/source/figures/resource_manager_feature_store_stack.png +0 -0
- ads/feature_store/docs/source/figures/resource_manager_home.png +0 -0
- ads/feature_store/docs/source/figures/stats_1.png +0 -0
- ads/feature_store/docs/source/figures/stats_2.png +0 -0
- ads/feature_store/docs/source/figures/stats_d.png +0 -0
- ads/feature_store/docs/source/figures/stats_fg.png +0 -0
- ads/feature_store/docs/source/figures/transformation.png +0 -0
- ads/feature_store/docs/source/figures/transformations.gif +0 -0
- ads/feature_store/docs/source/figures/validation.png +0 -0
- ads/feature_store/docs/source/figures/validation_fg.png +0 -0
- ads/feature_store/docs/source/figures/validation_results.png +0 -0
- ads/feature_store/docs/source/figures/validation_summary.png +0 -0
- ads/feature_store/docs/source/index.rst +0 -81
- ads/feature_store/docs/source/module.rst +0 -8
- ads/feature_store/docs/source/notebook.rst +0 -94
- ads/feature_store/docs/source/overview.rst +0 -47
- ads/feature_store/docs/source/quickstart.rst +0 -176
- ads/feature_store/docs/source/release_notes.rst +0 -194
- ads/feature_store/docs/source/setup_feature_store.rst +0 -81
- ads/feature_store/docs/source/statistics.rst +0 -58
- ads/feature_store/docs/source/transformation.rst +0 -199
- ads/feature_store/docs/source/ui.rst +0 -65
- ads/feature_store/docs/source/user_guides.setup.feature_store_operator.rst +0 -66
- ads/feature_store/docs/source/user_guides.setup.helm_chart.rst +0 -192
- ads/feature_store/docs/source/user_guides.setup.terraform.rst +0 -338
- ads/feature_store/entity.py +0 -718
- ads/feature_store/execution_strategy/__init__.py +0 -0
- ads/feature_store/execution_strategy/delta_lake/__init__.py +0 -0
- ads/feature_store/execution_strategy/delta_lake/delta_lake_service.py +0 -375
- ads/feature_store/execution_strategy/engine/__init__.py +0 -0
- ads/feature_store/execution_strategy/engine/spark_engine.py +0 -316
- ads/feature_store/execution_strategy/execution_strategy.py +0 -113
- ads/feature_store/execution_strategy/execution_strategy_provider.py +0 -47
- ads/feature_store/execution_strategy/spark/__init__.py +0 -0
- ads/feature_store/execution_strategy/spark/spark_execution.py +0 -618
- ads/feature_store/feature.py +0 -192
- ads/feature_store/feature_group.py +0 -1494
- ads/feature_store/feature_group_expectation.py +0 -346
- ads/feature_store/feature_group_job.py +0 -602
- ads/feature_store/feature_lineage/__init__.py +0 -0
- ads/feature_store/feature_lineage/graphviz_service.py +0 -180
- ads/feature_store/feature_option_details.py +0 -50
- ads/feature_store/feature_statistics/__init__.py +0 -0
- ads/feature_store/feature_statistics/statistics_service.py +0 -99
- ads/feature_store/feature_store.py +0 -699
- ads/feature_store/feature_store_registrar.py +0 -518
- ads/feature_store/input_feature_detail.py +0 -149
- ads/feature_store/mixin/__init__.py +0 -4
- ads/feature_store/mixin/oci_feature_store.py +0 -145
- ads/feature_store/model_details.py +0 -73
- ads/feature_store/query/__init__.py +0 -0
- ads/feature_store/query/filter.py +0 -266
- ads/feature_store/query/generator/__init__.py +0 -0
- ads/feature_store/query/generator/query_generator.py +0 -298
- ads/feature_store/query/join.py +0 -161
- ads/feature_store/query/query.py +0 -403
- ads/feature_store/query/validator/__init__.py +0 -0
- ads/feature_store/query/validator/query_validator.py +0 -57
- ads/feature_store/response/__init__.py +0 -0
- ads/feature_store/response/response_builder.py +0 -68
- ads/feature_store/service/__init__.py +0 -0
- ads/feature_store/service/oci_dataset.py +0 -139
- ads/feature_store/service/oci_dataset_job.py +0 -199
- ads/feature_store/service/oci_entity.py +0 -125
- ads/feature_store/service/oci_feature_group.py +0 -164
- ads/feature_store/service/oci_feature_group_job.py +0 -214
- ads/feature_store/service/oci_feature_store.py +0 -182
- ads/feature_store/service/oci_lineage.py +0 -87
- ads/feature_store/service/oci_transformation.py +0 -104
- ads/feature_store/statistics/__init__.py +0 -0
- ads/feature_store/statistics/abs_feature_value.py +0 -49
- ads/feature_store/statistics/charts/__init__.py +0 -0
- ads/feature_store/statistics/charts/abstract_feature_plot.py +0 -37
- ads/feature_store/statistics/charts/box_plot.py +0 -148
- ads/feature_store/statistics/charts/frequency_distribution.py +0 -65
- ads/feature_store/statistics/charts/probability_distribution.py +0 -68
- ads/feature_store/statistics/charts/top_k_frequent_elements.py +0 -98
- ads/feature_store/statistics/feature_stat.py +0 -126
- ads/feature_store/statistics/generic_feature_value.py +0 -33
- ads/feature_store/statistics/statistics.py +0 -41
- ads/feature_store/statistics_config.py +0 -101
- ads/feature_store/templates/feature_store_template.yaml +0 -45
- ads/feature_store/transformation.py +0 -499
- ads/feature_store/validation_output.py +0 -57
- ads/hpo/__init__.py +0 -9
- ads/hpo/_imports.py +0 -91
- ads/hpo/ads_search_space.py +0 -439
- ads/hpo/distributions.py +0 -325
- ads/hpo/objective.py +0 -280
- ads/hpo/search_cv.py +0 -1657
- ads/hpo/stopping_criterion.py +0 -75
- ads/hpo/tuner_artifact.py +0 -413
- ads/hpo/utils.py +0 -91
- ads/hpo/validation.py +0 -140
- ads/hpo/visualization/__init__.py +0 -5
- ads/hpo/visualization/_contour.py +0 -23
- ads/hpo/visualization/_edf.py +0 -20
- ads/hpo/visualization/_intermediate_values.py +0 -21
- ads/hpo/visualization/_optimization_history.py +0 -25
- ads/hpo/visualization/_parallel_coordinate.py +0 -169
- ads/hpo/visualization/_param_importances.py +0 -26
- ads/jobs/__init__.py +0 -53
- ads/jobs/ads_job.py +0 -663
- ads/jobs/builders/__init__.py +0 -5
- ads/jobs/builders/base.py +0 -156
- ads/jobs/builders/infrastructure/__init__.py +0 -6
- ads/jobs/builders/infrastructure/base.py +0 -165
- ads/jobs/builders/infrastructure/dataflow.py +0 -1252
- ads/jobs/builders/infrastructure/dsc_job.py +0 -1894
- ads/jobs/builders/infrastructure/dsc_job_runtime.py +0 -1233
- ads/jobs/builders/infrastructure/utils.py +0 -65
- ads/jobs/builders/runtimes/__init__.py +0 -5
- ads/jobs/builders/runtimes/artifact.py +0 -338
- ads/jobs/builders/runtimes/base.py +0 -325
- ads/jobs/builders/runtimes/container_runtime.py +0 -242
- ads/jobs/builders/runtimes/python_runtime.py +0 -1016
- ads/jobs/builders/runtimes/pytorch_runtime.py +0 -204
- ads/jobs/cli.py +0 -104
- ads/jobs/env_var_parser.py +0 -131
- ads/jobs/extension.py +0 -160
- ads/jobs/schema/__init__.py +0 -5
- ads/jobs/schema/infrastructure_schema.json +0 -116
- ads/jobs/schema/job_schema.json +0 -42
- ads/jobs/schema/runtime_schema.json +0 -183
- ads/jobs/schema/validator.py +0 -141
- ads/jobs/serializer.py +0 -296
- ads/jobs/templates/__init__.py +0 -5
- ads/jobs/templates/container.py +0 -6
- ads/jobs/templates/driver_notebook.py +0 -177
- ads/jobs/templates/driver_oci.py +0 -500
- ads/jobs/templates/driver_python.py +0 -48
- ads/jobs/templates/driver_pytorch.py +0 -852
- ads/jobs/templates/driver_utils.py +0 -615
- ads/jobs/templates/hostname_from_env.c +0 -55
- ads/jobs/templates/oci_metrics.py +0 -181
- ads/jobs/utils.py +0 -104
- ads/llm/__init__.py +0 -28
- ads/llm/autogen/__init__.py +0 -2
- ads/llm/autogen/constants.py +0 -15
- ads/llm/autogen/reports/__init__.py +0 -2
- ads/llm/autogen/reports/base.py +0 -67
- ads/llm/autogen/reports/data.py +0 -103
- ads/llm/autogen/reports/session.py +0 -526
- ads/llm/autogen/reports/templates/chat_box.html +0 -13
- ads/llm/autogen/reports/templates/chat_box_lt.html +0 -5
- ads/llm/autogen/reports/templates/chat_box_rt.html +0 -6
- ads/llm/autogen/reports/utils.py +0 -56
- ads/llm/autogen/v02/__init__.py +0 -4
- ads/llm/autogen/v02/client.py +0 -295
- ads/llm/autogen/v02/log_handlers/__init__.py +0 -2
- ads/llm/autogen/v02/log_handlers/oci_file_handler.py +0 -83
- ads/llm/autogen/v02/loggers/__init__.py +0 -6
- ads/llm/autogen/v02/loggers/metric_logger.py +0 -320
- ads/llm/autogen/v02/loggers/session_logger.py +0 -580
- ads/llm/autogen/v02/loggers/utils.py +0 -86
- ads/llm/autogen/v02/runtime_logging.py +0 -163
- ads/llm/chain.py +0 -268
- ads/llm/chat_template.py +0 -31
- ads/llm/deploy.py +0 -63
- ads/llm/guardrails/__init__.py +0 -5
- ads/llm/guardrails/base.py +0 -442
- ads/llm/guardrails/huggingface.py +0 -44
- ads/llm/langchain/__init__.py +0 -5
- ads/llm/langchain/plugins/__init__.py +0 -5
- ads/llm/langchain/plugins/chat_models/__init__.py +0 -5
- ads/llm/langchain/plugins/chat_models/oci_data_science.py +0 -1027
- ads/llm/langchain/plugins/embeddings/__init__.py +0 -4
- ads/llm/langchain/plugins/embeddings/oci_data_science_model_deployment_endpoint.py +0 -184
- ads/llm/langchain/plugins/llms/__init__.py +0 -5
- ads/llm/langchain/plugins/llms/oci_data_science_model_deployment_endpoint.py +0 -979
- ads/llm/requirements.txt +0 -3
- ads/llm/serialize.py +0 -219
- ads/llm/serializers/__init__.py +0 -0
- ads/llm/serializers/retrieval_qa.py +0 -153
- ads/llm/serializers/runnable_parallel.py +0 -27
- ads/llm/templates/score_chain.jinja2 +0 -155
- ads/llm/templates/tool_chat_template_hermes.jinja +0 -130
- ads/llm/templates/tool_chat_template_mistral_parallel.jinja +0 -94
- ads/model/__init__.py +0 -52
- ads/model/artifact.py +0 -573
- ads/model/artifact_downloader.py +0 -254
- ads/model/artifact_uploader.py +0 -267
- ads/model/base_properties.py +0 -238
- ads/model/common/.model-ignore +0 -66
- ads/model/common/__init__.py +0 -5
- ads/model/common/utils.py +0 -142
- ads/model/datascience_model.py +0 -2635
- ads/model/deployment/__init__.py +0 -20
- ads/model/deployment/common/__init__.py +0 -5
- ads/model/deployment/common/utils.py +0 -308
- ads/model/deployment/model_deployer.py +0 -466
- ads/model/deployment/model_deployment.py +0 -1846
- ads/model/deployment/model_deployment_infrastructure.py +0 -671
- ads/model/deployment/model_deployment_properties.py +0 -493
- ads/model/deployment/model_deployment_runtime.py +0 -838
- ads/model/extractor/__init__.py +0 -5
- ads/model/extractor/automl_extractor.py +0 -74
- ads/model/extractor/embedding_onnx_extractor.py +0 -80
- ads/model/extractor/huggingface_extractor.py +0 -88
- ads/model/extractor/keras_extractor.py +0 -84
- ads/model/extractor/lightgbm_extractor.py +0 -93
- ads/model/extractor/model_info_extractor.py +0 -114
- ads/model/extractor/model_info_extractor_factory.py +0 -105
- ads/model/extractor/pytorch_extractor.py +0 -87
- ads/model/extractor/sklearn_extractor.py +0 -112
- ads/model/extractor/spark_extractor.py +0 -89
- ads/model/extractor/tensorflow_extractor.py +0 -85
- ads/model/extractor/xgboost_extractor.py +0 -94
- ads/model/framework/__init__.py +0 -5
- ads/model/framework/automl_model.py +0 -178
- ads/model/framework/embedding_onnx_model.py +0 -438
- ads/model/framework/huggingface_model.py +0 -399
- ads/model/framework/lightgbm_model.py +0 -266
- ads/model/framework/pytorch_model.py +0 -266
- ads/model/framework/sklearn_model.py +0 -250
- ads/model/framework/spark_model.py +0 -326
- ads/model/framework/tensorflow_model.py +0 -254
- ads/model/framework/xgboost_model.py +0 -258
- ads/model/generic_model.py +0 -3518
- ads/model/model_artifact_boilerplate/README.md +0 -381
- ads/model/model_artifact_boilerplate/__init__.py +0 -5
- ads/model/model_artifact_boilerplate/artifact_introspection_test/__init__.py +0 -5
- ads/model/model_artifact_boilerplate/artifact_introspection_test/model_artifact_validate.py +0 -427
- ads/model/model_artifact_boilerplate/artifact_introspection_test/requirements.txt +0 -2
- ads/model/model_artifact_boilerplate/runtime.yaml +0 -7
- ads/model/model_artifact_boilerplate/score.py +0 -61
- ads/model/model_file_description_schema.json +0 -68
- ads/model/model_introspect.py +0 -331
- ads/model/model_metadata.py +0 -1810
- ads/model/model_metadata_mixin.py +0 -460
- ads/model/model_properties.py +0 -63
- ads/model/model_version_set.py +0 -739
- ads/model/runtime/__init__.py +0 -5
- ads/model/runtime/env_info.py +0 -306
- ads/model/runtime/model_deployment_details.py +0 -37
- ads/model/runtime/model_provenance_details.py +0 -58
- ads/model/runtime/runtime_info.py +0 -81
- ads/model/runtime/schemas/inference_env_info_schema.yaml +0 -16
- ads/model/runtime/schemas/model_provenance_schema.yaml +0 -36
- ads/model/runtime/schemas/training_env_info_schema.yaml +0 -16
- ads/model/runtime/utils.py +0 -201
- ads/model/serde/__init__.py +0 -5
- ads/model/serde/common.py +0 -40
- ads/model/serde/model_input.py +0 -547
- ads/model/serde/model_serializer.py +0 -1184
- ads/model/service/__init__.py +0 -5
- ads/model/service/oci_datascience_model.py +0 -1076
- ads/model/service/oci_datascience_model_deployment.py +0 -500
- ads/model/service/oci_datascience_model_version_set.py +0 -176
- ads/model/transformer/__init__.py +0 -5
- ads/model/transformer/onnx_transformer.py +0 -324
- ads/mysqldb/__init__.py +0 -5
- ads/mysqldb/mysql_db.py +0 -227
- ads/opctl/__init__.py +0 -18
- ads/opctl/anomaly_detection.py +0 -11
- ads/opctl/backend/__init__.py +0 -5
- ads/opctl/backend/ads_dataflow.py +0 -353
- ads/opctl/backend/ads_ml_job.py +0 -710
- ads/opctl/backend/ads_ml_pipeline.py +0 -164
- ads/opctl/backend/ads_model_deployment.py +0 -209
- ads/opctl/backend/base.py +0 -146
- ads/opctl/backend/local.py +0 -1053
- ads/opctl/backend/marketplace/__init__.py +0 -9
- ads/opctl/backend/marketplace/helm_helper.py +0 -173
- ads/opctl/backend/marketplace/local_marketplace.py +0 -271
- ads/opctl/backend/marketplace/marketplace_backend_runner.py +0 -71
- ads/opctl/backend/marketplace/marketplace_operator_interface.py +0 -44
- ads/opctl/backend/marketplace/marketplace_operator_runner.py +0 -24
- ads/opctl/backend/marketplace/marketplace_utils.py +0 -212
- ads/opctl/backend/marketplace/models/__init__.py +0 -5
- ads/opctl/backend/marketplace/models/bearer_token.py +0 -94
- ads/opctl/backend/marketplace/models/marketplace_type.py +0 -70
- ads/opctl/backend/marketplace/models/ocir_details.py +0 -56
- ads/opctl/backend/marketplace/prerequisite_checker.py +0 -238
- ads/opctl/cli.py +0 -707
- ads/opctl/cmds.py +0 -869
- ads/opctl/conda/__init__.py +0 -5
- ads/opctl/conda/cli.py +0 -193
- ads/opctl/conda/cmds.py +0 -749
- ads/opctl/conda/config.yaml +0 -34
- ads/opctl/conda/manifest_template.yaml +0 -13
- ads/opctl/conda/multipart_uploader.py +0 -188
- ads/opctl/conda/pack.py +0 -89
- ads/opctl/config/__init__.py +0 -5
- ads/opctl/config/base.py +0 -57
- ads/opctl/config/diagnostics/__init__.py +0 -5
- ads/opctl/config/diagnostics/distributed/default_requirements_config.yaml +0 -62
- ads/opctl/config/merger.py +0 -255
- ads/opctl/config/resolver.py +0 -297
- ads/opctl/config/utils.py +0 -79
- ads/opctl/config/validator.py +0 -17
- ads/opctl/config/versioner.py +0 -68
- ads/opctl/config/yaml_parsers/__init__.py +0 -7
- ads/opctl/config/yaml_parsers/base.py +0 -58
- ads/opctl/config/yaml_parsers/distributed/__init__.py +0 -7
- ads/opctl/config/yaml_parsers/distributed/yaml_parser.py +0 -201
- ads/opctl/constants.py +0 -66
- ads/opctl/decorator/__init__.py +0 -5
- ads/opctl/decorator/common.py +0 -129
- ads/opctl/diagnostics/__init__.py +0 -5
- ads/opctl/diagnostics/__main__.py +0 -25
- ads/opctl/diagnostics/check_distributed_job_requirements.py +0 -212
- ads/opctl/diagnostics/check_requirements.py +0 -144
- ads/opctl/diagnostics/requirement_exception.py +0 -9
- ads/opctl/distributed/README.md +0 -109
- ads/opctl/distributed/__init__.py +0 -5
- ads/opctl/distributed/certificates.py +0 -32
- ads/opctl/distributed/cli.py +0 -207
- ads/opctl/distributed/cmds.py +0 -731
- ads/opctl/distributed/common/__init__.py +0 -5
- ads/opctl/distributed/common/abstract_cluster_provider.py +0 -449
- ads/opctl/distributed/common/abstract_framework_spec_builder.py +0 -88
- ads/opctl/distributed/common/cluster_config_helper.py +0 -103
- ads/opctl/distributed/common/cluster_provider_factory.py +0 -21
- ads/opctl/distributed/common/cluster_runner.py +0 -54
- ads/opctl/distributed/common/framework_factory.py +0 -29
- ads/opctl/docker/Dockerfile.job +0 -103
- ads/opctl/docker/Dockerfile.job.arm +0 -107
- ads/opctl/docker/Dockerfile.job.gpu +0 -175
- ads/opctl/docker/base-env.yaml +0 -13
- ads/opctl/docker/cuda.repo +0 -6
- ads/opctl/docker/operator/.dockerignore +0 -0
- ads/opctl/docker/operator/Dockerfile +0 -41
- ads/opctl/docker/operator/Dockerfile.gpu +0 -85
- ads/opctl/docker/operator/cuda.repo +0 -6
- ads/opctl/docker/operator/environment.yaml +0 -8
- ads/opctl/forecast.py +0 -11
- ads/opctl/index.yaml +0 -3
- ads/opctl/model/__init__.py +0 -5
- ads/opctl/model/cli.py +0 -65
- ads/opctl/model/cmds.py +0 -73
- ads/opctl/operator/README.md +0 -4
- ads/opctl/operator/__init__.py +0 -31
- ads/opctl/operator/cli.py +0 -344
- ads/opctl/operator/cmd.py +0 -596
- ads/opctl/operator/common/__init__.py +0 -5
- ads/opctl/operator/common/backend_factory.py +0 -460
- ads/opctl/operator/common/const.py +0 -27
- ads/opctl/operator/common/data/synthetic.csv +0 -16001
- ads/opctl/operator/common/dictionary_merger.py +0 -148
- ads/opctl/operator/common/errors.py +0 -42
- ads/opctl/operator/common/operator_config.py +0 -99
- ads/opctl/operator/common/operator_loader.py +0 -811
- ads/opctl/operator/common/operator_schema.yaml +0 -130
- ads/opctl/operator/common/operator_yaml_generator.py +0 -152
- ads/opctl/operator/common/utils.py +0 -208
- ads/opctl/operator/lowcode/__init__.py +0 -5
- ads/opctl/operator/lowcode/anomaly/MLoperator +0 -16
- ads/opctl/operator/lowcode/anomaly/README.md +0 -207
- ads/opctl/operator/lowcode/anomaly/__init__.py +0 -5
- ads/opctl/operator/lowcode/anomaly/__main__.py +0 -103
- ads/opctl/operator/lowcode/anomaly/cmd.py +0 -35
- ads/opctl/operator/lowcode/anomaly/const.py +0 -167
- ads/opctl/operator/lowcode/anomaly/environment.yaml +0 -10
- ads/opctl/operator/lowcode/anomaly/model/__init__.py +0 -5
- ads/opctl/operator/lowcode/anomaly/model/anomaly_dataset.py +0 -146
- ads/opctl/operator/lowcode/anomaly/model/anomaly_merlion.py +0 -162
- ads/opctl/operator/lowcode/anomaly/model/automlx.py +0 -99
- ads/opctl/operator/lowcode/anomaly/model/autots.py +0 -115
- ads/opctl/operator/lowcode/anomaly/model/base_model.py +0 -404
- ads/opctl/operator/lowcode/anomaly/model/factory.py +0 -110
- ads/opctl/operator/lowcode/anomaly/model/isolationforest.py +0 -78
- ads/opctl/operator/lowcode/anomaly/model/oneclasssvm.py +0 -78
- ads/opctl/operator/lowcode/anomaly/model/randomcutforest.py +0 -120
- ads/opctl/operator/lowcode/anomaly/model/tods.py +0 -119
- ads/opctl/operator/lowcode/anomaly/operator_config.py +0 -127
- ads/opctl/operator/lowcode/anomaly/schema.yaml +0 -401
- ads/opctl/operator/lowcode/anomaly/utils.py +0 -88
- ads/opctl/operator/lowcode/common/__init__.py +0 -5
- ads/opctl/operator/lowcode/common/const.py +0 -10
- ads/opctl/operator/lowcode/common/data.py +0 -116
- ads/opctl/operator/lowcode/common/errors.py +0 -47
- ads/opctl/operator/lowcode/common/transformations.py +0 -296
- ads/opctl/operator/lowcode/common/utils.py +0 -293
- ads/opctl/operator/lowcode/feature_store_marketplace/MLoperator +0 -13
- ads/opctl/operator/lowcode/feature_store_marketplace/README.md +0 -30
- ads/opctl/operator/lowcode/feature_store_marketplace/__init__.py +0 -5
- ads/opctl/operator/lowcode/feature_store_marketplace/__main__.py +0 -116
- ads/opctl/operator/lowcode/feature_store_marketplace/cmd.py +0 -85
- ads/opctl/operator/lowcode/feature_store_marketplace/const.py +0 -15
- ads/opctl/operator/lowcode/feature_store_marketplace/environment.yaml +0 -0
- ads/opctl/operator/lowcode/feature_store_marketplace/models/__init__.py +0 -4
- ads/opctl/operator/lowcode/feature_store_marketplace/models/apigw_config.py +0 -32
- ads/opctl/operator/lowcode/feature_store_marketplace/models/db_config.py +0 -43
- ads/opctl/operator/lowcode/feature_store_marketplace/models/mysql_config.py +0 -120
- ads/opctl/operator/lowcode/feature_store_marketplace/models/serializable_yaml_model.py +0 -34
- ads/opctl/operator/lowcode/feature_store_marketplace/operator_utils.py +0 -386
- ads/opctl/operator/lowcode/feature_store_marketplace/schema.yaml +0 -160
- ads/opctl/operator/lowcode/forecast/MLoperator +0 -25
- ads/opctl/operator/lowcode/forecast/README.md +0 -209
- ads/opctl/operator/lowcode/forecast/__init__.py +0 -5
- ads/opctl/operator/lowcode/forecast/__main__.py +0 -89
- ads/opctl/operator/lowcode/forecast/cmd.py +0 -40
- ads/opctl/operator/lowcode/forecast/const.py +0 -92
- ads/opctl/operator/lowcode/forecast/environment.yaml +0 -20
- ads/opctl/operator/lowcode/forecast/errors.py +0 -26
- ads/opctl/operator/lowcode/forecast/model/__init__.py +0 -5
- ads/opctl/operator/lowcode/forecast/model/arima.py +0 -279
- ads/opctl/operator/lowcode/forecast/model/automlx.py +0 -542
- ads/opctl/operator/lowcode/forecast/model/autots.py +0 -312
- ads/opctl/operator/lowcode/forecast/model/base_model.py +0 -863
- ads/opctl/operator/lowcode/forecast/model/factory.py +0 -106
- ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py +0 -492
- ads/opctl/operator/lowcode/forecast/model/ml_forecast.py +0 -243
- ads/opctl/operator/lowcode/forecast/model/neuralprophet.py +0 -486
- ads/opctl/operator/lowcode/forecast/model/prophet.py +0 -445
- ads/opctl/operator/lowcode/forecast/model_evaluator.py +0 -244
- ads/opctl/operator/lowcode/forecast/operator_config.py +0 -234
- ads/opctl/operator/lowcode/forecast/schema.yaml +0 -506
- ads/opctl/operator/lowcode/forecast/utils.py +0 -413
- ads/opctl/operator/lowcode/forecast/whatifserve/__init__.py +0 -7
- ads/opctl/operator/lowcode/forecast/whatifserve/deployment_manager.py +0 -285
- ads/opctl/operator/lowcode/forecast/whatifserve/score.py +0 -246
- ads/opctl/operator/lowcode/pii/MLoperator +0 -17
- ads/opctl/operator/lowcode/pii/README.md +0 -208
- ads/opctl/operator/lowcode/pii/__init__.py +0 -5
- ads/opctl/operator/lowcode/pii/__main__.py +0 -78
- ads/opctl/operator/lowcode/pii/cmd.py +0 -39
- ads/opctl/operator/lowcode/pii/constant.py +0 -84
- ads/opctl/operator/lowcode/pii/environment.yaml +0 -17
- ads/opctl/operator/lowcode/pii/errors.py +0 -27
- ads/opctl/operator/lowcode/pii/model/__init__.py +0 -5
- ads/opctl/operator/lowcode/pii/model/factory.py +0 -82
- ads/opctl/operator/lowcode/pii/model/guardrails.py +0 -167
- ads/opctl/operator/lowcode/pii/model/pii.py +0 -145
- ads/opctl/operator/lowcode/pii/model/processor/__init__.py +0 -34
- ads/opctl/operator/lowcode/pii/model/processor/email_replacer.py +0 -34
- ads/opctl/operator/lowcode/pii/model/processor/mbi_replacer.py +0 -35
- ads/opctl/operator/lowcode/pii/model/processor/name_replacer.py +0 -225
- ads/opctl/operator/lowcode/pii/model/processor/number_replacer.py +0 -73
- ads/opctl/operator/lowcode/pii/model/processor/remover.py +0 -26
- ads/opctl/operator/lowcode/pii/model/report.py +0 -487
- ads/opctl/operator/lowcode/pii/operator_config.py +0 -95
- ads/opctl/operator/lowcode/pii/schema.yaml +0 -108
- ads/opctl/operator/lowcode/pii/utils.py +0 -43
- ads/opctl/operator/lowcode/recommender/MLoperator +0 -16
- ads/opctl/operator/lowcode/recommender/README.md +0 -206
- ads/opctl/operator/lowcode/recommender/__init__.py +0 -5
- ads/opctl/operator/lowcode/recommender/__main__.py +0 -82
- ads/opctl/operator/lowcode/recommender/cmd.py +0 -33
- ads/opctl/operator/lowcode/recommender/constant.py +0 -30
- ads/opctl/operator/lowcode/recommender/environment.yaml +0 -11
- ads/opctl/operator/lowcode/recommender/model/base_model.py +0 -212
- ads/opctl/operator/lowcode/recommender/model/factory.py +0 -56
- ads/opctl/operator/lowcode/recommender/model/recommender_dataset.py +0 -25
- ads/opctl/operator/lowcode/recommender/model/svd.py +0 -106
- ads/opctl/operator/lowcode/recommender/operator_config.py +0 -81
- ads/opctl/operator/lowcode/recommender/schema.yaml +0 -265
- ads/opctl/operator/lowcode/recommender/utils.py +0 -13
- ads/opctl/operator/runtime/__init__.py +0 -5
- ads/opctl/operator/runtime/const.py +0 -17
- ads/opctl/operator/runtime/container_runtime_schema.yaml +0 -50
- ads/opctl/operator/runtime/marketplace_runtime.py +0 -50
- ads/opctl/operator/runtime/python_marketplace_runtime_schema.yaml +0 -21
- ads/opctl/operator/runtime/python_runtime_schema.yaml +0 -21
- ads/opctl/operator/runtime/runtime.py +0 -115
- ads/opctl/schema.yaml.yml +0 -36
- ads/opctl/script.py +0 -40
- ads/opctl/spark/__init__.py +0 -5
- ads/opctl/spark/cli.py +0 -43
- ads/opctl/spark/cmds.py +0 -147
- ads/opctl/templates/diagnostic_report_template.jinja2 +0 -102
- ads/opctl/utils.py +0 -344
- ads/oracledb/__init__.py +0 -5
- ads/oracledb/oracle_db.py +0 -346
- ads/pipeline/__init__.py +0 -39
- ads/pipeline/ads_pipeline.py +0 -2279
- ads/pipeline/ads_pipeline_run.py +0 -772
- ads/pipeline/ads_pipeline_step.py +0 -605
- ads/pipeline/builders/__init__.py +0 -5
- ads/pipeline/builders/infrastructure/__init__.py +0 -5
- ads/pipeline/builders/infrastructure/custom_script.py +0 -32
- ads/pipeline/cli.py +0 -119
- ads/pipeline/extension.py +0 -291
- ads/pipeline/schema/__init__.py +0 -5
- ads/pipeline/schema/cs_step_schema.json +0 -35
- ads/pipeline/schema/ml_step_schema.json +0 -31
- ads/pipeline/schema/pipeline_schema.json +0 -71
- ads/pipeline/visualizer/__init__.py +0 -5
- ads/pipeline/visualizer/base.py +0 -570
- ads/pipeline/visualizer/graph_renderer.py +0 -272
- ads/pipeline/visualizer/text_renderer.py +0 -84
- ads/secrets/__init__.py +0 -11
- ads/secrets/adb.py +0 -386
- ads/secrets/auth_token.py +0 -86
- ads/secrets/big_data_service.py +0 -365
- ads/secrets/mysqldb.py +0 -149
- ads/secrets/oracledb.py +0 -160
- ads/secrets/secrets.py +0 -407
- ads/telemetry/__init__.py +0 -7
- ads/telemetry/base.py +0 -69
- ads/telemetry/client.py +0 -125
- ads/telemetry/telemetry.py +0 -257
- ads/templates/dataflow_pyspark.jinja2 +0 -13
- ads/templates/dataflow_sparksql.jinja2 +0 -22
- ads/templates/func.jinja2 +0 -20
- ads/templates/schemas/openapi.json +0 -1740
- ads/templates/score-pkl.jinja2 +0 -173
- ads/templates/score.jinja2 +0 -322
- ads/templates/score_embedding_onnx.jinja2 +0 -202
- ads/templates/score_generic.jinja2 +0 -165
- ads/templates/score_huggingface_pipeline.jinja2 +0 -217
- ads/templates/score_lightgbm.jinja2 +0 -185
- ads/templates/score_onnx.jinja2 +0 -407
- ads/templates/score_onnx_new.jinja2 +0 -473
- ads/templates/score_oracle_automl.jinja2 +0 -185
- ads/templates/score_pyspark.jinja2 +0 -154
- ads/templates/score_pytorch.jinja2 +0 -219
- ads/templates/score_scikit-learn.jinja2 +0 -184
- ads/templates/score_tensorflow.jinja2 +0 -184
- ads/templates/score_xgboost.jinja2 +0 -178
- ads/text_dataset/__init__.py +0 -5
- ads/text_dataset/backends.py +0 -211
- ads/text_dataset/dataset.py +0 -445
- ads/text_dataset/extractor.py +0 -207
- ads/text_dataset/options.py +0 -53
- ads/text_dataset/udfs.py +0 -22
- ads/text_dataset/utils.py +0 -49
- ads/type_discovery/__init__.py +0 -9
- ads/type_discovery/abstract_detector.py +0 -21
- ads/type_discovery/constant_detector.py +0 -41
- ads/type_discovery/continuous_detector.py +0 -54
- ads/type_discovery/credit_card_detector.py +0 -99
- ads/type_discovery/datetime_detector.py +0 -92
- ads/type_discovery/discrete_detector.py +0 -118
- ads/type_discovery/document_detector.py +0 -146
- ads/type_discovery/ip_detector.py +0 -68
- ads/type_discovery/latlon_detector.py +0 -90
- ads/type_discovery/phone_number_detector.py +0 -63
- ads/type_discovery/type_discovery_driver.py +0 -87
- ads/type_discovery/typed_feature.py +0 -594
- ads/type_discovery/unknown_detector.py +0 -41
- ads/type_discovery/zipcode_detector.py +0 -48
- ads/vault/__init__.py +0 -7
- ads/vault/vault.py +0 -237
- oracle_ads-2.13.7.dist-info/RECORD +0 -858
- {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/licenses/LICENSE.txt +0 -0
ads/jobs/ads_job.py
DELETED
@@ -1,663 +0,0 @@
|
|
1
|
-
#!/usr/bin/env python
|
2
|
-
# -*- coding: utf-8; -*-
|
3
|
-
|
4
|
-
# Copyright (c) 2021, 2024 Oracle and/or its affiliates.
|
5
|
-
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
|
6
|
-
import inspect
|
7
|
-
import time
|
8
|
-
from typing import List, Union, Dict
|
9
|
-
from urllib.parse import urlparse
|
10
|
-
|
11
|
-
import fsspec
|
12
|
-
import oci
|
13
|
-
import yaml
|
14
|
-
from ads.common.auth import default_signer
|
15
|
-
from ads.common.decorator.utils import class_or_instance_method
|
16
|
-
from ads.jobs.builders.base import Builder
|
17
|
-
from ads.jobs.builders.infrastructure.dataflow import DataFlow, DataFlowRun
|
18
|
-
from ads.jobs.builders.infrastructure.dsc_job import (
|
19
|
-
DataScienceJob,
|
20
|
-
DataScienceJobRun,
|
21
|
-
SLEEP_INTERVAL,
|
22
|
-
)
|
23
|
-
from ads.jobs.builders.runtimes.pytorch_runtime import PyTorchDistributedRuntime
|
24
|
-
from ads.jobs.builders.runtimes.container_runtime import ContainerRuntime
|
25
|
-
from ads.jobs.builders.runtimes.python_runtime import (
|
26
|
-
DataFlowRuntime,
|
27
|
-
GitPythonRuntime,
|
28
|
-
NotebookRuntime,
|
29
|
-
PythonRuntime,
|
30
|
-
Runtime,
|
31
|
-
ScriptRuntime,
|
32
|
-
)
|
33
|
-
|
34
|
-
|
35
|
-
class Job(Builder):
|
36
|
-
"""Represents a Job defined by infrastructure and runtime.
|
37
|
-
|
38
|
-
Examples
|
39
|
-
--------
|
40
|
-
Here is an example for creating and running a job::
|
41
|
-
|
42
|
-
from ads.jobs import Job, DataScienceJob, PythonRuntime
|
43
|
-
|
44
|
-
# Define an OCI Data Science job to run a python script
|
45
|
-
job = (
|
46
|
-
Job(name="<job_name>")
|
47
|
-
.with_infrastructure(
|
48
|
-
DataScienceJob()
|
49
|
-
# Configure logging for getting the job run outputs.
|
50
|
-
.with_log_group_id("<log_group_ocid>")
|
51
|
-
# Log resource will be auto-generated if log ID is not specified.
|
52
|
-
.with_log_id("<log_ocid>")
|
53
|
-
# If you are in an OCI data science notebook session,
|
54
|
-
# the following configurations are not required.
|
55
|
-
# Configurations from the notebook session will be used as defaults.
|
56
|
-
.with_compartment_id("<compartment_ocid>")
|
57
|
-
.with_project_id("<project_ocid>")
|
58
|
-
.with_subnet_id("<subnet_ocid>")
|
59
|
-
.with_shape_name("VM.Standard.E3.Flex")
|
60
|
-
# Shape config details are applicable only for the flexible shapes.
|
61
|
-
.with_shape_config_details(memory_in_gbs=16, ocpus=1)
|
62
|
-
# Minimum/Default block storage size is 50 (GB).
|
63
|
-
.with_block_storage_size(50)
|
64
|
-
)
|
65
|
-
.with_runtime(
|
66
|
-
PythonRuntime()
|
67
|
-
# Specify the service conda environment by slug name.
|
68
|
-
.with_service_conda("pytorch110_p38_cpu_v1")
|
69
|
-
# The job artifact can be a single Python script, a directory or a zip file.
|
70
|
-
.with_source("local/path/to/code_dir")
|
71
|
-
# Environment variable
|
72
|
-
.with_environment_variable(NAME="Welcome to OCI Data Science.")
|
73
|
-
# Command line argument, arg1 --key arg2
|
74
|
-
.with_argument("arg1", key="arg2")
|
75
|
-
# Set the working directory
|
76
|
-
# When using a directory as source, the default working dir is the parent of code_dir.
|
77
|
-
# Working dir should be a relative path beginning from the source directory (code_dir)
|
78
|
-
.with_working_dir("code_dir")
|
79
|
-
# The entrypoint is applicable only to directory or zip file as source
|
80
|
-
# The entrypoint should be a path relative to the working dir.
|
81
|
-
# Here my_script.py is a file in the code_dir/my_package directory
|
82
|
-
.with_entrypoint("my_package/my_script.py")
|
83
|
-
# Add an additional Python path, relative to the working dir (code_dir/other_packages).
|
84
|
-
.with_python_path("other_packages")
|
85
|
-
# Copy files in "code_dir/output" to object storage after job finishes.
|
86
|
-
.with_output("output", "oci://bucket_name@namespace/path/to/dir")
|
87
|
-
# Tags
|
88
|
-
.with_freeform_tag(my_tag="my_value")
|
89
|
-
.with_defined_tag(**{"Operations": {"CostCenter": "42"}})
|
90
|
-
)
|
91
|
-
)
|
92
|
-
# Create and Run the job
|
93
|
-
run = job.create().run()
|
94
|
-
# Stream the job run outputs
|
95
|
-
run.watch()
|
96
|
-
|
97
|
-
If you are in an OCI notebook session and you would like to use the same infrastructure
|
98
|
-
configurations, the infrastructure configuration can be simplified.
|
99
|
-
Here is another example of creating and running a jupyter notebook as a job::
|
100
|
-
|
101
|
-
from ads.jobs import Job, DataScienceJob, NotebookRuntime
|
102
|
-
|
103
|
-
# Define an OCI Data Science job to run a jupyter Python notebook
|
104
|
-
job = (
|
105
|
-
Job(name="<job_name>")
|
106
|
-
.with_infrastructure(
|
107
|
-
# The same configurations as the OCI notebook session will be used.
|
108
|
-
DataScienceJob()
|
109
|
-
.with_log_group_id("<log_group_ocid>")
|
110
|
-
.with_log_id("<log_ocid>")
|
111
|
-
)
|
112
|
-
.with_runtime(
|
113
|
-
NotebookRuntime()
|
114
|
-
.with_notebook("path/to/notebook.ipynb")
|
115
|
-
.with_service_conda(tensorflow28_p38_cpu_v1")
|
116
|
-
# Saves the notebook with outputs to OCI object storage.
|
117
|
-
.with_output("oci://bucket_name@namespace/path/to/dir")
|
118
|
-
)
|
119
|
-
).create()
|
120
|
-
# Run and monitor the job
|
121
|
-
run = job.run().watch()
|
122
|
-
# Download the notebook and outputs to local directory
|
123
|
-
run.download(to_dir="path/to/local/dir/")
|
124
|
-
|
125
|
-
|
126
|
-
See Also
|
127
|
-
--------
|
128
|
-
https://docs.oracle.com/en-us/iaas/tools/ads-sdk/latest/user_guide/jobs/index.html
|
129
|
-
|
130
|
-
"""
|
131
|
-
|
132
|
-
_INFRASTRUCTURE_MAPPING = {
|
133
|
-
**{item().type: item for item in [DataScienceJob]},
|
134
|
-
"dataFlow": DataFlow,
|
135
|
-
}
|
136
|
-
_RUNTIME_MAPPING = {
|
137
|
-
item().type: item
|
138
|
-
for item in [
|
139
|
-
PythonRuntime,
|
140
|
-
GitPythonRuntime,
|
141
|
-
ContainerRuntime,
|
142
|
-
ScriptRuntime,
|
143
|
-
NotebookRuntime,
|
144
|
-
PyTorchDistributedRuntime,
|
145
|
-
DataFlowRuntime,
|
146
|
-
]
|
147
|
-
}
|
148
|
-
|
149
|
-
auth = {}
|
150
|
-
|
151
|
-
@class_or_instance_method
|
152
|
-
def from_datascience_job(cls, job_id) -> "Job":
|
153
|
-
"""Loads a data science job from OCI.
|
154
|
-
|
155
|
-
Parameters
|
156
|
-
----------
|
157
|
-
job_id : str
|
158
|
-
OCID of an existing data science job.
|
159
|
-
|
160
|
-
Returns
|
161
|
-
-------
|
162
|
-
Job
|
163
|
-
A job instance.
|
164
|
-
|
165
|
-
"""
|
166
|
-
dsc_infra = DataScienceJob(**cls.auth).from_id(job_id)
|
167
|
-
job = (
|
168
|
-
Job(name=dsc_infra.name, **cls.auth)
|
169
|
-
.with_infrastructure(dsc_infra)
|
170
|
-
.with_runtime(dsc_infra.runtime)
|
171
|
-
)
|
172
|
-
return job
|
173
|
-
|
174
|
-
@class_or_instance_method
|
175
|
-
def datascience_job(
|
176
|
-
cls, compartment_id: str = None, **kwargs
|
177
|
-
) -> List["DataScienceJob"]:
|
178
|
-
"""Lists the existing data science jobs in the compartment.
|
179
|
-
|
180
|
-
Parameters
|
181
|
-
----------
|
182
|
-
compartment_id : str
|
183
|
-
The compartment ID for listing the jobs.
|
184
|
-
This is optional if running in an OCI notebook session.
|
185
|
-
The jobs in the same compartment of the notebook session will be returned.
|
186
|
-
|
187
|
-
Returns
|
188
|
-
-------
|
189
|
-
list
|
190
|
-
A list of Job objects.
|
191
|
-
"""
|
192
|
-
return [
|
193
|
-
Job(name=dsc_job.name, **cls.auth)
|
194
|
-
.with_infrastructure(dsc_job)
|
195
|
-
.with_runtime(dsc_job.runtime)
|
196
|
-
for dsc_job in DataScienceJob(**cls.auth).list_jobs(
|
197
|
-
compartment_id, **kwargs
|
198
|
-
)
|
199
|
-
]
|
200
|
-
|
201
|
-
@staticmethod
|
202
|
-
def from_dataflow_job(job_id: str) -> "Job":
|
203
|
-
"""
|
204
|
-
Create a Data Flow job given a job id.
|
205
|
-
|
206
|
-
Parameters
|
207
|
-
----------
|
208
|
-
job_id: str
|
209
|
-
id of the job
|
210
|
-
Returns
|
211
|
-
-------
|
212
|
-
Job
|
213
|
-
a Job instance
|
214
|
-
"""
|
215
|
-
df = DataFlow.from_id(job_id)
|
216
|
-
job = Job(name=df.name).with_infrastructure(df).with_runtime(df.runtime)
|
217
|
-
return job
|
218
|
-
|
219
|
-
@staticmethod
|
220
|
-
def dataflow_job(compartment_id: str = None, **kwargs) -> List["Job"]:
|
221
|
-
"""
|
222
|
-
List data flow jobs under a given compartment.
|
223
|
-
|
224
|
-
Parameters
|
225
|
-
----------
|
226
|
-
compartment_id: str
|
227
|
-
compartment id
|
228
|
-
kwargs
|
229
|
-
additional keyword arguments
|
230
|
-
|
231
|
-
Returns
|
232
|
-
-------
|
233
|
-
List[Job]
|
234
|
-
list of Job instances
|
235
|
-
"""
|
236
|
-
return [
|
237
|
-
Job(name=df.name).with_infrastructure(df).with_runtime(df.runtime)
|
238
|
-
for df in DataFlow.list_jobs(compartment_id, **kwargs)
|
239
|
-
]
|
240
|
-
|
241
|
-
def __init__(
|
242
|
-
self, name: str = None, infrastructure=None, runtime=None, **kwargs
|
243
|
-
) -> None:
|
244
|
-
"""Initializes a job.
|
245
|
-
|
246
|
-
The infrastructure and runtime can be configured when initializing the job,
|
247
|
-
or by calling with_infrastructure() and with_runtime().
|
248
|
-
|
249
|
-
The infrastructure should be a subclass of ADS job Infrastructure, e.g., DataScienceJob, DataFlow.
|
250
|
-
The runtime should be a subclass of ADS job Runtime, e.g., PythonRuntime, NotebookRuntime.
|
251
|
-
|
252
|
-
Parameters
|
253
|
-
----------
|
254
|
-
name : str, optional
|
255
|
-
The name of the job, by default None.
|
256
|
-
If it is None, a default name may be generated by the infrastructure,
|
257
|
-
depending on the implementation of the infrastructure.
|
258
|
-
For OCI data science job, the default name contains the job artifact name and a timestamp.
|
259
|
-
If no artifact, a randomly generated easy to remember name with timestamp will be generated,
|
260
|
-
like 'strange-spider-2022-08-17-23:55.02'.
|
261
|
-
infrastructure : Infrastructure, optional
|
262
|
-
Job infrastructure, by default None
|
263
|
-
runtime : Runtime, optional
|
264
|
-
Job runtime, by default None.
|
265
|
-
|
266
|
-
"""
|
267
|
-
# Saves a copy of the auth object from the class to the instance.
|
268
|
-
# Future changes to the class level Job.auth will not affect the auth of existing instances.
|
269
|
-
self.auth = self.auth.copy()
|
270
|
-
for key in ["config", "signer", "client_kwargs"]:
|
271
|
-
if kwargs.get(key):
|
272
|
-
self.auth[key] = kwargs.pop(key)
|
273
|
-
super().__init__()
|
274
|
-
if name:
|
275
|
-
self.set_spec("name", name)
|
276
|
-
if infrastructure:
|
277
|
-
self.with_infrastructure(infrastructure)
|
278
|
-
if runtime:
|
279
|
-
self.with_runtime(runtime)
|
280
|
-
|
281
|
-
@property
|
282
|
-
def kind(self) -> str:
|
283
|
-
"""The kind of the object as showing in YAML.
|
284
|
-
|
285
|
-
Returns
|
286
|
-
-------
|
287
|
-
str
|
288
|
-
"job"
|
289
|
-
"""
|
290
|
-
return "job"
|
291
|
-
|
292
|
-
@property
|
293
|
-
def id(self) -> str:
|
294
|
-
"""The ID of the job.
|
295
|
-
For jobs running on OCI, this is the OCID.
|
296
|
-
|
297
|
-
Returns
|
298
|
-
-------
|
299
|
-
str
|
300
|
-
ID of the job.
|
301
|
-
"""
|
302
|
-
if self.infrastructure and hasattr(self.infrastructure, "job_id"):
|
303
|
-
return self.infrastructure.job_id
|
304
|
-
return None
|
305
|
-
|
306
|
-
@property
|
307
|
-
def name(self) -> str:
|
308
|
-
"""The name of the job.
|
309
|
-
For jobs running on OCI, this is the display name.
|
310
|
-
|
311
|
-
Returns
|
312
|
-
-------
|
313
|
-
str
|
314
|
-
The name of the job.
|
315
|
-
"""
|
316
|
-
return self.get_spec("name")
|
317
|
-
|
318
|
-
@property
|
319
|
-
def infrastructure(self) -> Union[DataScienceJob, DataFlow]:
|
320
|
-
"""The job infrastructure.
|
321
|
-
|
322
|
-
Returns
|
323
|
-
-------
|
324
|
-
Infrastructure
|
325
|
-
Job infrastructure.
|
326
|
-
"""
|
327
|
-
return self.get_spec("infrastructure")
|
328
|
-
|
329
|
-
@property
|
330
|
-
def runtime(self) -> Runtime:
|
331
|
-
"""The job runtime.
|
332
|
-
|
333
|
-
Returns
|
334
|
-
-------
|
335
|
-
Runtime
|
336
|
-
The job runtime
|
337
|
-
"""
|
338
|
-
return self.get_spec("runtime")
|
339
|
-
|
340
|
-
def with_infrastructure(self, infrastructure) -> "Job":
|
341
|
-
"""Sets the infrastructure for the job.
|
342
|
-
|
343
|
-
Parameters
|
344
|
-
----------
|
345
|
-
infrastructure : Infrastructure
|
346
|
-
Job infrastructure.
|
347
|
-
|
348
|
-
Returns
|
349
|
-
-------
|
350
|
-
Job
|
351
|
-
The job instance (self)
|
352
|
-
"""
|
353
|
-
return self.set_spec("infrastructure", infrastructure)
|
354
|
-
|
355
|
-
def with_runtime(self, runtime) -> "Job":
|
356
|
-
"""Sets the runtime for the job.
|
357
|
-
|
358
|
-
Parameters
|
359
|
-
----------
|
360
|
-
runtime : Runtime
|
361
|
-
Job runtime.
|
362
|
-
|
363
|
-
Returns
|
364
|
-
-------
|
365
|
-
Job
|
366
|
-
The job instance (self)
|
367
|
-
"""
|
368
|
-
return self.set_spec("runtime", runtime)
|
369
|
-
|
370
|
-
def with_name(self, name: str) -> "Job":
|
371
|
-
"""Sets the job name.
|
372
|
-
|
373
|
-
Parameters
|
374
|
-
----------
|
375
|
-
name : str
|
376
|
-
Job name.
|
377
|
-
|
378
|
-
Returns
|
379
|
-
-------
|
380
|
-
Job
|
381
|
-
The job instance (self)
|
382
|
-
"""
|
383
|
-
return self.set_spec("name", name)
|
384
|
-
|
385
|
-
def build(self) -> "Job":
|
386
|
-
"""Load default values from the environment for the job infrastructure."""
|
387
|
-
super().build()
|
388
|
-
|
389
|
-
build_method = getattr(self.infrastructure, "build", None)
|
390
|
-
if build_method and callable(build_method):
|
391
|
-
build_method()
|
392
|
-
else:
|
393
|
-
raise NotImplementedError
|
394
|
-
return self
|
395
|
-
|
396
|
-
def create(self, **kwargs) -> "Job":
|
397
|
-
"""Creates the job on the infrastructure.
|
398
|
-
|
399
|
-
Returns
|
400
|
-
-------
|
401
|
-
Job
|
402
|
-
The job instance (self)
|
403
|
-
"""
|
404
|
-
infra = self.get_spec("infrastructure")
|
405
|
-
infra.name = self.name
|
406
|
-
self.infrastructure.create(self.runtime, **kwargs)
|
407
|
-
self.set_spec("name", self.infrastructure.name)
|
408
|
-
return self
|
409
|
-
|
410
|
-
def run(
|
411
|
-
self,
|
412
|
-
name=None,
|
413
|
-
args=None,
|
414
|
-
env_var=None,
|
415
|
-
freeform_tags=None,
|
416
|
-
defined_tags=None,
|
417
|
-
wait=False,
|
418
|
-
**kwargs,
|
419
|
-
) -> Union[DataScienceJobRun, DataFlowRun]:
|
420
|
-
"""Runs the job.
|
421
|
-
|
422
|
-
Parameters
|
423
|
-
----------
|
424
|
-
name : str, optional
|
425
|
-
Name of the job run, by default None.
|
426
|
-
The infrastructure handles the naming of the job run.
|
427
|
-
For data science job, if a name is not provided,
|
428
|
-
a default name will be generated containing the job name and the timestamp of the run.
|
429
|
-
If no artifact, a randomly generated easy to remember name
|
430
|
-
with timestamp will be generated, like 'strange-spider-2022-08-17-23:55.02'.
|
431
|
-
args : str, optional
|
432
|
-
Command line arguments for the job run, by default None.
|
433
|
-
This will override the configurations on the job.
|
434
|
-
If this is None, the args from the job configuration will be used.
|
435
|
-
env_var : dict, optional
|
436
|
-
Additional environment variables for the job run, by default None
|
437
|
-
freeform_tags : dict, optional
|
438
|
-
Freeform tags for the job run, by default None
|
439
|
-
defined_tags : dict, optional
|
440
|
-
Defined tags for the job run, by default None
|
441
|
-
wait : bool, optional
|
442
|
-
Indicate if this method call should wait for the job run.
|
443
|
-
By default False, this method returns as soon as the job run is created.
|
444
|
-
If this is set to True, this method will stream the job logs and wait until it finishes,
|
445
|
-
similar to `job.run().watch()`.
|
446
|
-
kwargs
|
447
|
-
additional keyword arguments
|
448
|
-
|
449
|
-
Returns
|
450
|
-
-------
|
451
|
-
Job Run Instance
|
452
|
-
A job run instance, depending on the infrastructure.
|
453
|
-
|
454
|
-
Examples
|
455
|
-
--------
|
456
|
-
To run a job and override the configurations::
|
457
|
-
|
458
|
-
job_run = job.run(
|
459
|
-
name="<my_job_run_name>",
|
460
|
-
args="new_arg --new_key new_val",
|
461
|
-
env_var={"new_env": "new_val"},
|
462
|
-
freeform_tags={"new_tag": "new_tag_val"},
|
463
|
-
defined_tags={"Operations": {"CostCenter": "42"}}
|
464
|
-
)
|
465
|
-
|
466
|
-
"""
|
467
|
-
return self.infrastructure.run(
|
468
|
-
name=name,
|
469
|
-
args=args,
|
470
|
-
env_var=env_var,
|
471
|
-
freeform_tags=freeform_tags,
|
472
|
-
defined_tags=defined_tags,
|
473
|
-
wait=wait,
|
474
|
-
**kwargs,
|
475
|
-
)
|
476
|
-
|
477
|
-
def run_list(self, **kwargs) -> list:
|
478
|
-
"""Gets a list of runs of the job.
|
479
|
-
|
480
|
-
Returns
|
481
|
-
-------
|
482
|
-
list
|
483
|
-
A list of job run instances, the actual object type depends on the infrastructure.
|
484
|
-
"""
|
485
|
-
return self.infrastructure.run_list(**kwargs)
|
486
|
-
|
487
|
-
def cancel(self, wait_for_completion: bool = True) -> None:
|
488
|
-
"""Cancels the runs of the job.
|
489
|
-
|
490
|
-
Parameters
|
491
|
-
----------
|
492
|
-
wait_for_completion: bool
|
493
|
-
Whether to wait for run to be cancelled before proceeding.
|
494
|
-
Defaults to True.
|
495
|
-
"""
|
496
|
-
runs = self.run_list()
|
497
|
-
for run in runs:
|
498
|
-
run.cancel(wait_for_completion=False)
|
499
|
-
|
500
|
-
if wait_for_completion:
|
501
|
-
for run in runs:
|
502
|
-
while (
|
503
|
-
run.lifecycle_state
|
504
|
-
!= oci.data_science.models.JobRun.LIFECYCLE_STATE_CANCELED
|
505
|
-
):
|
506
|
-
run.sync()
|
507
|
-
time.sleep(SLEEP_INTERVAL)
|
508
|
-
|
509
|
-
def delete(self) -> None:
|
510
|
-
"""Deletes the job from the infrastructure."""
|
511
|
-
self.infrastructure.delete()
|
512
|
-
|
513
|
-
def status(self) -> str:
|
514
|
-
"""Status of the job
|
515
|
-
|
516
|
-
Returns
|
517
|
-
-------
|
518
|
-
str
|
519
|
-
Status of the job
|
520
|
-
"""
|
521
|
-
return getattr(self.infrastructure, "status", None)
|
522
|
-
|
523
|
-
def to_dict(self, **kwargs: Dict) -> Dict:
|
524
|
-
"""Serialize the job specifications to a dictionary.
|
525
|
-
|
526
|
-
Parameters
|
527
|
-
----------
|
528
|
-
**kwargs: Dict
|
529
|
-
The additional arguments.
|
530
|
-
- filter_by_attribute_map: bool
|
531
|
-
If True, then in the result will be included only the fields
|
532
|
-
presented in the `attribute_map`.
|
533
|
-
|
534
|
-
Returns
|
535
|
-
-------
|
536
|
-
Dict
|
537
|
-
A dictionary containing job specifications.
|
538
|
-
"""
|
539
|
-
spec = {"name": self.name}
|
540
|
-
if self.runtime:
|
541
|
-
spec["runtime"] = self.runtime.to_dict(**kwargs)
|
542
|
-
if self.infrastructure:
|
543
|
-
spec["infrastructure"] = self.infrastructure.to_dict(**kwargs)
|
544
|
-
if self.id:
|
545
|
-
spec["id"] = self.id
|
546
|
-
return {
|
547
|
-
"kind": self.kind,
|
548
|
-
# "apiVersion": self.api_version,
|
549
|
-
"spec": spec,
|
550
|
-
}
|
551
|
-
|
552
|
-
@class_or_instance_method
|
553
|
-
def from_yaml(
|
554
|
-
cls,
|
555
|
-
yaml_string: str = None,
|
556
|
-
uri: str = None,
|
557
|
-
loader: callable = yaml.SafeLoader,
|
558
|
-
**kwargs,
|
559
|
-
):
|
560
|
-
if inspect.isclass(cls):
|
561
|
-
job = cls(**cls.auth)
|
562
|
-
else:
|
563
|
-
job = cls.__class__(**cls.auth)
|
564
|
-
|
565
|
-
if yaml_string:
|
566
|
-
return job.from_dict(yaml.load(yaml_string, Loader=loader))
|
567
|
-
if uri:
|
568
|
-
yaml_dict = yaml.load(cls._read_from_file(uri=uri, **kwargs), Loader=loader)
|
569
|
-
return job.from_dict(yaml_dict)
|
570
|
-
raise ValueError("Must provide either YAML string or URI location")
|
571
|
-
|
572
|
-
@class_or_instance_method
|
573
|
-
def from_dict(cls, config: dict) -> "Job":
|
574
|
-
"""Initializes a job from a dictionary containing the configurations.
|
575
|
-
|
576
|
-
Parameters
|
577
|
-
----------
|
578
|
-
config : dict
|
579
|
-
A dictionary containing the infrastructure and runtime specifications.
|
580
|
-
|
581
|
-
Returns
|
582
|
-
-------
|
583
|
-
Job
|
584
|
-
A job instance
|
585
|
-
|
586
|
-
Raises
|
587
|
-
------
|
588
|
-
NotImplementedError
|
589
|
-
If the type of the infrastructure or runtime is not supported.
|
590
|
-
"""
|
591
|
-
if not isinstance(config, dict):
|
592
|
-
raise ValueError("The config data for initializing the job is invalid.")
|
593
|
-
spec = config.get("spec")
|
594
|
-
|
595
|
-
mappings = {
|
596
|
-
"infrastructure": cls._INFRASTRUCTURE_MAPPING,
|
597
|
-
"runtime": cls._RUNTIME_MAPPING,
|
598
|
-
}
|
599
|
-
if inspect.isclass(cls):
|
600
|
-
job = cls(**cls.auth)
|
601
|
-
else:
|
602
|
-
job = cls.__class__(**cls.auth)
|
603
|
-
|
604
|
-
for key, value in spec.items():
|
605
|
-
if key in mappings:
|
606
|
-
mapping = mappings[key]
|
607
|
-
child_config = value
|
608
|
-
if child_config.get("type") not in mapping:
|
609
|
-
raise NotImplementedError(
|
610
|
-
f"{key.title()} type: {child_config.get('type')} is not supported."
|
611
|
-
)
|
612
|
-
spec_class = mapping[child_config.get("type")]
|
613
|
-
if spec_class == DataScienceJob:
|
614
|
-
spec_class = DataScienceJob(**job.auth)
|
615
|
-
|
616
|
-
job.set_spec(key, spec_class.from_dict(child_config))
|
617
|
-
else:
|
618
|
-
job.set_spec(key, value)
|
619
|
-
|
620
|
-
return job
|
621
|
-
|
622
|
-
def download(self, to_dir: str, output_uri=None, **storage_options):
|
623
|
-
"""Downloads files from remote output URI to local.
|
624
|
-
|
625
|
-
Parameters
|
626
|
-
----------
|
627
|
-
to_dir : str
|
628
|
-
Local directory to which the files will be downloaded to.
|
629
|
-
|
630
|
-
output_uri : (str, optional). Default is None.
|
631
|
-
The remote URI from which the files will be downloaded.
|
632
|
-
Defaults to None.
|
633
|
-
If output_uri is not specified, this method will try to get the output_uri from the runtime.
|
634
|
-
|
635
|
-
storage_options :
|
636
|
-
Extra keyword arguments for particular storage connection.
|
637
|
-
This method uses fsspec to download the files from remote URI.
|
638
|
-
storage_options will to be passed into fsspec.open_files().
|
639
|
-
|
640
|
-
Returns
|
641
|
-
-------
|
642
|
-
Job
|
643
|
-
The job instance (self)
|
644
|
-
|
645
|
-
Raises
|
646
|
-
------
|
647
|
-
AttributeError
|
648
|
-
The output_uri is not specified and the runtime is not configured with output_uri.
|
649
|
-
"""
|
650
|
-
if not output_uri and self.runtime:
|
651
|
-
output_uri = getattr(self.runtime, "output_uri", None)
|
652
|
-
|
653
|
-
if not output_uri:
|
654
|
-
raise AttributeError(
|
655
|
-
"Please specify the output_uri or set it with a compatible runtime."
|
656
|
-
)
|
657
|
-
|
658
|
-
scheme = urlparse(output_uri).scheme
|
659
|
-
if scheme == "oci" and not storage_options:
|
660
|
-
storage_options = default_signer()
|
661
|
-
fs = fsspec.filesystem(scheme, **storage_options)
|
662
|
-
fs.get(self.runtime.output_uri, to_dir, recursive=True)
|
663
|
-
return self
|