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
@@ -1,500 +0,0 @@
|
|
1
|
-
#!/usr/bin/env python
|
2
|
-
# -*- coding: utf-8; -*-
|
3
|
-
|
4
|
-
# Copyright (c) 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
|
-
|
7
|
-
from functools import wraps
|
8
|
-
import logging
|
9
|
-
from typing import Callable, List
|
10
|
-
from ads.common.oci_datascience import OCIDataScienceMixin
|
11
|
-
from ads.common.work_request import DataScienceWorkRequest
|
12
|
-
from ads.config import PROJECT_OCID
|
13
|
-
from ads.model.deployment.common.utils import OCIClientManager, State
|
14
|
-
import oci
|
15
|
-
|
16
|
-
from oci.data_science.models import (
|
17
|
-
CreateModelDeploymentDetails,
|
18
|
-
UpdateModelDeploymentDetails,
|
19
|
-
)
|
20
|
-
|
21
|
-
DEFAULT_WAIT_TIME = 1200
|
22
|
-
DEFAULT_POLL_INTERVAL = 10
|
23
|
-
ALLOWED_STATUS = [
|
24
|
-
State.ACTIVE.name,
|
25
|
-
State.CREATING.name,
|
26
|
-
State.DELETED.name,
|
27
|
-
State.DELETING.name,
|
28
|
-
State.FAILED.name,
|
29
|
-
State.INACTIVE.name,
|
30
|
-
State.UPDATING.name,
|
31
|
-
]
|
32
|
-
|
33
|
-
logger = logging.getLogger(__name__)
|
34
|
-
|
35
|
-
MODEL_DEPLOYMENT_NEEDS_TO_BE_DEPLOYED = "Missing model deployment id. Model deployment needs to be deployed before it can be accessed."
|
36
|
-
|
37
|
-
|
38
|
-
def check_for_model_deployment_id(msg: str = MODEL_DEPLOYMENT_NEEDS_TO_BE_DEPLOYED):
|
39
|
-
"""The decorator helping to check if the ID attribute sepcified for a datascience model deployment.
|
40
|
-
|
41
|
-
Parameters
|
42
|
-
----------
|
43
|
-
msg: str
|
44
|
-
The message that will be thrown.
|
45
|
-
|
46
|
-
Raises
|
47
|
-
------
|
48
|
-
MissingModelDeploymentIdError
|
49
|
-
In case if the ID attribute not specified.
|
50
|
-
|
51
|
-
Examples
|
52
|
-
--------
|
53
|
-
>>> @check_for_id(msg="Some message.")
|
54
|
-
... def test_function(self, name: str, last_name: str)
|
55
|
-
... pass
|
56
|
-
"""
|
57
|
-
|
58
|
-
def decorator(func: Callable):
|
59
|
-
@wraps(func)
|
60
|
-
def wrapper(self, *args, **kwargs):
|
61
|
-
if not self.id:
|
62
|
-
raise MissingModelDeploymentIdError(msg)
|
63
|
-
return func(self, *args, **kwargs)
|
64
|
-
|
65
|
-
return wrapper
|
66
|
-
|
67
|
-
return decorator
|
68
|
-
|
69
|
-
|
70
|
-
class MissingModelDeploymentIdError(Exception): # pragma: no cover
|
71
|
-
pass
|
72
|
-
|
73
|
-
|
74
|
-
class MissingModelDeploymentWorkflowIdError(Exception): # pragma: no cover
|
75
|
-
pass
|
76
|
-
|
77
|
-
|
78
|
-
class OCIDataScienceModelDeployment(
|
79
|
-
OCIDataScienceMixin,
|
80
|
-
oci.data_science.models.ModelDeployment,
|
81
|
-
):
|
82
|
-
"""Represents an OCI Data Science Model Deployment.
|
83
|
-
This class contains all attributes of the `oci.data_science.models.ModelDeployment`.
|
84
|
-
The main purpose of this class is to link the `oci.data_science.models.ModelDeployment`
|
85
|
-
and the related client methods.
|
86
|
-
Linking the `ModelDeployment` (payload) to Create/Update/Delete/Activate/Deactivate methods.
|
87
|
-
|
88
|
-
The `OCIDataScienceModelDeployment` can be initialized by unpacking the properties stored in a dictionary:
|
89
|
-
|
90
|
-
.. code-block:: python
|
91
|
-
|
92
|
-
properties = {
|
93
|
-
"compartment_id": "<compartment_ocid>",
|
94
|
-
"name": "<model_name>",
|
95
|
-
"description": "<model_description>",
|
96
|
-
}
|
97
|
-
ds_model_deployment = OCIDataScienceModelDeployment(**properties)
|
98
|
-
|
99
|
-
The properties can also be OCI REST API payload, in which the keys are in camel format.
|
100
|
-
|
101
|
-
.. code-block:: python
|
102
|
-
|
103
|
-
payload = {
|
104
|
-
"compartmentId": "<compartment_ocid>",
|
105
|
-
"name": "<model_name>",
|
106
|
-
"description": "<model_description>",
|
107
|
-
}
|
108
|
-
ds_model_deployment = OCIDataScienceModelDeployment(**payload)
|
109
|
-
|
110
|
-
Methods
|
111
|
-
-------
|
112
|
-
activate(self, ...) -> "OCIDataScienceModelDeployment":
|
113
|
-
Activates datascience model deployment.
|
114
|
-
create(self, ...) -> "OCIDataScienceModelDeployment"
|
115
|
-
Creates datascience model deployment.
|
116
|
-
deactivate(self, ...) -> "OCIDataScienceModelDeployment":
|
117
|
-
Deactivates datascience model deployment.
|
118
|
-
delete(self, ...) -> "OCIDataScienceModelDeployment":
|
119
|
-
Deletes datascience model deployment.
|
120
|
-
update(self, ...) -> "OCIDataScienceModelDeployment":
|
121
|
-
Updates datascience model deployment.
|
122
|
-
list(self, ...) -> list[oci.data_science.models.ModelDeployment]:
|
123
|
-
List oci.data_science.models.ModelDeployment instances within given compartment and project.
|
124
|
-
from_id(cls, model_deployment_id: str) -> "OCIDataScienceModelDeployment":
|
125
|
-
Gets model deployment by OCID.
|
126
|
-
|
127
|
-
Examples
|
128
|
-
--------
|
129
|
-
>>> oci_model_deployment = OCIDataScienceModelDeployment.from_id(<model_deployment_ocid>)
|
130
|
-
>>> oci_model_deployment.deactivate()
|
131
|
-
>>> oci_model_deployment.activate(wait_for_completion=False)
|
132
|
-
>>> oci_model_deployment.description = "A brand new description"
|
133
|
-
... oci_model_deployment.update()
|
134
|
-
>>> oci_model_deployment.sync()
|
135
|
-
>>> oci_model_deployment.list(status="ACTIVE")
|
136
|
-
>>> oci_model_deployment.delete(wait_for_completion=False)
|
137
|
-
"""
|
138
|
-
|
139
|
-
def __init__(
|
140
|
-
self,
|
141
|
-
config: dict = None,
|
142
|
-
signer: oci.signer.Signer = None,
|
143
|
-
client_kwargs: dict = None,
|
144
|
-
**kwargs,
|
145
|
-
) -> None:
|
146
|
-
super().__init__(config, signer, client_kwargs, **kwargs)
|
147
|
-
self.workflow_req_id = None
|
148
|
-
|
149
|
-
@check_for_model_deployment_id(
|
150
|
-
msg="Model deployment needs to be deployed before it can be activated or deactivated."
|
151
|
-
)
|
152
|
-
def activate(
|
153
|
-
self,
|
154
|
-
wait_for_completion: bool = True,
|
155
|
-
max_wait_time: int = DEFAULT_WAIT_TIME,
|
156
|
-
poll_interval: int = DEFAULT_POLL_INTERVAL,
|
157
|
-
) -> "OCIDataScienceModelDeployment":
|
158
|
-
"""Activates datascience model deployment.
|
159
|
-
|
160
|
-
Parameters
|
161
|
-
----------
|
162
|
-
wait_for_completion: bool
|
163
|
-
Flag set for whether to wait for process to be completed.
|
164
|
-
Defaults to True.
|
165
|
-
max_wait_time: int
|
166
|
-
Maximum amount of time to wait in seconds (Defaults to 1200).
|
167
|
-
Negative implies infinite wait time.
|
168
|
-
poll_interval: int
|
169
|
-
Poll interval in seconds (Defaults to 10).
|
170
|
-
|
171
|
-
Returns
|
172
|
-
-------
|
173
|
-
OCIDataScienceModelDeployment
|
174
|
-
The `OCIDataScienceModelDeployment` instance (self).
|
175
|
-
"""
|
176
|
-
dsc_model_deployment = OCIDataScienceModelDeployment.from_id(self.id)
|
177
|
-
if dsc_model_deployment.lifecycle_state == self.LIFECYCLE_STATE_ACTIVE:
|
178
|
-
raise Exception(
|
179
|
-
f"Model deployment {dsc_model_deployment.id} is already in active state."
|
180
|
-
)
|
181
|
-
|
182
|
-
if dsc_model_deployment.lifecycle_state == self.LIFECYCLE_STATE_INACTIVE:
|
183
|
-
logger.info(f"Activating model deployment `{self.id}`.")
|
184
|
-
response = self.client.activate_model_deployment(
|
185
|
-
self.id,
|
186
|
-
)
|
187
|
-
|
188
|
-
if wait_for_completion:
|
189
|
-
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
|
190
|
-
|
191
|
-
try:
|
192
|
-
DataScienceWorkRequest(self.workflow_req_id).wait_work_request(
|
193
|
-
progress_bar_description="Activating model deployment",
|
194
|
-
max_wait_time=max_wait_time,
|
195
|
-
poll_interval=poll_interval
|
196
|
-
)
|
197
|
-
except Exception as e:
|
198
|
-
logger.error(
|
199
|
-
"Error while trying to activate model deployment: " + str(e)
|
200
|
-
)
|
201
|
-
|
202
|
-
return self.sync()
|
203
|
-
else:
|
204
|
-
raise Exception(
|
205
|
-
f"Can't activate model deployment {dsc_model_deployment.id} when it's in {dsc_model_deployment.lifecycle_state} state."
|
206
|
-
)
|
207
|
-
|
208
|
-
def create(
|
209
|
-
self,
|
210
|
-
create_model_deployment_details: CreateModelDeploymentDetails,
|
211
|
-
wait_for_completion: bool = True,
|
212
|
-
max_wait_time: int = DEFAULT_WAIT_TIME,
|
213
|
-
poll_interval: int = DEFAULT_POLL_INTERVAL,
|
214
|
-
) -> "OCIDataScienceModelDeployment":
|
215
|
-
"""Creates datascience model deployment.
|
216
|
-
|
217
|
-
Parameters
|
218
|
-
----------
|
219
|
-
wait_for_completion: bool
|
220
|
-
Flag set for whether to wait for process to be completed.
|
221
|
-
Defaults to True.
|
222
|
-
max_wait_time: int
|
223
|
-
Maximum amount of time to wait in seconds (Defaults to 1200).
|
224
|
-
Negative implies infinite wait time.
|
225
|
-
poll_interval: int
|
226
|
-
Poll interval in seconds (Defaults to 10).
|
227
|
-
|
228
|
-
Returns
|
229
|
-
-------
|
230
|
-
OCIDataScienceModelDeployment
|
231
|
-
The `OCIDataScienceModelDeployment` instance (self).
|
232
|
-
"""
|
233
|
-
response = self.client.create_model_deployment(create_model_deployment_details)
|
234
|
-
self.update_from_oci_model(response.data)
|
235
|
-
logger.info(f"Creating model deployment `{self.id}`.")
|
236
|
-
print(f"Model Deployment OCID: {self.id}")
|
237
|
-
|
238
|
-
if wait_for_completion:
|
239
|
-
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
|
240
|
-
|
241
|
-
try:
|
242
|
-
DataScienceWorkRequest(self.workflow_req_id).wait_work_request(
|
243
|
-
progress_bar_description="Creating model deployment",
|
244
|
-
max_wait_time=max_wait_time,
|
245
|
-
poll_interval=poll_interval
|
246
|
-
)
|
247
|
-
except Exception as e:
|
248
|
-
logger.error("Error while trying to create model deployment: " + str(e))
|
249
|
-
|
250
|
-
return self.sync()
|
251
|
-
|
252
|
-
@check_for_model_deployment_id(
|
253
|
-
msg="Model deployment needs to be deployed before it can be activated or deactivated."
|
254
|
-
)
|
255
|
-
def deactivate(
|
256
|
-
self,
|
257
|
-
wait_for_completion: bool = True,
|
258
|
-
max_wait_time: int = DEFAULT_WAIT_TIME,
|
259
|
-
poll_interval: int = DEFAULT_POLL_INTERVAL,
|
260
|
-
) -> "OCIDataScienceModelDeployment":
|
261
|
-
"""Deactivates datascience model deployment.
|
262
|
-
|
263
|
-
Parameters
|
264
|
-
----------
|
265
|
-
wait_for_completion: bool
|
266
|
-
Flag set for whether to wait for process to be completed.
|
267
|
-
Defaults to True.
|
268
|
-
max_wait_time: int
|
269
|
-
Maximum amount of time to wait in seconds (Defaults to 1200).
|
270
|
-
Negative implies infinite wait time.
|
271
|
-
poll_interval: int
|
272
|
-
Poll interval in seconds (Defaults to 10).
|
273
|
-
|
274
|
-
Returns
|
275
|
-
-------
|
276
|
-
OCIDataScienceModelDeployment
|
277
|
-
The `OCIDataScienceModelDeployment` instance (self).
|
278
|
-
"""
|
279
|
-
dsc_model_deployment = OCIDataScienceModelDeployment.from_id(self.id)
|
280
|
-
if dsc_model_deployment.lifecycle_state == self.LIFECYCLE_STATE_INACTIVE:
|
281
|
-
raise Exception(
|
282
|
-
f"Model deployment {dsc_model_deployment.id} is already in inactive state."
|
283
|
-
)
|
284
|
-
|
285
|
-
if dsc_model_deployment.lifecycle_state == self.LIFECYCLE_STATE_ACTIVE:
|
286
|
-
logger.info(f"Deactivating model deployment `{self.id}`.")
|
287
|
-
response = self.client.deactivate_model_deployment(
|
288
|
-
self.id,
|
289
|
-
)
|
290
|
-
|
291
|
-
if wait_for_completion:
|
292
|
-
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
|
293
|
-
|
294
|
-
try:
|
295
|
-
DataScienceWorkRequest(self.workflow_req_id).wait_work_request(
|
296
|
-
progress_bar_description="Deactivating model deployment",
|
297
|
-
max_wait_time=max_wait_time,
|
298
|
-
poll_interval=poll_interval
|
299
|
-
)
|
300
|
-
except Exception as e:
|
301
|
-
logger.error(
|
302
|
-
"Error while trying to deactivate model deployment: " + str(e)
|
303
|
-
)
|
304
|
-
|
305
|
-
return self.sync()
|
306
|
-
else:
|
307
|
-
raise Exception(
|
308
|
-
f"Can't deactivate model deployment {dsc_model_deployment.id} when it's in {dsc_model_deployment.lifecycle_state} state."
|
309
|
-
)
|
310
|
-
|
311
|
-
@check_for_model_deployment_id(
|
312
|
-
msg="Model deployment needs to be deployed before it can be deleted."
|
313
|
-
)
|
314
|
-
def delete(
|
315
|
-
self,
|
316
|
-
wait_for_completion: bool = True,
|
317
|
-
max_wait_time: int = DEFAULT_WAIT_TIME,
|
318
|
-
poll_interval: int = DEFAULT_POLL_INTERVAL,
|
319
|
-
) -> "OCIDataScienceModelDeployment":
|
320
|
-
"""Deletes datascience model deployment.
|
321
|
-
|
322
|
-
Parameters
|
323
|
-
----------
|
324
|
-
wait_for_completion: bool
|
325
|
-
Flag set for whether to wait for process to be completed.
|
326
|
-
Defaults to True.
|
327
|
-
max_wait_time: int
|
328
|
-
Maximum amount of time to wait in seconds (Defaults to 1200).
|
329
|
-
Negative implies infinite wait time.
|
330
|
-
poll_interval: int
|
331
|
-
Poll interval in seconds (Defaults to 10).
|
332
|
-
|
333
|
-
Returns
|
334
|
-
-------
|
335
|
-
OCIDataScienceModelDeployment
|
336
|
-
The `OCIDataScienceModelDeployment` instance (self).
|
337
|
-
"""
|
338
|
-
dsc_model_deployment = OCIDataScienceModelDeployment.from_id(self.id)
|
339
|
-
if dsc_model_deployment.lifecycle_state in [
|
340
|
-
self.LIFECYCLE_STATE_DELETED,
|
341
|
-
self.LIFECYCLE_STATE_DELETING,
|
342
|
-
]:
|
343
|
-
raise Exception(
|
344
|
-
f"Model deployment {dsc_model_deployment.id} is either deleted or being deleted."
|
345
|
-
)
|
346
|
-
if dsc_model_deployment.lifecycle_state not in [
|
347
|
-
self.LIFECYCLE_STATE_ACTIVE,
|
348
|
-
self.LIFECYCLE_STATE_FAILED,
|
349
|
-
self.LIFECYCLE_STATE_INACTIVE,
|
350
|
-
]:
|
351
|
-
raise Exception(
|
352
|
-
f"Can't delete model deployment {dsc_model_deployment.id} when it's in {dsc_model_deployment.lifecycle_state} state."
|
353
|
-
)
|
354
|
-
logger.info(f"Deleting model deployment `{self.id}`.")
|
355
|
-
response = self.client.delete_model_deployment(
|
356
|
-
self.id,
|
357
|
-
)
|
358
|
-
|
359
|
-
if wait_for_completion:
|
360
|
-
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
|
361
|
-
|
362
|
-
try:
|
363
|
-
DataScienceWorkRequest(self.workflow_req_id).wait_work_request(
|
364
|
-
progress_bar_description="Deleting model deployment",
|
365
|
-
max_wait_time=max_wait_time,
|
366
|
-
poll_interval=poll_interval
|
367
|
-
)
|
368
|
-
except Exception as e:
|
369
|
-
logger.error("Error while trying to delete model deployment: " + str(e))
|
370
|
-
|
371
|
-
return self.sync()
|
372
|
-
|
373
|
-
@check_for_model_deployment_id(
|
374
|
-
msg="Model deployment needs to be deployed before it can be updated."
|
375
|
-
)
|
376
|
-
def update(
|
377
|
-
self,
|
378
|
-
update_model_deployment_details: UpdateModelDeploymentDetails,
|
379
|
-
wait_for_completion: bool = True,
|
380
|
-
max_wait_time: int = DEFAULT_WAIT_TIME,
|
381
|
-
poll_interval: int = DEFAULT_POLL_INTERVAL,
|
382
|
-
) -> "OCIDataScienceModelDeployment":
|
383
|
-
"""Updates datascience model deployment.
|
384
|
-
|
385
|
-
Parameters
|
386
|
-
----------
|
387
|
-
update_model_deployment_details: UpdateModelDeploymentDetails
|
388
|
-
Details to update model deployment.
|
389
|
-
wait_for_completion: bool
|
390
|
-
Flag set for whether to wait for process to be completed.
|
391
|
-
Defaults to True.
|
392
|
-
max_wait_time: int
|
393
|
-
Maximum amount of time to wait in seconds (Defaults to 1200).
|
394
|
-
Negative implies infinite wait time.
|
395
|
-
poll_interval: int
|
396
|
-
Poll interval in seconds (Defaults to 10).
|
397
|
-
|
398
|
-
Returns
|
399
|
-
-------
|
400
|
-
OCIDataScienceModelDeployment
|
401
|
-
The `OCIDataScienceModelDeployment` instance (self).
|
402
|
-
"""
|
403
|
-
if wait_for_completion:
|
404
|
-
wait_for_states = [
|
405
|
-
oci.data_science.models.WorkRequest.STATUS_SUCCEEDED,
|
406
|
-
oci.data_science.models.WorkRequest.STATUS_FAILED,
|
407
|
-
]
|
408
|
-
else:
|
409
|
-
wait_for_states = []
|
410
|
-
|
411
|
-
try:
|
412
|
-
response = self.client_composite.update_model_deployment_and_wait_for_state(
|
413
|
-
self.id,
|
414
|
-
update_model_deployment_details,
|
415
|
-
wait_for_states=wait_for_states,
|
416
|
-
waiter_kwargs={
|
417
|
-
"max_interval_seconds": poll_interval,
|
418
|
-
"max_wait_seconds": max_wait_time,
|
419
|
-
},
|
420
|
-
)
|
421
|
-
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
|
422
|
-
except Exception as e:
|
423
|
-
logger.error("Error while trying to update model deployment: " + str(e))
|
424
|
-
|
425
|
-
return self.sync()
|
426
|
-
|
427
|
-
@classmethod
|
428
|
-
def list(
|
429
|
-
cls,
|
430
|
-
status: str = None,
|
431
|
-
compartment_id: str = None,
|
432
|
-
project_id: str = None,
|
433
|
-
**kwargs,
|
434
|
-
) -> list:
|
435
|
-
"""Lists the model deployments associated with current compartment id and status
|
436
|
-
|
437
|
-
Parameters
|
438
|
-
----------
|
439
|
-
status : str
|
440
|
-
Status of deployment. Defaults to None.
|
441
|
-
Allowed values: `ACTIVE`, `CREATING`, `DELETED`, `DELETING`, `FAILED`, `INACTIVE` and `UPDATING`.
|
442
|
-
compartment_id : str
|
443
|
-
Target compartment to list deployments from.
|
444
|
-
Defaults to the compartment set in the environment variable "NB_SESSION_COMPARTMENT_OCID".
|
445
|
-
If "NB_SESSION_COMPARTMENT_OCID" is not set, the root compartment ID will be used.
|
446
|
-
An ValueError will be raised if root compartment ID cannot be determined.
|
447
|
-
project_id : str
|
448
|
-
Target project to list deployments from.
|
449
|
-
Defaults to the project id in the environment variable "PROJECT_OCID".
|
450
|
-
kwargs :
|
451
|
-
The values are passed to oci.data_science.DataScienceClient.list_model_deployments.
|
452
|
-
|
453
|
-
Returns
|
454
|
-
-------
|
455
|
-
list
|
456
|
-
A list of oci.data_science.models.ModelDeployment objects.
|
457
|
-
|
458
|
-
Raises
|
459
|
-
------
|
460
|
-
ValueError
|
461
|
-
If compartment_id is not specified and cannot be determined from the environment.
|
462
|
-
"""
|
463
|
-
compartment_id = compartment_id or OCIClientManager().default_compartment_id()
|
464
|
-
|
465
|
-
if not compartment_id:
|
466
|
-
raise ValueError(
|
467
|
-
"Unable to determine compartment ID from environment. Specify `compartment_id`."
|
468
|
-
)
|
469
|
-
|
470
|
-
project_id = project_id or PROJECT_OCID
|
471
|
-
if project_id:
|
472
|
-
kwargs["project_id"] = project_id
|
473
|
-
|
474
|
-
if status is not None:
|
475
|
-
if status not in ALLOWED_STATUS:
|
476
|
-
raise ValueError(
|
477
|
-
f"Allowed `status` values are: {', '.join(ALLOWED_STATUS)}."
|
478
|
-
)
|
479
|
-
kwargs["lifecycle_state"] = status
|
480
|
-
|
481
|
-
# https://oracle-cloud-infrastructure-python-sdk.readthedocs.io/en/latest/api/pagination.html#module-oci.pagination
|
482
|
-
return oci.pagination.list_call_get_all_results(
|
483
|
-
cls().client.list_model_deployments, compartment_id, **kwargs
|
484
|
-
).data
|
485
|
-
|
486
|
-
@classmethod
|
487
|
-
def from_id(cls, model_deployment_id: str) -> "OCIDataScienceModelDeployment":
|
488
|
-
"""Gets datascience model deployment by OCID.
|
489
|
-
|
490
|
-
Parameters
|
491
|
-
----------
|
492
|
-
model_deployment_id: str
|
493
|
-
The OCID of the datascience model deployment.
|
494
|
-
|
495
|
-
Returns
|
496
|
-
-------
|
497
|
-
OCIDataScienceModelDeployment
|
498
|
-
An instance of `OCIDataScienceModelDeployment`.
|
499
|
-
"""
|
500
|
-
return super().from_ocid(model_deployment_id)
|
@@ -1,176 +0,0 @@
|
|
1
|
-
#!/usr/bin/env python
|
2
|
-
# -*- coding: utf-8; -*-
|
3
|
-
|
4
|
-
# Copyright (c) 2022 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
|
-
|
7
|
-
import datetime
|
8
|
-
from typing import Optional
|
9
|
-
|
10
|
-
import oci.data_science
|
11
|
-
from ads.common.oci_datascience import OCIDataScienceMixin
|
12
|
-
from ads.common.oci_mixin import (
|
13
|
-
LIFECYCLE_STOP_STATE,
|
14
|
-
OCIModelNotExists,
|
15
|
-
OCIModelWithNameMixin,
|
16
|
-
OCIWorkRequestMixin,
|
17
|
-
)
|
18
|
-
|
19
|
-
from ads.config import COMPARTMENT_OCID
|
20
|
-
|
21
|
-
from oci.data_science.models import (
|
22
|
-
CreateModelVersionSetDetails,
|
23
|
-
UpdateModelVersionSetDetails,
|
24
|
-
)
|
25
|
-
|
26
|
-
|
27
|
-
class ModelVersionSetNotExists(Exception): # pragma: no cover
|
28
|
-
pass
|
29
|
-
|
30
|
-
|
31
|
-
class ModelVersionSetNotSaved(Exception): # pragma: no cover
|
32
|
-
pass
|
33
|
-
|
34
|
-
|
35
|
-
class DataScienceModelVersionSet(
|
36
|
-
OCIDataScienceMixin,
|
37
|
-
OCIModelWithNameMixin,
|
38
|
-
OCIWorkRequestMixin,
|
39
|
-
oci.data_science.models.ModelVersionSet,
|
40
|
-
):
|
41
|
-
"""Represents an OCI Data Science Model Version Set
|
42
|
-
This class contains all attributes of the oci.data_science.models.ModelVersionSet
|
43
|
-
The main purpose of this class is to link the `oci.data_science.models.ModelVersionSet` model
|
44
|
-
and the related client methods. Mainly, linking the ModelVersionSet model (payload) to
|
45
|
-
Create/Update/Get/List/Delete methods.
|
46
|
-
|
47
|
-
A `DataScienceModelVersionSet` can be initialized by unpacking the properties stored in a dictionary (payload):
|
48
|
-
|
49
|
-
.. code-block:: python
|
50
|
-
|
51
|
-
properties = {
|
52
|
-
"name": "experiment1",
|
53
|
-
"description": "my experiment"
|
54
|
-
}
|
55
|
-
experiment = DataScienceModelVersionSet(**properties)
|
56
|
-
|
57
|
-
The properties can also be OCI REST API payload, in which the keys are in camel format.
|
58
|
-
|
59
|
-
.. code-block:: python
|
60
|
-
|
61
|
-
payload = {
|
62
|
-
"Id": "<model_version_set_ocid>",
|
63
|
-
"compartmentId": "<compartment_ocid>",
|
64
|
-
"Name": "<model_version_set_name>",
|
65
|
-
}
|
66
|
-
experiment = DataScienceModelVersionSet(**payload)
|
67
|
-
"""
|
68
|
-
|
69
|
-
def create(self) -> "DataScienceModelVersionSet":
|
70
|
-
"""Creates model version set on OCI Data Science platform
|
71
|
-
|
72
|
-
Returns
|
73
|
-
-------
|
74
|
-
DataScienceModelVersionSet
|
75
|
-
The DataScienceModelVersionSet instance (self), which allows chaining additional method.
|
76
|
-
"""
|
77
|
-
if not self.name:
|
78
|
-
timestamp = datetime.datetime.now().strftime("%Y%m%d-%H%M")
|
79
|
-
self.name = f"model-version-set-{timestamp}"
|
80
|
-
|
81
|
-
if not self.compartment_id:
|
82
|
-
raise ValueError(
|
83
|
-
"`compartment_id` must be specified for the model version set."
|
84
|
-
)
|
85
|
-
|
86
|
-
if not self.project_id:
|
87
|
-
raise ValueError(
|
88
|
-
"`project_id` must be specified for the model version set."
|
89
|
-
)
|
90
|
-
|
91
|
-
res = self.client.create_model_version_set(
|
92
|
-
self.to_oci_model(CreateModelVersionSetDetails)
|
93
|
-
)
|
94
|
-
self.update_from_oci_model(res.data)
|
95
|
-
|
96
|
-
return self
|
97
|
-
|
98
|
-
def update(self) -> "DataScienceModelVersionSet":
|
99
|
-
"""Updates the Data Science Model Version Set."""
|
100
|
-
res = self.client.update_model_version_set(
|
101
|
-
self.id, self.to_oci_model(UpdateModelVersionSetDetails)
|
102
|
-
)
|
103
|
-
self.update_from_oci_model(res.data)
|
104
|
-
|
105
|
-
return self
|
106
|
-
|
107
|
-
def delete(
|
108
|
-
self, delete_model: Optional[bool] = False
|
109
|
-
) -> "DataScienceModelVersionSet":
|
110
|
-
"""Deletes the model version set.
|
111
|
-
|
112
|
-
Parameters
|
113
|
-
----------
|
114
|
-
delete_model: (bool, optional). Defaults to False.
|
115
|
-
By default, this parameter is false. A model version set can only be
|
116
|
-
deleted if all the models associate with it are already in the DELETED state.
|
117
|
-
You can optionally specify the deleteRelatedModels boolean query parameters to
|
118
|
-
true, which deletes all associated models for you.
|
119
|
-
|
120
|
-
Returns
|
121
|
-
-------
|
122
|
-
DataScienceModelVersionSet
|
123
|
-
The DataScienceModelVersionSet instance (self), which allows chaining additional method.
|
124
|
-
"""
|
125
|
-
response = self.client.delete_model_version_set(
|
126
|
-
self.id, is_delete_related_models=delete_model
|
127
|
-
)
|
128
|
-
self.get_work_request_response(
|
129
|
-
response,
|
130
|
-
wait_for_state=LIFECYCLE_STOP_STATE,
|
131
|
-
success_state="SUCCEEDED",
|
132
|
-
wait_interval_seconds=1,
|
133
|
-
)
|
134
|
-
self.sync()
|
135
|
-
return self
|
136
|
-
|
137
|
-
@classmethod
|
138
|
-
def from_ocid(cls, ocid: str) -> "DataScienceModelVersionSet":
|
139
|
-
"""Gets a Model Version Set by OCID.
|
140
|
-
|
141
|
-
Parameters
|
142
|
-
----------
|
143
|
-
ocid: str
|
144
|
-
The OCID of the model version set.
|
145
|
-
|
146
|
-
Returns
|
147
|
-
-------
|
148
|
-
DataScienceModelVersionSet
|
149
|
-
An instance of DataScienceModelVersionSet.
|
150
|
-
"""
|
151
|
-
return super().from_ocid(ocid)
|
152
|
-
|
153
|
-
@classmethod
|
154
|
-
def from_name(
|
155
|
-
cls, name: str, compartment_id: Optional[str] = None
|
156
|
-
) -> "DataScienceModelVersionSet":
|
157
|
-
"""Gets a Model Version Set by name.
|
158
|
-
|
159
|
-
Parameters
|
160
|
-
----------
|
161
|
-
compartment_id: (str, optional). Defaults to None.
|
162
|
-
Compartment OCID of the OCI resources. If `compartment_id` is not specified,
|
163
|
-
the value will be taken from environment variables.
|
164
|
-
name: str
|
165
|
-
The name of the model version set.
|
166
|
-
|
167
|
-
Returns
|
168
|
-
-------
|
169
|
-
DataScienceModelVersionSet
|
170
|
-
An instance of DataScienceModelVersionSet.
|
171
|
-
"""
|
172
|
-
compartment_id = compartment_id or COMPARTMENT_OCID
|
173
|
-
try:
|
174
|
-
return super().from_name(name=name, compartment_id=compartment_id)
|
175
|
-
except OCIModelNotExists:
|
176
|
-
raise ModelVersionSetNotExists(f"The model version set `{name}` not found.")
|