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.
Files changed (857) hide show
  1. {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/METADATA +151 -151
  2. oracle_ads-2.13.9rc0.dist-info/RECORD +9 -0
  3. {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/WHEEL +2 -1
  4. {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/entry_points.txt +1 -2
  5. oracle_ads-2.13.9rc0.dist-info/top_level.txt +1 -0
  6. ads/aqua/__init__.py +0 -40
  7. ads/aqua/app.py +0 -506
  8. ads/aqua/cli.py +0 -96
  9. ads/aqua/client/__init__.py +0 -3
  10. ads/aqua/client/client.py +0 -836
  11. ads/aqua/client/openai_client.py +0 -305
  12. ads/aqua/common/__init__.py +0 -5
  13. ads/aqua/common/decorator.py +0 -125
  14. ads/aqua/common/entities.py +0 -266
  15. ads/aqua/common/enums.py +0 -122
  16. ads/aqua/common/errors.py +0 -109
  17. ads/aqua/common/utils.py +0 -1285
  18. ads/aqua/config/__init__.py +0 -4
  19. ads/aqua/config/container_config.py +0 -248
  20. ads/aqua/config/evaluation/__init__.py +0 -4
  21. ads/aqua/config/evaluation/evaluation_service_config.py +0 -147
  22. ads/aqua/config/utils/__init__.py +0 -4
  23. ads/aqua/config/utils/serializer.py +0 -339
  24. ads/aqua/constants.py +0 -114
  25. ads/aqua/data.py +0 -14
  26. ads/aqua/dummy_data/icon.txt +0 -1
  27. ads/aqua/dummy_data/oci_model_deployments.json +0 -56
  28. ads/aqua/dummy_data/oci_models.json +0 -1
  29. ads/aqua/dummy_data/readme.md +0 -26
  30. ads/aqua/evaluation/__init__.py +0 -8
  31. ads/aqua/evaluation/constants.py +0 -53
  32. ads/aqua/evaluation/entities.py +0 -186
  33. ads/aqua/evaluation/errors.py +0 -70
  34. ads/aqua/evaluation/evaluation.py +0 -1814
  35. ads/aqua/extension/__init__.py +0 -42
  36. ads/aqua/extension/aqua_ws_msg_handler.py +0 -76
  37. ads/aqua/extension/base_handler.py +0 -90
  38. ads/aqua/extension/common_handler.py +0 -121
  39. ads/aqua/extension/common_ws_msg_handler.py +0 -36
  40. ads/aqua/extension/deployment_handler.py +0 -298
  41. ads/aqua/extension/deployment_ws_msg_handler.py +0 -54
  42. ads/aqua/extension/errors.py +0 -30
  43. ads/aqua/extension/evaluation_handler.py +0 -129
  44. ads/aqua/extension/evaluation_ws_msg_handler.py +0 -61
  45. ads/aqua/extension/finetune_handler.py +0 -96
  46. ads/aqua/extension/model_handler.py +0 -390
  47. ads/aqua/extension/models/__init__.py +0 -0
  48. ads/aqua/extension/models/ws_models.py +0 -145
  49. ads/aqua/extension/models_ws_msg_handler.py +0 -50
  50. ads/aqua/extension/ui_handler.py +0 -282
  51. ads/aqua/extension/ui_websocket_handler.py +0 -130
  52. ads/aqua/extension/utils.py +0 -133
  53. ads/aqua/finetuning/__init__.py +0 -7
  54. ads/aqua/finetuning/constants.py +0 -23
  55. ads/aqua/finetuning/entities.py +0 -181
  56. ads/aqua/finetuning/finetuning.py +0 -731
  57. ads/aqua/model/__init__.py +0 -8
  58. ads/aqua/model/constants.py +0 -60
  59. ads/aqua/model/entities.py +0 -306
  60. ads/aqua/model/enums.py +0 -30
  61. ads/aqua/model/model.py +0 -2079
  62. ads/aqua/modeldeployment/__init__.py +0 -8
  63. ads/aqua/modeldeployment/constants.py +0 -10
  64. ads/aqua/modeldeployment/deployment.py +0 -1324
  65. ads/aqua/modeldeployment/entities.py +0 -653
  66. ads/aqua/modeldeployment/inference.py +0 -74
  67. ads/aqua/modeldeployment/utils.py +0 -543
  68. ads/aqua/resources/gpu_shapes_index.json +0 -94
  69. ads/aqua/server/__init__.py +0 -4
  70. ads/aqua/server/__main__.py +0 -24
  71. ads/aqua/server/app.py +0 -47
  72. ads/aqua/server/aqua_spec.yml +0 -1291
  73. ads/aqua/training/__init__.py +0 -4
  74. ads/aqua/training/exceptions.py +0 -476
  75. ads/aqua/ui.py +0 -499
  76. ads/automl/__init__.py +0 -9
  77. ads/automl/driver.py +0 -330
  78. ads/automl/provider.py +0 -975
  79. ads/bds/__init__.py +0 -5
  80. ads/bds/auth.py +0 -127
  81. ads/bds/big_data_service.py +0 -255
  82. ads/catalog/__init__.py +0 -19
  83. ads/catalog/model.py +0 -1576
  84. ads/catalog/notebook.py +0 -461
  85. ads/catalog/project.py +0 -468
  86. ads/catalog/summary.py +0 -178
  87. ads/common/__init__.py +0 -11
  88. ads/common/analyzer.py +0 -65
  89. ads/common/artifact/.model-ignore +0 -63
  90. ads/common/artifact/__init__.py +0 -10
  91. ads/common/auth.py +0 -1122
  92. ads/common/card_identifier.py +0 -83
  93. ads/common/config.py +0 -647
  94. ads/common/data.py +0 -165
  95. ads/common/decorator/__init__.py +0 -9
  96. ads/common/decorator/argument_to_case.py +0 -88
  97. ads/common/decorator/deprecate.py +0 -69
  98. ads/common/decorator/require_nonempty_arg.py +0 -65
  99. ads/common/decorator/runtime_dependency.py +0 -178
  100. ads/common/decorator/threaded.py +0 -97
  101. ads/common/decorator/utils.py +0 -35
  102. ads/common/dsc_file_system.py +0 -303
  103. ads/common/error.py +0 -14
  104. ads/common/extended_enum.py +0 -81
  105. ads/common/function/__init__.py +0 -5
  106. ads/common/function/fn_util.py +0 -142
  107. ads/common/function/func_conf.yaml +0 -25
  108. ads/common/ipython.py +0 -76
  109. ads/common/model.py +0 -679
  110. ads/common/model_artifact.py +0 -1759
  111. ads/common/model_artifact_schema.json +0 -107
  112. ads/common/model_export_util.py +0 -664
  113. ads/common/model_metadata.py +0 -24
  114. ads/common/object_storage_details.py +0 -296
  115. ads/common/oci_client.py +0 -175
  116. ads/common/oci_datascience.py +0 -46
  117. ads/common/oci_logging.py +0 -1144
  118. ads/common/oci_mixin.py +0 -957
  119. ads/common/oci_resource.py +0 -136
  120. ads/common/serializer.py +0 -559
  121. ads/common/utils.py +0 -1852
  122. ads/common/word_lists.py +0 -1491
  123. ads/common/work_request.py +0 -189
  124. ads/data_labeling/__init__.py +0 -13
  125. ads/data_labeling/boundingbox.py +0 -253
  126. ads/data_labeling/constants.py +0 -47
  127. ads/data_labeling/data_labeling_service.py +0 -244
  128. ads/data_labeling/interface/__init__.py +0 -5
  129. ads/data_labeling/interface/loader.py +0 -16
  130. ads/data_labeling/interface/parser.py +0 -16
  131. ads/data_labeling/interface/reader.py +0 -23
  132. ads/data_labeling/loader/__init__.py +0 -5
  133. ads/data_labeling/loader/file_loader.py +0 -241
  134. ads/data_labeling/metadata.py +0 -110
  135. ads/data_labeling/mixin/__init__.py +0 -5
  136. ads/data_labeling/mixin/data_labeling.py +0 -232
  137. ads/data_labeling/ner.py +0 -129
  138. ads/data_labeling/parser/__init__.py +0 -5
  139. ads/data_labeling/parser/dls_record_parser.py +0 -388
  140. ads/data_labeling/parser/export_metadata_parser.py +0 -94
  141. ads/data_labeling/parser/export_record_parser.py +0 -473
  142. ads/data_labeling/reader/__init__.py +0 -5
  143. ads/data_labeling/reader/dataset_reader.py +0 -574
  144. ads/data_labeling/reader/dls_record_reader.py +0 -121
  145. ads/data_labeling/reader/export_record_reader.py +0 -62
  146. ads/data_labeling/reader/jsonl_reader.py +0 -75
  147. ads/data_labeling/reader/metadata_reader.py +0 -203
  148. ads/data_labeling/reader/record_reader.py +0 -263
  149. ads/data_labeling/record.py +0 -52
  150. ads/data_labeling/visualizer/__init__.py +0 -5
  151. ads/data_labeling/visualizer/image_visualizer.py +0 -525
  152. ads/data_labeling/visualizer/text_visualizer.py +0 -357
  153. ads/database/__init__.py +0 -5
  154. ads/database/connection.py +0 -338
  155. ads/dataset/__init__.py +0 -10
  156. ads/dataset/capabilities.md +0 -51
  157. ads/dataset/classification_dataset.py +0 -339
  158. ads/dataset/correlation.py +0 -226
  159. ads/dataset/correlation_plot.py +0 -563
  160. ads/dataset/dask_series.py +0 -173
  161. ads/dataset/dataframe_transformer.py +0 -110
  162. ads/dataset/dataset.py +0 -1979
  163. ads/dataset/dataset_browser.py +0 -360
  164. ads/dataset/dataset_with_target.py +0 -995
  165. ads/dataset/exception.py +0 -25
  166. ads/dataset/factory.py +0 -987
  167. ads/dataset/feature_engineering_transformer.py +0 -35
  168. ads/dataset/feature_selection.py +0 -107
  169. ads/dataset/forecasting_dataset.py +0 -26
  170. ads/dataset/helper.py +0 -1450
  171. ads/dataset/label_encoder.py +0 -99
  172. ads/dataset/mixin/__init__.py +0 -5
  173. ads/dataset/mixin/dataset_accessor.py +0 -134
  174. ads/dataset/pipeline.py +0 -58
  175. ads/dataset/plot.py +0 -710
  176. ads/dataset/progress.py +0 -86
  177. ads/dataset/recommendation.py +0 -297
  178. ads/dataset/recommendation_transformer.py +0 -502
  179. ads/dataset/regression_dataset.py +0 -14
  180. ads/dataset/sampled_dataset.py +0 -1050
  181. ads/dataset/target.py +0 -98
  182. ads/dataset/timeseries.py +0 -18
  183. ads/dbmixin/__init__.py +0 -5
  184. ads/dbmixin/db_pandas_accessor.py +0 -153
  185. ads/environment/__init__.py +0 -9
  186. ads/environment/ml_runtime.py +0 -66
  187. ads/evaluations/README.md +0 -14
  188. ads/evaluations/__init__.py +0 -109
  189. ads/evaluations/evaluation_plot.py +0 -983
  190. ads/evaluations/evaluator.py +0 -1334
  191. ads/evaluations/statistical_metrics.py +0 -543
  192. ads/experiments/__init__.py +0 -9
  193. ads/experiments/capabilities.md +0 -0
  194. ads/explanations/__init__.py +0 -21
  195. ads/explanations/base_explainer.py +0 -142
  196. ads/explanations/capabilities.md +0 -83
  197. ads/explanations/explainer.py +0 -190
  198. ads/explanations/mlx_global_explainer.py +0 -1050
  199. ads/explanations/mlx_interface.py +0 -386
  200. ads/explanations/mlx_local_explainer.py +0 -287
  201. ads/explanations/mlx_whatif_explainer.py +0 -201
  202. ads/feature_engineering/__init__.py +0 -20
  203. ads/feature_engineering/accessor/__init__.py +0 -5
  204. ads/feature_engineering/accessor/dataframe_accessor.py +0 -535
  205. ads/feature_engineering/accessor/mixin/__init__.py +0 -5
  206. ads/feature_engineering/accessor/mixin/correlation.py +0 -166
  207. ads/feature_engineering/accessor/mixin/eda_mixin.py +0 -266
  208. ads/feature_engineering/accessor/mixin/eda_mixin_series.py +0 -85
  209. ads/feature_engineering/accessor/mixin/feature_types_mixin.py +0 -211
  210. ads/feature_engineering/accessor/mixin/utils.py +0 -65
  211. ads/feature_engineering/accessor/series_accessor.py +0 -431
  212. ads/feature_engineering/adsimage/__init__.py +0 -5
  213. ads/feature_engineering/adsimage/image.py +0 -192
  214. ads/feature_engineering/adsimage/image_reader.py +0 -170
  215. ads/feature_engineering/adsimage/interface/__init__.py +0 -5
  216. ads/feature_engineering/adsimage/interface/reader.py +0 -19
  217. ads/feature_engineering/adsstring/__init__.py +0 -7
  218. ads/feature_engineering/adsstring/oci_language/__init__.py +0 -8
  219. ads/feature_engineering/adsstring/string/__init__.py +0 -8
  220. ads/feature_engineering/data_schema.json +0 -57
  221. ads/feature_engineering/dataset/__init__.py +0 -5
  222. ads/feature_engineering/dataset/zip_code_data.py +0 -42062
  223. ads/feature_engineering/exceptions.py +0 -40
  224. ads/feature_engineering/feature_type/__init__.py +0 -133
  225. ads/feature_engineering/feature_type/address.py +0 -184
  226. ads/feature_engineering/feature_type/adsstring/__init__.py +0 -5
  227. ads/feature_engineering/feature_type/adsstring/common_regex_mixin.py +0 -164
  228. ads/feature_engineering/feature_type/adsstring/oci_language.py +0 -93
  229. ads/feature_engineering/feature_type/adsstring/parsers/__init__.py +0 -5
  230. ads/feature_engineering/feature_type/adsstring/parsers/base.py +0 -47
  231. ads/feature_engineering/feature_type/adsstring/parsers/nltk_parser.py +0 -96
  232. ads/feature_engineering/feature_type/adsstring/parsers/spacy_parser.py +0 -221
  233. ads/feature_engineering/feature_type/adsstring/string.py +0 -258
  234. ads/feature_engineering/feature_type/base.py +0 -58
  235. ads/feature_engineering/feature_type/boolean.py +0 -183
  236. ads/feature_engineering/feature_type/category.py +0 -146
  237. ads/feature_engineering/feature_type/constant.py +0 -137
  238. ads/feature_engineering/feature_type/continuous.py +0 -151
  239. ads/feature_engineering/feature_type/creditcard.py +0 -314
  240. ads/feature_engineering/feature_type/datetime.py +0 -190
  241. ads/feature_engineering/feature_type/discrete.py +0 -134
  242. ads/feature_engineering/feature_type/document.py +0 -43
  243. ads/feature_engineering/feature_type/gis.py +0 -251
  244. ads/feature_engineering/feature_type/handler/__init__.py +0 -5
  245. ads/feature_engineering/feature_type/handler/feature_validator.py +0 -524
  246. ads/feature_engineering/feature_type/handler/feature_warning.py +0 -319
  247. ads/feature_engineering/feature_type/handler/warnings.py +0 -128
  248. ads/feature_engineering/feature_type/integer.py +0 -142
  249. ads/feature_engineering/feature_type/ip_address.py +0 -144
  250. ads/feature_engineering/feature_type/ip_address_v4.py +0 -138
  251. ads/feature_engineering/feature_type/ip_address_v6.py +0 -138
  252. ads/feature_engineering/feature_type/lat_long.py +0 -256
  253. ads/feature_engineering/feature_type/object.py +0 -43
  254. ads/feature_engineering/feature_type/ordinal.py +0 -132
  255. ads/feature_engineering/feature_type/phone_number.py +0 -135
  256. ads/feature_engineering/feature_type/string.py +0 -171
  257. ads/feature_engineering/feature_type/text.py +0 -93
  258. ads/feature_engineering/feature_type/unknown.py +0 -43
  259. ads/feature_engineering/feature_type/zip_code.py +0 -164
  260. ads/feature_engineering/feature_type_manager.py +0 -406
  261. ads/feature_engineering/schema.py +0 -795
  262. ads/feature_engineering/utils.py +0 -245
  263. ads/feature_store/.readthedocs.yaml +0 -19
  264. ads/feature_store/README.md +0 -65
  265. ads/feature_store/__init__.py +0 -9
  266. ads/feature_store/common/__init__.py +0 -0
  267. ads/feature_store/common/enums.py +0 -339
  268. ads/feature_store/common/exceptions.py +0 -18
  269. ads/feature_store/common/spark_session_singleton.py +0 -125
  270. ads/feature_store/common/utils/__init__.py +0 -0
  271. ads/feature_store/common/utils/base64_encoder_decoder.py +0 -72
  272. ads/feature_store/common/utils/feature_schema_mapper.py +0 -283
  273. ads/feature_store/common/utils/transformation_utils.py +0 -82
  274. ads/feature_store/common/utils/utility.py +0 -403
  275. ads/feature_store/data_validation/__init__.py +0 -0
  276. ads/feature_store/data_validation/great_expectation.py +0 -129
  277. ads/feature_store/dataset.py +0 -1230
  278. ads/feature_store/dataset_job.py +0 -530
  279. ads/feature_store/docs/Dockerfile +0 -7
  280. ads/feature_store/docs/Makefile +0 -44
  281. ads/feature_store/docs/conf.py +0 -28
  282. ads/feature_store/docs/requirements.txt +0 -14
  283. ads/feature_store/docs/source/ads.feature_store.query.rst +0 -20
  284. ads/feature_store/docs/source/cicd.rst +0 -137
  285. ads/feature_store/docs/source/conf.py +0 -86
  286. ads/feature_store/docs/source/data_versioning.rst +0 -33
  287. ads/feature_store/docs/source/dataset.rst +0 -388
  288. ads/feature_store/docs/source/dataset_job.rst +0 -27
  289. ads/feature_store/docs/source/demo.rst +0 -70
  290. ads/feature_store/docs/source/entity.rst +0 -78
  291. ads/feature_store/docs/source/feature_group.rst +0 -624
  292. ads/feature_store/docs/source/feature_group_job.rst +0 -29
  293. ads/feature_store/docs/source/feature_store.rst +0 -122
  294. ads/feature_store/docs/source/feature_store_class.rst +0 -123
  295. ads/feature_store/docs/source/feature_validation.rst +0 -66
  296. ads/feature_store/docs/source/figures/cicd.png +0 -0
  297. ads/feature_store/docs/source/figures/data_validation.png +0 -0
  298. ads/feature_store/docs/source/figures/data_versioning.png +0 -0
  299. ads/feature_store/docs/source/figures/dataset.gif +0 -0
  300. ads/feature_store/docs/source/figures/dataset.png +0 -0
  301. ads/feature_store/docs/source/figures/dataset_lineage.png +0 -0
  302. ads/feature_store/docs/source/figures/dataset_statistics.png +0 -0
  303. ads/feature_store/docs/source/figures/dataset_statistics_viz.png +0 -0
  304. ads/feature_store/docs/source/figures/dataset_validation_results.png +0 -0
  305. ads/feature_store/docs/source/figures/dataset_validation_summary.png +0 -0
  306. ads/feature_store/docs/source/figures/drift_monitoring.png +0 -0
  307. ads/feature_store/docs/source/figures/entity.png +0 -0
  308. ads/feature_store/docs/source/figures/feature_group.png +0 -0
  309. ads/feature_store/docs/source/figures/feature_group_lineage.png +0 -0
  310. ads/feature_store/docs/source/figures/feature_group_statistics_viz.png +0 -0
  311. ads/feature_store/docs/source/figures/feature_store_deployment.png +0 -0
  312. ads/feature_store/docs/source/figures/feature_store_overview.png +0 -0
  313. ads/feature_store/docs/source/figures/featuregroup.gif +0 -0
  314. ads/feature_store/docs/source/figures/lineage_d1.png +0 -0
  315. ads/feature_store/docs/source/figures/lineage_d2.png +0 -0
  316. ads/feature_store/docs/source/figures/lineage_fg.png +0 -0
  317. ads/feature_store/docs/source/figures/logo-dark-mode.png +0 -0
  318. ads/feature_store/docs/source/figures/logo-light-mode.png +0 -0
  319. ads/feature_store/docs/source/figures/overview.png +0 -0
  320. ads/feature_store/docs/source/figures/resource_manager.png +0 -0
  321. ads/feature_store/docs/source/figures/resource_manager_feature_store_stack.png +0 -0
  322. ads/feature_store/docs/source/figures/resource_manager_home.png +0 -0
  323. ads/feature_store/docs/source/figures/stats_1.png +0 -0
  324. ads/feature_store/docs/source/figures/stats_2.png +0 -0
  325. ads/feature_store/docs/source/figures/stats_d.png +0 -0
  326. ads/feature_store/docs/source/figures/stats_fg.png +0 -0
  327. ads/feature_store/docs/source/figures/transformation.png +0 -0
  328. ads/feature_store/docs/source/figures/transformations.gif +0 -0
  329. ads/feature_store/docs/source/figures/validation.png +0 -0
  330. ads/feature_store/docs/source/figures/validation_fg.png +0 -0
  331. ads/feature_store/docs/source/figures/validation_results.png +0 -0
  332. ads/feature_store/docs/source/figures/validation_summary.png +0 -0
  333. ads/feature_store/docs/source/index.rst +0 -81
  334. ads/feature_store/docs/source/module.rst +0 -8
  335. ads/feature_store/docs/source/notebook.rst +0 -94
  336. ads/feature_store/docs/source/overview.rst +0 -47
  337. ads/feature_store/docs/source/quickstart.rst +0 -176
  338. ads/feature_store/docs/source/release_notes.rst +0 -194
  339. ads/feature_store/docs/source/setup_feature_store.rst +0 -81
  340. ads/feature_store/docs/source/statistics.rst +0 -58
  341. ads/feature_store/docs/source/transformation.rst +0 -199
  342. ads/feature_store/docs/source/ui.rst +0 -65
  343. ads/feature_store/docs/source/user_guides.setup.feature_store_operator.rst +0 -66
  344. ads/feature_store/docs/source/user_guides.setup.helm_chart.rst +0 -192
  345. ads/feature_store/docs/source/user_guides.setup.terraform.rst +0 -338
  346. ads/feature_store/entity.py +0 -718
  347. ads/feature_store/execution_strategy/__init__.py +0 -0
  348. ads/feature_store/execution_strategy/delta_lake/__init__.py +0 -0
  349. ads/feature_store/execution_strategy/delta_lake/delta_lake_service.py +0 -375
  350. ads/feature_store/execution_strategy/engine/__init__.py +0 -0
  351. ads/feature_store/execution_strategy/engine/spark_engine.py +0 -316
  352. ads/feature_store/execution_strategy/execution_strategy.py +0 -113
  353. ads/feature_store/execution_strategy/execution_strategy_provider.py +0 -47
  354. ads/feature_store/execution_strategy/spark/__init__.py +0 -0
  355. ads/feature_store/execution_strategy/spark/spark_execution.py +0 -618
  356. ads/feature_store/feature.py +0 -192
  357. ads/feature_store/feature_group.py +0 -1494
  358. ads/feature_store/feature_group_expectation.py +0 -346
  359. ads/feature_store/feature_group_job.py +0 -602
  360. ads/feature_store/feature_lineage/__init__.py +0 -0
  361. ads/feature_store/feature_lineage/graphviz_service.py +0 -180
  362. ads/feature_store/feature_option_details.py +0 -50
  363. ads/feature_store/feature_statistics/__init__.py +0 -0
  364. ads/feature_store/feature_statistics/statistics_service.py +0 -99
  365. ads/feature_store/feature_store.py +0 -699
  366. ads/feature_store/feature_store_registrar.py +0 -518
  367. ads/feature_store/input_feature_detail.py +0 -149
  368. ads/feature_store/mixin/__init__.py +0 -4
  369. ads/feature_store/mixin/oci_feature_store.py +0 -145
  370. ads/feature_store/model_details.py +0 -73
  371. ads/feature_store/query/__init__.py +0 -0
  372. ads/feature_store/query/filter.py +0 -266
  373. ads/feature_store/query/generator/__init__.py +0 -0
  374. ads/feature_store/query/generator/query_generator.py +0 -298
  375. ads/feature_store/query/join.py +0 -161
  376. ads/feature_store/query/query.py +0 -403
  377. ads/feature_store/query/validator/__init__.py +0 -0
  378. ads/feature_store/query/validator/query_validator.py +0 -57
  379. ads/feature_store/response/__init__.py +0 -0
  380. ads/feature_store/response/response_builder.py +0 -68
  381. ads/feature_store/service/__init__.py +0 -0
  382. ads/feature_store/service/oci_dataset.py +0 -139
  383. ads/feature_store/service/oci_dataset_job.py +0 -199
  384. ads/feature_store/service/oci_entity.py +0 -125
  385. ads/feature_store/service/oci_feature_group.py +0 -164
  386. ads/feature_store/service/oci_feature_group_job.py +0 -214
  387. ads/feature_store/service/oci_feature_store.py +0 -182
  388. ads/feature_store/service/oci_lineage.py +0 -87
  389. ads/feature_store/service/oci_transformation.py +0 -104
  390. ads/feature_store/statistics/__init__.py +0 -0
  391. ads/feature_store/statistics/abs_feature_value.py +0 -49
  392. ads/feature_store/statistics/charts/__init__.py +0 -0
  393. ads/feature_store/statistics/charts/abstract_feature_plot.py +0 -37
  394. ads/feature_store/statistics/charts/box_plot.py +0 -148
  395. ads/feature_store/statistics/charts/frequency_distribution.py +0 -65
  396. ads/feature_store/statistics/charts/probability_distribution.py +0 -68
  397. ads/feature_store/statistics/charts/top_k_frequent_elements.py +0 -98
  398. ads/feature_store/statistics/feature_stat.py +0 -126
  399. ads/feature_store/statistics/generic_feature_value.py +0 -33
  400. ads/feature_store/statistics/statistics.py +0 -41
  401. ads/feature_store/statistics_config.py +0 -101
  402. ads/feature_store/templates/feature_store_template.yaml +0 -45
  403. ads/feature_store/transformation.py +0 -499
  404. ads/feature_store/validation_output.py +0 -57
  405. ads/hpo/__init__.py +0 -9
  406. ads/hpo/_imports.py +0 -91
  407. ads/hpo/ads_search_space.py +0 -439
  408. ads/hpo/distributions.py +0 -325
  409. ads/hpo/objective.py +0 -280
  410. ads/hpo/search_cv.py +0 -1657
  411. ads/hpo/stopping_criterion.py +0 -75
  412. ads/hpo/tuner_artifact.py +0 -413
  413. ads/hpo/utils.py +0 -91
  414. ads/hpo/validation.py +0 -140
  415. ads/hpo/visualization/__init__.py +0 -5
  416. ads/hpo/visualization/_contour.py +0 -23
  417. ads/hpo/visualization/_edf.py +0 -20
  418. ads/hpo/visualization/_intermediate_values.py +0 -21
  419. ads/hpo/visualization/_optimization_history.py +0 -25
  420. ads/hpo/visualization/_parallel_coordinate.py +0 -169
  421. ads/hpo/visualization/_param_importances.py +0 -26
  422. ads/jobs/__init__.py +0 -53
  423. ads/jobs/ads_job.py +0 -663
  424. ads/jobs/builders/__init__.py +0 -5
  425. ads/jobs/builders/base.py +0 -156
  426. ads/jobs/builders/infrastructure/__init__.py +0 -6
  427. ads/jobs/builders/infrastructure/base.py +0 -165
  428. ads/jobs/builders/infrastructure/dataflow.py +0 -1252
  429. ads/jobs/builders/infrastructure/dsc_job.py +0 -1894
  430. ads/jobs/builders/infrastructure/dsc_job_runtime.py +0 -1233
  431. ads/jobs/builders/infrastructure/utils.py +0 -65
  432. ads/jobs/builders/runtimes/__init__.py +0 -5
  433. ads/jobs/builders/runtimes/artifact.py +0 -338
  434. ads/jobs/builders/runtimes/base.py +0 -325
  435. ads/jobs/builders/runtimes/container_runtime.py +0 -242
  436. ads/jobs/builders/runtimes/python_runtime.py +0 -1016
  437. ads/jobs/builders/runtimes/pytorch_runtime.py +0 -204
  438. ads/jobs/cli.py +0 -104
  439. ads/jobs/env_var_parser.py +0 -131
  440. ads/jobs/extension.py +0 -160
  441. ads/jobs/schema/__init__.py +0 -5
  442. ads/jobs/schema/infrastructure_schema.json +0 -116
  443. ads/jobs/schema/job_schema.json +0 -42
  444. ads/jobs/schema/runtime_schema.json +0 -183
  445. ads/jobs/schema/validator.py +0 -141
  446. ads/jobs/serializer.py +0 -296
  447. ads/jobs/templates/__init__.py +0 -5
  448. ads/jobs/templates/container.py +0 -6
  449. ads/jobs/templates/driver_notebook.py +0 -177
  450. ads/jobs/templates/driver_oci.py +0 -500
  451. ads/jobs/templates/driver_python.py +0 -48
  452. ads/jobs/templates/driver_pytorch.py +0 -852
  453. ads/jobs/templates/driver_utils.py +0 -615
  454. ads/jobs/templates/hostname_from_env.c +0 -55
  455. ads/jobs/templates/oci_metrics.py +0 -181
  456. ads/jobs/utils.py +0 -104
  457. ads/llm/__init__.py +0 -28
  458. ads/llm/autogen/__init__.py +0 -2
  459. ads/llm/autogen/constants.py +0 -15
  460. ads/llm/autogen/reports/__init__.py +0 -2
  461. ads/llm/autogen/reports/base.py +0 -67
  462. ads/llm/autogen/reports/data.py +0 -103
  463. ads/llm/autogen/reports/session.py +0 -526
  464. ads/llm/autogen/reports/templates/chat_box.html +0 -13
  465. ads/llm/autogen/reports/templates/chat_box_lt.html +0 -5
  466. ads/llm/autogen/reports/templates/chat_box_rt.html +0 -6
  467. ads/llm/autogen/reports/utils.py +0 -56
  468. ads/llm/autogen/v02/__init__.py +0 -4
  469. ads/llm/autogen/v02/client.py +0 -295
  470. ads/llm/autogen/v02/log_handlers/__init__.py +0 -2
  471. ads/llm/autogen/v02/log_handlers/oci_file_handler.py +0 -83
  472. ads/llm/autogen/v02/loggers/__init__.py +0 -6
  473. ads/llm/autogen/v02/loggers/metric_logger.py +0 -320
  474. ads/llm/autogen/v02/loggers/session_logger.py +0 -580
  475. ads/llm/autogen/v02/loggers/utils.py +0 -86
  476. ads/llm/autogen/v02/runtime_logging.py +0 -163
  477. ads/llm/chain.py +0 -268
  478. ads/llm/chat_template.py +0 -31
  479. ads/llm/deploy.py +0 -63
  480. ads/llm/guardrails/__init__.py +0 -5
  481. ads/llm/guardrails/base.py +0 -442
  482. ads/llm/guardrails/huggingface.py +0 -44
  483. ads/llm/langchain/__init__.py +0 -5
  484. ads/llm/langchain/plugins/__init__.py +0 -5
  485. ads/llm/langchain/plugins/chat_models/__init__.py +0 -5
  486. ads/llm/langchain/plugins/chat_models/oci_data_science.py +0 -1027
  487. ads/llm/langchain/plugins/embeddings/__init__.py +0 -4
  488. ads/llm/langchain/plugins/embeddings/oci_data_science_model_deployment_endpoint.py +0 -184
  489. ads/llm/langchain/plugins/llms/__init__.py +0 -5
  490. ads/llm/langchain/plugins/llms/oci_data_science_model_deployment_endpoint.py +0 -979
  491. ads/llm/requirements.txt +0 -3
  492. ads/llm/serialize.py +0 -219
  493. ads/llm/serializers/__init__.py +0 -0
  494. ads/llm/serializers/retrieval_qa.py +0 -153
  495. ads/llm/serializers/runnable_parallel.py +0 -27
  496. ads/llm/templates/score_chain.jinja2 +0 -155
  497. ads/llm/templates/tool_chat_template_hermes.jinja +0 -130
  498. ads/llm/templates/tool_chat_template_mistral_parallel.jinja +0 -94
  499. ads/model/__init__.py +0 -52
  500. ads/model/artifact.py +0 -573
  501. ads/model/artifact_downloader.py +0 -254
  502. ads/model/artifact_uploader.py +0 -267
  503. ads/model/base_properties.py +0 -238
  504. ads/model/common/.model-ignore +0 -66
  505. ads/model/common/__init__.py +0 -5
  506. ads/model/common/utils.py +0 -142
  507. ads/model/datascience_model.py +0 -2635
  508. ads/model/deployment/__init__.py +0 -20
  509. ads/model/deployment/common/__init__.py +0 -5
  510. ads/model/deployment/common/utils.py +0 -308
  511. ads/model/deployment/model_deployer.py +0 -466
  512. ads/model/deployment/model_deployment.py +0 -1846
  513. ads/model/deployment/model_deployment_infrastructure.py +0 -671
  514. ads/model/deployment/model_deployment_properties.py +0 -493
  515. ads/model/deployment/model_deployment_runtime.py +0 -838
  516. ads/model/extractor/__init__.py +0 -5
  517. ads/model/extractor/automl_extractor.py +0 -74
  518. ads/model/extractor/embedding_onnx_extractor.py +0 -80
  519. ads/model/extractor/huggingface_extractor.py +0 -88
  520. ads/model/extractor/keras_extractor.py +0 -84
  521. ads/model/extractor/lightgbm_extractor.py +0 -93
  522. ads/model/extractor/model_info_extractor.py +0 -114
  523. ads/model/extractor/model_info_extractor_factory.py +0 -105
  524. ads/model/extractor/pytorch_extractor.py +0 -87
  525. ads/model/extractor/sklearn_extractor.py +0 -112
  526. ads/model/extractor/spark_extractor.py +0 -89
  527. ads/model/extractor/tensorflow_extractor.py +0 -85
  528. ads/model/extractor/xgboost_extractor.py +0 -94
  529. ads/model/framework/__init__.py +0 -5
  530. ads/model/framework/automl_model.py +0 -178
  531. ads/model/framework/embedding_onnx_model.py +0 -438
  532. ads/model/framework/huggingface_model.py +0 -399
  533. ads/model/framework/lightgbm_model.py +0 -266
  534. ads/model/framework/pytorch_model.py +0 -266
  535. ads/model/framework/sklearn_model.py +0 -250
  536. ads/model/framework/spark_model.py +0 -326
  537. ads/model/framework/tensorflow_model.py +0 -254
  538. ads/model/framework/xgboost_model.py +0 -258
  539. ads/model/generic_model.py +0 -3518
  540. ads/model/model_artifact_boilerplate/README.md +0 -381
  541. ads/model/model_artifact_boilerplate/__init__.py +0 -5
  542. ads/model/model_artifact_boilerplate/artifact_introspection_test/__init__.py +0 -5
  543. ads/model/model_artifact_boilerplate/artifact_introspection_test/model_artifact_validate.py +0 -427
  544. ads/model/model_artifact_boilerplate/artifact_introspection_test/requirements.txt +0 -2
  545. ads/model/model_artifact_boilerplate/runtime.yaml +0 -7
  546. ads/model/model_artifact_boilerplate/score.py +0 -61
  547. ads/model/model_file_description_schema.json +0 -68
  548. ads/model/model_introspect.py +0 -331
  549. ads/model/model_metadata.py +0 -1810
  550. ads/model/model_metadata_mixin.py +0 -460
  551. ads/model/model_properties.py +0 -63
  552. ads/model/model_version_set.py +0 -739
  553. ads/model/runtime/__init__.py +0 -5
  554. ads/model/runtime/env_info.py +0 -306
  555. ads/model/runtime/model_deployment_details.py +0 -37
  556. ads/model/runtime/model_provenance_details.py +0 -58
  557. ads/model/runtime/runtime_info.py +0 -81
  558. ads/model/runtime/schemas/inference_env_info_schema.yaml +0 -16
  559. ads/model/runtime/schemas/model_provenance_schema.yaml +0 -36
  560. ads/model/runtime/schemas/training_env_info_schema.yaml +0 -16
  561. ads/model/runtime/utils.py +0 -201
  562. ads/model/serde/__init__.py +0 -5
  563. ads/model/serde/common.py +0 -40
  564. ads/model/serde/model_input.py +0 -547
  565. ads/model/serde/model_serializer.py +0 -1184
  566. ads/model/service/__init__.py +0 -5
  567. ads/model/service/oci_datascience_model.py +0 -1076
  568. ads/model/service/oci_datascience_model_deployment.py +0 -500
  569. ads/model/service/oci_datascience_model_version_set.py +0 -176
  570. ads/model/transformer/__init__.py +0 -5
  571. ads/model/transformer/onnx_transformer.py +0 -324
  572. ads/mysqldb/__init__.py +0 -5
  573. ads/mysqldb/mysql_db.py +0 -227
  574. ads/opctl/__init__.py +0 -18
  575. ads/opctl/anomaly_detection.py +0 -11
  576. ads/opctl/backend/__init__.py +0 -5
  577. ads/opctl/backend/ads_dataflow.py +0 -353
  578. ads/opctl/backend/ads_ml_job.py +0 -710
  579. ads/opctl/backend/ads_ml_pipeline.py +0 -164
  580. ads/opctl/backend/ads_model_deployment.py +0 -209
  581. ads/opctl/backend/base.py +0 -146
  582. ads/opctl/backend/local.py +0 -1053
  583. ads/opctl/backend/marketplace/__init__.py +0 -9
  584. ads/opctl/backend/marketplace/helm_helper.py +0 -173
  585. ads/opctl/backend/marketplace/local_marketplace.py +0 -271
  586. ads/opctl/backend/marketplace/marketplace_backend_runner.py +0 -71
  587. ads/opctl/backend/marketplace/marketplace_operator_interface.py +0 -44
  588. ads/opctl/backend/marketplace/marketplace_operator_runner.py +0 -24
  589. ads/opctl/backend/marketplace/marketplace_utils.py +0 -212
  590. ads/opctl/backend/marketplace/models/__init__.py +0 -5
  591. ads/opctl/backend/marketplace/models/bearer_token.py +0 -94
  592. ads/opctl/backend/marketplace/models/marketplace_type.py +0 -70
  593. ads/opctl/backend/marketplace/models/ocir_details.py +0 -56
  594. ads/opctl/backend/marketplace/prerequisite_checker.py +0 -238
  595. ads/opctl/cli.py +0 -707
  596. ads/opctl/cmds.py +0 -869
  597. ads/opctl/conda/__init__.py +0 -5
  598. ads/opctl/conda/cli.py +0 -193
  599. ads/opctl/conda/cmds.py +0 -749
  600. ads/opctl/conda/config.yaml +0 -34
  601. ads/opctl/conda/manifest_template.yaml +0 -13
  602. ads/opctl/conda/multipart_uploader.py +0 -188
  603. ads/opctl/conda/pack.py +0 -89
  604. ads/opctl/config/__init__.py +0 -5
  605. ads/opctl/config/base.py +0 -57
  606. ads/opctl/config/diagnostics/__init__.py +0 -5
  607. ads/opctl/config/diagnostics/distributed/default_requirements_config.yaml +0 -62
  608. ads/opctl/config/merger.py +0 -255
  609. ads/opctl/config/resolver.py +0 -297
  610. ads/opctl/config/utils.py +0 -79
  611. ads/opctl/config/validator.py +0 -17
  612. ads/opctl/config/versioner.py +0 -68
  613. ads/opctl/config/yaml_parsers/__init__.py +0 -7
  614. ads/opctl/config/yaml_parsers/base.py +0 -58
  615. ads/opctl/config/yaml_parsers/distributed/__init__.py +0 -7
  616. ads/opctl/config/yaml_parsers/distributed/yaml_parser.py +0 -201
  617. ads/opctl/constants.py +0 -66
  618. ads/opctl/decorator/__init__.py +0 -5
  619. ads/opctl/decorator/common.py +0 -129
  620. ads/opctl/diagnostics/__init__.py +0 -5
  621. ads/opctl/diagnostics/__main__.py +0 -25
  622. ads/opctl/diagnostics/check_distributed_job_requirements.py +0 -212
  623. ads/opctl/diagnostics/check_requirements.py +0 -144
  624. ads/opctl/diagnostics/requirement_exception.py +0 -9
  625. ads/opctl/distributed/README.md +0 -109
  626. ads/opctl/distributed/__init__.py +0 -5
  627. ads/opctl/distributed/certificates.py +0 -32
  628. ads/opctl/distributed/cli.py +0 -207
  629. ads/opctl/distributed/cmds.py +0 -731
  630. ads/opctl/distributed/common/__init__.py +0 -5
  631. ads/opctl/distributed/common/abstract_cluster_provider.py +0 -449
  632. ads/opctl/distributed/common/abstract_framework_spec_builder.py +0 -88
  633. ads/opctl/distributed/common/cluster_config_helper.py +0 -103
  634. ads/opctl/distributed/common/cluster_provider_factory.py +0 -21
  635. ads/opctl/distributed/common/cluster_runner.py +0 -54
  636. ads/opctl/distributed/common/framework_factory.py +0 -29
  637. ads/opctl/docker/Dockerfile.job +0 -103
  638. ads/opctl/docker/Dockerfile.job.arm +0 -107
  639. ads/opctl/docker/Dockerfile.job.gpu +0 -175
  640. ads/opctl/docker/base-env.yaml +0 -13
  641. ads/opctl/docker/cuda.repo +0 -6
  642. ads/opctl/docker/operator/.dockerignore +0 -0
  643. ads/opctl/docker/operator/Dockerfile +0 -41
  644. ads/opctl/docker/operator/Dockerfile.gpu +0 -85
  645. ads/opctl/docker/operator/cuda.repo +0 -6
  646. ads/opctl/docker/operator/environment.yaml +0 -8
  647. ads/opctl/forecast.py +0 -11
  648. ads/opctl/index.yaml +0 -3
  649. ads/opctl/model/__init__.py +0 -5
  650. ads/opctl/model/cli.py +0 -65
  651. ads/opctl/model/cmds.py +0 -73
  652. ads/opctl/operator/README.md +0 -4
  653. ads/opctl/operator/__init__.py +0 -31
  654. ads/opctl/operator/cli.py +0 -344
  655. ads/opctl/operator/cmd.py +0 -596
  656. ads/opctl/operator/common/__init__.py +0 -5
  657. ads/opctl/operator/common/backend_factory.py +0 -460
  658. ads/opctl/operator/common/const.py +0 -27
  659. ads/opctl/operator/common/data/synthetic.csv +0 -16001
  660. ads/opctl/operator/common/dictionary_merger.py +0 -148
  661. ads/opctl/operator/common/errors.py +0 -42
  662. ads/opctl/operator/common/operator_config.py +0 -99
  663. ads/opctl/operator/common/operator_loader.py +0 -811
  664. ads/opctl/operator/common/operator_schema.yaml +0 -130
  665. ads/opctl/operator/common/operator_yaml_generator.py +0 -152
  666. ads/opctl/operator/common/utils.py +0 -208
  667. ads/opctl/operator/lowcode/__init__.py +0 -5
  668. ads/opctl/operator/lowcode/anomaly/MLoperator +0 -16
  669. ads/opctl/operator/lowcode/anomaly/README.md +0 -207
  670. ads/opctl/operator/lowcode/anomaly/__init__.py +0 -5
  671. ads/opctl/operator/lowcode/anomaly/__main__.py +0 -103
  672. ads/opctl/operator/lowcode/anomaly/cmd.py +0 -35
  673. ads/opctl/operator/lowcode/anomaly/const.py +0 -167
  674. ads/opctl/operator/lowcode/anomaly/environment.yaml +0 -10
  675. ads/opctl/operator/lowcode/anomaly/model/__init__.py +0 -5
  676. ads/opctl/operator/lowcode/anomaly/model/anomaly_dataset.py +0 -146
  677. ads/opctl/operator/lowcode/anomaly/model/anomaly_merlion.py +0 -162
  678. ads/opctl/operator/lowcode/anomaly/model/automlx.py +0 -99
  679. ads/opctl/operator/lowcode/anomaly/model/autots.py +0 -115
  680. ads/opctl/operator/lowcode/anomaly/model/base_model.py +0 -404
  681. ads/opctl/operator/lowcode/anomaly/model/factory.py +0 -110
  682. ads/opctl/operator/lowcode/anomaly/model/isolationforest.py +0 -78
  683. ads/opctl/operator/lowcode/anomaly/model/oneclasssvm.py +0 -78
  684. ads/opctl/operator/lowcode/anomaly/model/randomcutforest.py +0 -120
  685. ads/opctl/operator/lowcode/anomaly/model/tods.py +0 -119
  686. ads/opctl/operator/lowcode/anomaly/operator_config.py +0 -127
  687. ads/opctl/operator/lowcode/anomaly/schema.yaml +0 -401
  688. ads/opctl/operator/lowcode/anomaly/utils.py +0 -88
  689. ads/opctl/operator/lowcode/common/__init__.py +0 -5
  690. ads/opctl/operator/lowcode/common/const.py +0 -10
  691. ads/opctl/operator/lowcode/common/data.py +0 -116
  692. ads/opctl/operator/lowcode/common/errors.py +0 -47
  693. ads/opctl/operator/lowcode/common/transformations.py +0 -296
  694. ads/opctl/operator/lowcode/common/utils.py +0 -293
  695. ads/opctl/operator/lowcode/feature_store_marketplace/MLoperator +0 -13
  696. ads/opctl/operator/lowcode/feature_store_marketplace/README.md +0 -30
  697. ads/opctl/operator/lowcode/feature_store_marketplace/__init__.py +0 -5
  698. ads/opctl/operator/lowcode/feature_store_marketplace/__main__.py +0 -116
  699. ads/opctl/operator/lowcode/feature_store_marketplace/cmd.py +0 -85
  700. ads/opctl/operator/lowcode/feature_store_marketplace/const.py +0 -15
  701. ads/opctl/operator/lowcode/feature_store_marketplace/environment.yaml +0 -0
  702. ads/opctl/operator/lowcode/feature_store_marketplace/models/__init__.py +0 -4
  703. ads/opctl/operator/lowcode/feature_store_marketplace/models/apigw_config.py +0 -32
  704. ads/opctl/operator/lowcode/feature_store_marketplace/models/db_config.py +0 -43
  705. ads/opctl/operator/lowcode/feature_store_marketplace/models/mysql_config.py +0 -120
  706. ads/opctl/operator/lowcode/feature_store_marketplace/models/serializable_yaml_model.py +0 -34
  707. ads/opctl/operator/lowcode/feature_store_marketplace/operator_utils.py +0 -386
  708. ads/opctl/operator/lowcode/feature_store_marketplace/schema.yaml +0 -160
  709. ads/opctl/operator/lowcode/forecast/MLoperator +0 -25
  710. ads/opctl/operator/lowcode/forecast/README.md +0 -209
  711. ads/opctl/operator/lowcode/forecast/__init__.py +0 -5
  712. ads/opctl/operator/lowcode/forecast/__main__.py +0 -89
  713. ads/opctl/operator/lowcode/forecast/cmd.py +0 -40
  714. ads/opctl/operator/lowcode/forecast/const.py +0 -92
  715. ads/opctl/operator/lowcode/forecast/environment.yaml +0 -20
  716. ads/opctl/operator/lowcode/forecast/errors.py +0 -26
  717. ads/opctl/operator/lowcode/forecast/model/__init__.py +0 -5
  718. ads/opctl/operator/lowcode/forecast/model/arima.py +0 -279
  719. ads/opctl/operator/lowcode/forecast/model/automlx.py +0 -542
  720. ads/opctl/operator/lowcode/forecast/model/autots.py +0 -312
  721. ads/opctl/operator/lowcode/forecast/model/base_model.py +0 -863
  722. ads/opctl/operator/lowcode/forecast/model/factory.py +0 -106
  723. ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py +0 -492
  724. ads/opctl/operator/lowcode/forecast/model/ml_forecast.py +0 -243
  725. ads/opctl/operator/lowcode/forecast/model/neuralprophet.py +0 -486
  726. ads/opctl/operator/lowcode/forecast/model/prophet.py +0 -445
  727. ads/opctl/operator/lowcode/forecast/model_evaluator.py +0 -244
  728. ads/opctl/operator/lowcode/forecast/operator_config.py +0 -234
  729. ads/opctl/operator/lowcode/forecast/schema.yaml +0 -506
  730. ads/opctl/operator/lowcode/forecast/utils.py +0 -413
  731. ads/opctl/operator/lowcode/forecast/whatifserve/__init__.py +0 -7
  732. ads/opctl/operator/lowcode/forecast/whatifserve/deployment_manager.py +0 -285
  733. ads/opctl/operator/lowcode/forecast/whatifserve/score.py +0 -246
  734. ads/opctl/operator/lowcode/pii/MLoperator +0 -17
  735. ads/opctl/operator/lowcode/pii/README.md +0 -208
  736. ads/opctl/operator/lowcode/pii/__init__.py +0 -5
  737. ads/opctl/operator/lowcode/pii/__main__.py +0 -78
  738. ads/opctl/operator/lowcode/pii/cmd.py +0 -39
  739. ads/opctl/operator/lowcode/pii/constant.py +0 -84
  740. ads/opctl/operator/lowcode/pii/environment.yaml +0 -17
  741. ads/opctl/operator/lowcode/pii/errors.py +0 -27
  742. ads/opctl/operator/lowcode/pii/model/__init__.py +0 -5
  743. ads/opctl/operator/lowcode/pii/model/factory.py +0 -82
  744. ads/opctl/operator/lowcode/pii/model/guardrails.py +0 -167
  745. ads/opctl/operator/lowcode/pii/model/pii.py +0 -145
  746. ads/opctl/operator/lowcode/pii/model/processor/__init__.py +0 -34
  747. ads/opctl/operator/lowcode/pii/model/processor/email_replacer.py +0 -34
  748. ads/opctl/operator/lowcode/pii/model/processor/mbi_replacer.py +0 -35
  749. ads/opctl/operator/lowcode/pii/model/processor/name_replacer.py +0 -225
  750. ads/opctl/operator/lowcode/pii/model/processor/number_replacer.py +0 -73
  751. ads/opctl/operator/lowcode/pii/model/processor/remover.py +0 -26
  752. ads/opctl/operator/lowcode/pii/model/report.py +0 -487
  753. ads/opctl/operator/lowcode/pii/operator_config.py +0 -95
  754. ads/opctl/operator/lowcode/pii/schema.yaml +0 -108
  755. ads/opctl/operator/lowcode/pii/utils.py +0 -43
  756. ads/opctl/operator/lowcode/recommender/MLoperator +0 -16
  757. ads/opctl/operator/lowcode/recommender/README.md +0 -206
  758. ads/opctl/operator/lowcode/recommender/__init__.py +0 -5
  759. ads/opctl/operator/lowcode/recommender/__main__.py +0 -82
  760. ads/opctl/operator/lowcode/recommender/cmd.py +0 -33
  761. ads/opctl/operator/lowcode/recommender/constant.py +0 -30
  762. ads/opctl/operator/lowcode/recommender/environment.yaml +0 -11
  763. ads/opctl/operator/lowcode/recommender/model/base_model.py +0 -212
  764. ads/opctl/operator/lowcode/recommender/model/factory.py +0 -56
  765. ads/opctl/operator/lowcode/recommender/model/recommender_dataset.py +0 -25
  766. ads/opctl/operator/lowcode/recommender/model/svd.py +0 -106
  767. ads/opctl/operator/lowcode/recommender/operator_config.py +0 -81
  768. ads/opctl/operator/lowcode/recommender/schema.yaml +0 -265
  769. ads/opctl/operator/lowcode/recommender/utils.py +0 -13
  770. ads/opctl/operator/runtime/__init__.py +0 -5
  771. ads/opctl/operator/runtime/const.py +0 -17
  772. ads/opctl/operator/runtime/container_runtime_schema.yaml +0 -50
  773. ads/opctl/operator/runtime/marketplace_runtime.py +0 -50
  774. ads/opctl/operator/runtime/python_marketplace_runtime_schema.yaml +0 -21
  775. ads/opctl/operator/runtime/python_runtime_schema.yaml +0 -21
  776. ads/opctl/operator/runtime/runtime.py +0 -115
  777. ads/opctl/schema.yaml.yml +0 -36
  778. ads/opctl/script.py +0 -40
  779. ads/opctl/spark/__init__.py +0 -5
  780. ads/opctl/spark/cli.py +0 -43
  781. ads/opctl/spark/cmds.py +0 -147
  782. ads/opctl/templates/diagnostic_report_template.jinja2 +0 -102
  783. ads/opctl/utils.py +0 -344
  784. ads/oracledb/__init__.py +0 -5
  785. ads/oracledb/oracle_db.py +0 -346
  786. ads/pipeline/__init__.py +0 -39
  787. ads/pipeline/ads_pipeline.py +0 -2279
  788. ads/pipeline/ads_pipeline_run.py +0 -772
  789. ads/pipeline/ads_pipeline_step.py +0 -605
  790. ads/pipeline/builders/__init__.py +0 -5
  791. ads/pipeline/builders/infrastructure/__init__.py +0 -5
  792. ads/pipeline/builders/infrastructure/custom_script.py +0 -32
  793. ads/pipeline/cli.py +0 -119
  794. ads/pipeline/extension.py +0 -291
  795. ads/pipeline/schema/__init__.py +0 -5
  796. ads/pipeline/schema/cs_step_schema.json +0 -35
  797. ads/pipeline/schema/ml_step_schema.json +0 -31
  798. ads/pipeline/schema/pipeline_schema.json +0 -71
  799. ads/pipeline/visualizer/__init__.py +0 -5
  800. ads/pipeline/visualizer/base.py +0 -570
  801. ads/pipeline/visualizer/graph_renderer.py +0 -272
  802. ads/pipeline/visualizer/text_renderer.py +0 -84
  803. ads/secrets/__init__.py +0 -11
  804. ads/secrets/adb.py +0 -386
  805. ads/secrets/auth_token.py +0 -86
  806. ads/secrets/big_data_service.py +0 -365
  807. ads/secrets/mysqldb.py +0 -149
  808. ads/secrets/oracledb.py +0 -160
  809. ads/secrets/secrets.py +0 -407
  810. ads/telemetry/__init__.py +0 -7
  811. ads/telemetry/base.py +0 -69
  812. ads/telemetry/client.py +0 -125
  813. ads/telemetry/telemetry.py +0 -257
  814. ads/templates/dataflow_pyspark.jinja2 +0 -13
  815. ads/templates/dataflow_sparksql.jinja2 +0 -22
  816. ads/templates/func.jinja2 +0 -20
  817. ads/templates/schemas/openapi.json +0 -1740
  818. ads/templates/score-pkl.jinja2 +0 -173
  819. ads/templates/score.jinja2 +0 -322
  820. ads/templates/score_embedding_onnx.jinja2 +0 -202
  821. ads/templates/score_generic.jinja2 +0 -165
  822. ads/templates/score_huggingface_pipeline.jinja2 +0 -217
  823. ads/templates/score_lightgbm.jinja2 +0 -185
  824. ads/templates/score_onnx.jinja2 +0 -407
  825. ads/templates/score_onnx_new.jinja2 +0 -473
  826. ads/templates/score_oracle_automl.jinja2 +0 -185
  827. ads/templates/score_pyspark.jinja2 +0 -154
  828. ads/templates/score_pytorch.jinja2 +0 -219
  829. ads/templates/score_scikit-learn.jinja2 +0 -184
  830. ads/templates/score_tensorflow.jinja2 +0 -184
  831. ads/templates/score_xgboost.jinja2 +0 -178
  832. ads/text_dataset/__init__.py +0 -5
  833. ads/text_dataset/backends.py +0 -211
  834. ads/text_dataset/dataset.py +0 -445
  835. ads/text_dataset/extractor.py +0 -207
  836. ads/text_dataset/options.py +0 -53
  837. ads/text_dataset/udfs.py +0 -22
  838. ads/text_dataset/utils.py +0 -49
  839. ads/type_discovery/__init__.py +0 -9
  840. ads/type_discovery/abstract_detector.py +0 -21
  841. ads/type_discovery/constant_detector.py +0 -41
  842. ads/type_discovery/continuous_detector.py +0 -54
  843. ads/type_discovery/credit_card_detector.py +0 -99
  844. ads/type_discovery/datetime_detector.py +0 -92
  845. ads/type_discovery/discrete_detector.py +0 -118
  846. ads/type_discovery/document_detector.py +0 -146
  847. ads/type_discovery/ip_detector.py +0 -68
  848. ads/type_discovery/latlon_detector.py +0 -90
  849. ads/type_discovery/phone_number_detector.py +0 -63
  850. ads/type_discovery/type_discovery_driver.py +0 -87
  851. ads/type_discovery/typed_feature.py +0 -594
  852. ads/type_discovery/unknown_detector.py +0 -41
  853. ads/type_discovery/zipcode_detector.py +0 -48
  854. ads/vault/__init__.py +0 -7
  855. ads/vault/vault.py +0 -237
  856. oracle_ads-2.13.7.dist-info/RECORD +0 -858
  857. {oracle_ads-2.13.7.dist-info → oracle_ads-2.13.9rc0.dist-info}/licenses/LICENSE.txt +0 -0
ads/automl/provider.py DELETED
@@ -1,975 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8; -*-
3
-
4
- # Copyright (c) 2020, 2023 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 logging
8
- import time
9
- import sys
10
- import warnings
11
- from abc import ABC, abstractmethod, abstractproperty
12
- import math
13
- import pandas as pd
14
- import numpy as np
15
- from sklearn import set_config
16
- from sklearn.dummy import DummyClassifier, DummyRegressor
17
-
18
- import matplotlib.pyplot as plt
19
-
20
- import ads
21
- from ads.common.utils import (
22
- ml_task_types,
23
- wrap_lines,
24
- is_documentation_mode,
25
- is_notebook,
26
- )
27
- from ads.common.decorator.runtime_dependency import (
28
- runtime_dependency,
29
- OptionalDependency,
30
- )
31
- from ads.common.decorator.deprecate import deprecated
32
- from ads.dataset.label_encoder import DataFrameLabelEncoder
33
- from ads.dataset.helper import is_text_data
34
-
35
- from ads.common import logger, utils
36
-
37
-
38
- class AutoMLProvider(ABC):
39
- """
40
- Abstract Base Class defining the structure of an AutoML solution. The solution needs to
41
- implement train() and get_transformer_pipeline().
42
- """
43
-
44
- @deprecated(
45
- details="Working with AutoML has moved from within ADS to working directly with the AutoMLx library. AutoMLx are preinstalled in conda pack automlx_p38_cpu_v2 and later, and can now be updated independently of ADS. AutoMLx documentation may be found at https://docs.oracle.com/en-us/iaas/tools/automlx/latest/html/multiversion/v23.1.1/index.html. Notebook examples are in Oracle's samples repository: https://github.com/oracle-samples/oci-data-science-ai-samples/tree/master/notebook_examples and a migration tutorial can be found at https://accelerated-data-science.readthedocs.io/en/latest/user_guide/model_training/automl/quick_start.html .",
46
- raise_error=True,
47
- )
48
- def __init__(self):
49
- self.X_train = None
50
- self.y_train = None
51
- self.X_valid = None
52
- self.y_valid = None
53
- self.client = None
54
- self.ml_task_type = None
55
- self.class_names = None
56
- self.transformer_pipeline = None
57
- self.est = None
58
-
59
- def setup(
60
- self,
61
- X_train,
62
- y_train,
63
- ml_task_type,
64
- X_valid=None,
65
- y_valid=None,
66
- class_names=None,
67
- client=None,
68
- ):
69
- """
70
- Setup arguments to the AutoML instance.
71
-
72
- Parameters
73
- ----------
74
- X_train : DataFrame
75
- Training features
76
- y_train : DataFrame
77
- Training labels
78
- ml_task_type : One of ml_task_type.{REGRESSION,BINARY_CLASSIFICATION,
79
- MULTI_CLASS_CLASSIFICATION,BINARY_TEXT_CLASSIFICATION,MULTI_CLASS_TEXT_CLASSIFICATION}
80
- X_valid : DataFrame
81
- Validation features
82
- y_valid : DataFrame
83
- Validation labels
84
- class_names : list
85
- Unique values in y_train
86
- client : object
87
- Dask client instance for distributed execution
88
- """
89
- self.X_train = X_train
90
- self.y_train = y_train
91
- self.X_valid = X_valid
92
- self.y_valid = y_valid
93
- self.ml_task_type = ml_task_type
94
- self.client = client
95
- self.class_names = class_names
96
-
97
- @property
98
- def est(self):
99
- """
100
- Returns the estimator.
101
-
102
- The estimator can be a standard sklearn estimator or any object that implement methods from
103
- (BaseEstimator, RegressorMixin) for regression or (BaseEstimator, ClassifierMixin) for classification.
104
-
105
- Returns
106
- -------
107
- est : An instance of estimator
108
- """
109
- return self.__est
110
-
111
- @est.setter
112
- def est(self, est):
113
- self.__est = est
114
-
115
- @abstractmethod
116
- def train(self, **kwargs):
117
- """
118
- Calls fit on estimator.
119
-
120
- This method is expected to set the 'est' property.
121
-
122
- Parameters
123
- ----------
124
- kwargs: dict, optional
125
- kwargs to decide the estimator and arguments for the fit method
126
- """
127
- pass
128
-
129
- @abstractmethod
130
- def get_transformer_pipeline(self):
131
- """
132
- Returns a list of transformers representing the transformations done on data before model prediction.
133
-
134
- This method is optional to implement, and is used only for visualizing transformations on data using
135
- ADSModel#visualize_transforms().
136
-
137
- Returns
138
- -------
139
- transformers_list : list of transformers implementing fit and transform
140
- """
141
- pass
142
-
143
-
144
- class BaselineModel(object):
145
- """
146
- A BaselineModel object that supports fit/predict/predict_proba/transform
147
- interface. Labels (y) are encoded using DataFrameLabelEncoder.
148
- """
149
-
150
- @deprecated(
151
- details="Working with AutoML has moved from within ADS to working directly with the AutoMLx library. AutoMLx are preinstalled in conda pack automlx_p38_cpu_v2 and later, and can now be updated independently of ADS. AutoMLx documentation may be found at https://docs.oracle.com/en-us/iaas/tools/automlx/latest/html/multiversion/v23.1.1/index.html. Notebook examples are in Oracle's samples repository: https://github.com/oracle-samples/oci-data-science-ai-samples/tree/master/notebook_examples and a migration tutorial can be found at https://accelerated-data-science.readthedocs.io/en/latest/user_guide/model_training/automl/quick_start.html .",
152
- raise_error=True,
153
- )
154
- def __init__(self, est):
155
- self.est = est
156
- self.df_label_encoder = DataFrameLabelEncoder()
157
-
158
- def predict(self, X):
159
-
160
- """
161
- Runs the Baselines predict function and returns the result.
162
-
163
- Parameters
164
- ----------
165
- X: Dataframe or list-like
166
- A Dataframe or list-like object holding data to be predicted on
167
-
168
- Returns
169
- -------
170
- List: A list of predictions performed on the input data.
171
- """
172
-
173
- X = self.transform(X)
174
- return self.est.predict(X)
175
-
176
- def predict_proba(self, X):
177
-
178
- """
179
- Runs the Baselines predict_proba function and returns the result.
180
-
181
- Parameters
182
- ----------
183
- X: Dataframe or list-like
184
- A Dataframe or list-like object holding data to be predicted on
185
-
186
- Returns
187
- -------
188
- List: A list of probabilities of being part of a class
189
- """
190
-
191
- X = self.transform(X)
192
- return self.est.predict_proba(X)
193
-
194
- def fit(self, X, y):
195
-
196
- """
197
- Fits the baseline estimator.
198
-
199
- Parameters
200
- ----------
201
- X: Dataframe or list-like
202
- A Dataframe or list-like object holding data to be predicted on
203
- Y: Dataframe, Series, or list-like
204
- A Dataframe, series, or list-like object holding the labels
205
-
206
-
207
- Returns
208
- -------
209
- estimator: The fitted estimator
210
- """
211
-
212
- self.est.fit(X, y)
213
- return self
214
-
215
- def transform(self, X):
216
-
217
- """
218
- Runs the Baselines transform function and returns the result.
219
-
220
- Parameters
221
- ---------
222
- X: Dataframe or list-like
223
- A Dataframe or list-like object holding data to be transformed
224
-
225
- Returns
226
- -------
227
- Dataframe or list-like: The transformed Dataframe. Currently, no transformation is performed by the default Baseline Estimator.
228
- """
229
-
230
- return X
231
-
232
- def __getattr__(self, item):
233
- return getattr(self.est, item)
234
-
235
- def __getstate__(self):
236
- return self.__dict__
237
-
238
- def __setstate__(self, state):
239
- self.__dict__ = state
240
-
241
- def __repr__(self):
242
- set_config()
243
- return str(self.est)[:-2]
244
-
245
-
246
- class BaselineAutoMLProvider(AutoMLProvider):
247
- def get_transformer_pipeline(self):
248
- """
249
- Returns a list of transformers representing the transformations done on data before model prediction.
250
-
251
- This method is used only for visualizing transformations on data using
252
- ADSModel#visualize_transforms().
253
-
254
- Returns
255
- -------
256
- transformers_list : list of transformers implementing fit and transform
257
- """
258
- msg = "Baseline"
259
- return [("automl_preprocessing", AutoMLPreprocessingTransformer(msg))]
260
-
261
- @deprecated(
262
- details="Working with AutoML has moved from within ADS to working directly with the AutoMLx library. AutoMLx are preinstalled in conda pack automlx_p38_cpu_v2 and later, and can now be updated independently of ADS. AutoMLx documentation may be found at https://docs.oracle.com/en-us/iaas/tools/automlx/latest/html/multiversion/v23.1.1/index.html. Notebook examples are in Oracle's samples repository: https://github.com/oracle-samples/oci-data-science-ai-samples/tree/master/notebook_examples and a migration tutorial can be found at https://accelerated-data-science.readthedocs.io/en/latest/user_guide/model_training/automl/quick_start.html .",
263
- raise_error=True,
264
- )
265
- def __init__(self, est):
266
- """
267
- Generates a baseline model using the Zero Rule algorithm by default. For a classification
268
- predictive modeling problem where a categorical value is predicted, the Zero
269
- Rule algorithm predicts the class value that has the most observations in the training dataset.
270
-
271
- Parameters
272
- ----------
273
- est : BaselineModel
274
- An estimator that supports the fit/predict/predict_proba interface.
275
- By default, DummyClassifier/DummyRegressor are used as estimators
276
- """
277
- super(BaselineAutoMLProvider, self).__init__()
278
- self.est = est
279
-
280
- def __repr__(self):
281
- set_config()
282
- return str(self.est)[:-2]
283
-
284
- def train(self, **kwargs):
285
- self.est = self.decide_estimator(**kwargs)
286
- if self.est is None:
287
- raise ValueError(
288
- "Baseline model for (%s) is not supported" % self.ml_task_type
289
- )
290
- try:
291
- self.est.fit(self.X_train, self.y_train)
292
- except Exception as e:
293
- warning_message = f"The baseline estimator failed to fit the data. It could not evaluate {self.est} and gave the exception {e}."
294
- logger.warning(warning_message)
295
-
296
- def decide_estimator(self, **kwargs):
297
- """
298
- Decides which type of BaselineModel to generate.
299
-
300
- Returns
301
- -------
302
- Modell: BaselineModel
303
- A baseline model generated for the particular ML task being performed
304
- """
305
- if self.est is not None:
306
- return self.est
307
- else:
308
- if self.ml_task_type == ml_task_types.REGRESSION:
309
- return BaselineModel(DummyRegressor())
310
- elif self.ml_task_type in [
311
- ml_task_types.BINARY_CLASSIFICATION,
312
- ml_task_types.MULTI_CLASS_CLASSIFICATION,
313
- ml_task_types.BINARY_TEXT_CLASSIFICATION,
314
- ml_task_types.MULTI_CLASS_TEXT_CLASSIFICATION,
315
- ]:
316
- return BaselineModel(DummyClassifier())
317
-
318
-
319
- # An installation of oracle labs automl is required only for this class
320
- class OracleAutoMLProvider(AutoMLProvider, ABC):
321
- @deprecated(
322
- "2.6.7",
323
- details="Oracle AutoML is recommended to be directly instantiated by importing automlx package",
324
- raise_error=True,
325
- )
326
- def __init__(
327
- self, n_jobs=-1, loglevel=None, logger_override=None, model_n_jobs: int = 1
328
- ):
329
- """
330
- The Oracle AutoML Provider automatically provides a tuned ML pipeline that best models the given a training
331
- dataset and a prediction task at hand.
332
-
333
- Parameters
334
- ----------
335
- n_jobs : int
336
- Specifies the degree of parallelism for Oracle AutoML. -1 (default) means that AutoML will use all
337
- available cores.
338
- loglevel : int
339
- The verbosity of output for Oracle AutoML. Can be specified using the Python logging module
340
- (https://docs.python.org/3/library/logging.html#logging-levels).
341
- model_n_jobs: (optional, int). Defaults to 1.
342
- Specifies the model parallelism used by AutoML.
343
- This will be passed to the underlying model it is training.
344
- """
345
- try:
346
- self.automl = __import__("automl")
347
- self.cpuinfo = __import__("cpuinfo")
348
- except ModuleNotFoundError as e:
349
- utils._log_missing_module("automl", "ads[labs]")
350
- raise e
351
- super(OracleAutoMLProvider, self).__init__()
352
- if loglevel is None:
353
- loglevel = logging.DEBUG if ads.debug_mode else logging.ERROR
354
-
355
- self.automl.init(
356
- engine="local",
357
- engine_opts={"n_jobs": n_jobs, "model_n_jobs": model_n_jobs},
358
- logger=logger_override,
359
- loglevel=loglevel,
360
- )
361
-
362
- def __repr__(self):
363
- super(OracleAutoMLProvider, self).__repr__()
364
-
365
- def get_transformer_pipeline(self):
366
- """
367
- Returns a list of transformers representing the transformations done on data before model prediction.
368
-
369
- This method is used only for visualizing transformations on data using
370
- ADSModel#visualize_transforms().
371
-
372
- Returns
373
- -------
374
- transformers_list : list of transformers implementing fit and transform
375
- """
376
- if hasattr(self.est, "text") and not self.est.text:
377
- msg1 = wrap_lines(
378
- self.est.selected_features_names_, heading="Select features:"
379
- )
380
- return [("automl_feature_selection", AutoMLFeatureSelection(msg1))]
381
- else:
382
- msg = "Apply Tfidf Vectorization\n"
383
- msg += "Normalize features\n"
384
- msg += "Label encode target"
385
- return [("automl_preprocessing", AutoMLPreprocessingTransformer(msg))]
386
-
387
- def selected_model_name(self):
388
- """
389
- Return the name of the selected model by AutoML.
390
- """
391
- return self.est.selected_model_
392
-
393
- @runtime_dependency(module="IPython", install_from=OptionalDependency.NOTEBOOK)
394
- def print_summary(
395
- self,
396
- max_rows=None,
397
- sort_column="Mean Validation Score",
398
- ranking_table_only=False,
399
- ):
400
- """
401
- Prints a summary of the Oracle AutoML Pipeline in the last train() call.
402
-
403
- Parameters
404
- ----------
405
- max_rows : int
406
- Number of trials to print. Pass in None to print all trials
407
- sort_column: string
408
- Column to sort results by. Must be one of ['Algorithm', '#Samples', '#Features', 'Mean Validation Score',
409
- 'Hyperparameters', 'All Validation Scores', 'CPU Time']
410
- ranking_table_only: bool
411
- Table to be displayed. Pass in False to display the complete table.
412
- Pass in True to display the ranking table only.
413
-
414
- """
415
- if is_notebook(): # pragma: no cover
416
- logger.info(
417
- f"Training time was ({(time.time() - self.train_start_time):.2f} seconds.)"
418
- )
419
-
420
- if len(self.est.tuning_trials_) == 0 or len(self.est.train_shape_) == 0:
421
- logger.error(
422
- "Unfortunately, there were no trials found, so we cannot visualize it."
423
- )
424
- return
425
-
426
- info = [
427
- ["Training Dataset size", self.X_train.shape],
428
- [
429
- "Validation Dataset size",
430
- self.X_valid.shape if self.X_valid is not None else None,
431
- ],
432
- ["CV", self.est.num_cv_folds_],
433
- ["Target variable", self.y_train.name],
434
- ["Optimization Metric", self.est.inferred_score_metric],
435
- ["Initial number of Features", self.est.train_shape_[1]],
436
- ["Selected number of Features", len(self.est.selected_features_names_)],
437
- ["Selected Features", self.est.selected_features_names_],
438
- ["Selected Algorithm", self.est.selected_model_],
439
- [
440
- "End-to-end Elapsed Time (seconds)",
441
- self.train_end_time - self.train_start_time,
442
- ],
443
- ["Selected Hyperparameters", self.est.selected_model_params_],
444
- ["Mean Validation Score", self.est.tuning_trials_[0][3]],
445
- ["AutoML n_jobs", self.est.n_jobs_],
446
- ["AutoML version", self.automl.__version__],
447
- ["Python version", sys.version],
448
- ]
449
- info_df = pd.DataFrame(info)
450
-
451
- # Remove the selected model and its params from the trials since it already shows up in the summary table
452
- all_trials_ = (
453
- self.est.model_selection_trials_
454
- + self.est.adaptive_sampling_trials_
455
- + self.est.feature_selection_trials_
456
- + self.est.tuning_trials_[1:]
457
- )
458
- col_names = [
459
- "Algorithm",
460
- "#Samples",
461
- "#Features",
462
- "Mean Validation Score",
463
- "Hyperparameters",
464
- "All Validation Scores",
465
- "CPU Time",
466
- "Memory Usage",
467
- ]
468
- if ranking_table_only:
469
- dropped_cols = [
470
- "#Samples",
471
- "#Features",
472
- "All Validation Scores",
473
- "CPU Time",
474
- ]
475
- else:
476
- dropped_cols = "All Validation Scores"
477
- summary_df = pd.DataFrame(all_trials_, columns=col_names).drop(
478
- dropped_cols, axis=1
479
- )
480
- sorted_summary_df = summary_df.sort_values(sort_column, ascending=False)
481
- # Add a rank column at the front
482
- sorted_summary_df.insert(
483
- 0, "Rank based on Performance", np.arange(2, len(sorted_summary_df) + 2)
484
- )
485
-
486
- from IPython.core.display import display, HTML
487
-
488
- with pd.option_context(
489
- "display.max_colwidth",
490
- 1000,
491
- "display.width",
492
- None,
493
- "display.precision",
494
- 4,
495
- ):
496
- display(HTML(info_df.to_html(index=False, header=False)))
497
- if max_rows is None:
498
- display(HTML(sorted_summary_df.to_html(index=False)))
499
- else:
500
- display(
501
- HTML(sorted_summary_df.to_html(index=False, max_rows=max_rows))
502
- )
503
-
504
- def train(self, **kwargs):
505
- """
506
- Train the Oracle AutoML Pipeline. This looks at the training data, and
507
- identifies the best set of features, the best algorithm and the best
508
- set of hyperparameters for this data. A model is then generated, trained
509
- on this data and returned.
510
-
511
- Parameters
512
- ----------
513
- score_metric : str, callable
514
- Score function (or loss function) with signature ``score_func(y, y_pred, **kwargs)`` or string specified as
515
- https://scikit-learn.org/stable/modules/model_evaluation.html#common-cases-predefined-values
516
- random_state : int
517
- Random seed used by AutoML
518
- model_list : list of str
519
- Models that will be evaluated by the Pipeline. Supported models:
520
- - Classification: AdaBoostClassifier, DecisionTreeClassifier,
521
- ExtraTreesClassifier, KNeighborsClassifier,
522
- LGBMClassifier, LinearSVC, LogisticRegression,
523
- RandomForestClassifier, SVC, XGBClassifier
524
- - Regression: AdaBoostRegressor, DecisionTreeRegressor,
525
- ExtraTreesRegressor, KNeighborsRegressor,
526
- LGBMRegressor, LinearSVR, LinearRegression, RandomForestRegressor,
527
- SVR, XGBRegressor
528
- time_budget : float, optional
529
- Time budget in seconds where 0 means no time budget constraint (best effort)
530
- min_features : int, float, list, optional (default: 1)
531
- Minimum number of features to keep. Acceptable values:
532
- - If int, 0 < min_features <= n_features
533
- - If float, 0 < min_features <= 1.0
534
- - If list, names of features to keep, for example ['a', 'b'] means keep features 'a' and 'b'
535
-
536
- Returns
537
- -------
538
- self : object
539
- """
540
-
541
- """Adding this part to give the correct error for situations when dataset > 10000 rows and user tries SVC or KNN"""
542
- if len(self.X_train) > 10000:
543
- if "model_list" in kwargs:
544
- bad_model_list = ["SVC", "KNeighborsClassifier"]
545
- for model in kwargs["model_list"]:
546
- for item in bad_model_list:
547
- if item in model:
548
- raise ValueError(
549
- "SVC, KNeighborsClassifier are disabled for datasets with > 10K samples"
550
- )
551
-
552
- self.train_start_time = time.time()
553
-
554
- self.time_budget = kwargs.pop("time_budget", 0) # 0 means unlimited
555
-
556
- self.col_types = kwargs.pop("col_types", None)
557
-
558
- self.est = self._decide_estimator(**kwargs)
559
- with warnings.catch_warnings():
560
- warnings.simplefilter("ignore")
561
- self.est.fit(
562
- self.X_train,
563
- self.y_train,
564
- X_valid=self.X_valid,
565
- y_valid=self.y_valid,
566
- time_budget=self.time_budget,
567
- col_types=self.col_types,
568
- )
569
- self.train_end_time = time.time()
570
- self.print_summary(max_rows=10)
571
-
572
- def print_trials(self, max_rows=None, sort_column="Mean Validation Score"):
573
- """
574
- Prints all trials executed by the Oracle AutoML Pipeline in the last train() call.
575
-
576
- Parameters
577
- ----------
578
- max_rows : int
579
- Number of trials to print. Pass in None to print all trials
580
- sort_column: string
581
- Column to sort results by. Must be one of ['Algorithm', '#Samples', '#Features', 'Mean Validation Score',
582
- 'Hyperparameters', 'All Validation Scores', 'CPU Time']
583
-
584
- """
585
- self.est.print_trials(max_rows=max_rows, sort_column=sort_column)
586
-
587
- def _decide_estimator(self, **kwargs):
588
- """
589
- Decide arguments to the Oracle AutoML pipeline based on user provided
590
- arguments
591
- """
592
- est = None
593
- score_metric = None
594
- # Explicity define the default AutoML metrics
595
- if (
596
- self.ml_task_type == ml_task_types.BINARY_CLASSIFICATION
597
- or self.ml_task_type == ml_task_types.BINARY_TEXT_CLASSIFICATION
598
- ):
599
- test_model_list = ["LogisticRegression"]
600
- elif (
601
- self.ml_task_type == ml_task_types.MULTI_CLASS_CLASSIFICATION
602
- or self.ml_task_type == ml_task_types.MULTI_CLASS_TEXT_CLASSIFICATION
603
- ):
604
- test_model_list = ["LogisticRegression"]
605
- elif self.ml_task_type == ml_task_types.REGRESSION:
606
- test_model_list = ["LinearRegression"]
607
- else:
608
- raise ValueError("AutoML for (%s) is not supported" % self.ml_task_type)
609
-
610
- # Respect the user provided scoring metric if given
611
- if "score_metric" in kwargs:
612
- score_metric = kwargs.pop("score_metric")
613
-
614
- #
615
- # ***FOR TESTING PURPOSE ONLY***
616
- #
617
- # Ignore model_list for test mode
618
- if ads.test_mode: # pragma: no cover
619
- if "model_list" in kwargs:
620
- _ = kwargs.pop("model_list")
621
- kwargs["model_list"] = test_model_list
622
-
623
- if (
624
- self.ml_task_type == ml_task_types.BINARY_CLASSIFICATION
625
- or self.ml_task_type == ml_task_types.MULTI_CLASS_CLASSIFICATION
626
- ):
627
- est = self.automl.Pipeline(
628
- task="classification", score_metric=score_metric, **kwargs
629
- )
630
- elif (
631
- self.ml_task_type == ml_task_types.BINARY_TEXT_CLASSIFICATION
632
- or self.ml_task_type == ml_task_types.MULTI_CLASS_TEXT_CLASSIFICATION
633
- ):
634
- est = self.automl.Pipeline(
635
- task="classification", score_metric=score_metric, **kwargs
636
- )
637
- if not self.col_types:
638
- if len(self.X_train.columns) == 1:
639
- self.col_types = ["text"]
640
- elif len(self.X_train.columns) == 2:
641
- self.col_types = ["text", "text"]
642
- else:
643
- raise ValueError(
644
- "We detected a text classification problem. Pass "
645
- "in `col_types = [<type of column1>, <type of column2>, ...]`."
646
- " Valid types are: ['categorical', 'numerical', 'text', 'datetime',"
647
- " 'timedelta']."
648
- )
649
-
650
- elif self.ml_task_type == ml_task_types.REGRESSION:
651
- est = self.automl.Pipeline(
652
- task="regression", score_metric=score_metric, **kwargs
653
- )
654
- else:
655
- raise ValueError("AutoML for (%s) is not supported" % self.ml_task_type)
656
- return est
657
-
658
- def selected_score_label(self):
659
- """
660
- Return the name of score_metric used in train.
661
-
662
- """
663
- score_label = self.est.score_metric
664
- if score_label is None:
665
- score_label = self.est.inferred_score_metric
666
- return score_label
667
-
668
- @runtime_dependency(module="scipy", install_from=OptionalDependency.VIZ)
669
- def visualize_algorithm_selection_trials(self, ylabel=None):
670
- """
671
- Plot the scores predicted by Algorithm Selection for each algorithm. The
672
- horizontal line shows the average score across all algorithms. Algorithms
673
- below the line are colored turquoise, whereas those with a score higher
674
- than the mean are colored teal. The orange bar shows the algorithm with
675
- the highest predicted score. The error bar is +/- one standard error.
676
-
677
- Parameters
678
- ----------
679
- ylabel : str,
680
- Label for the y-axis. Defaults to the scoring metric.
681
- """
682
- if ylabel is None:
683
- ylabel = self.selected_score_label().capitalize()
684
- trials = self.est.model_selection_trials_
685
- if not len(trials):
686
- _log_visualize_no_trials("algorithm selection")
687
- return
688
- fig, ax = plt.subplots(1, figsize=(6, 3))
689
- colors = []
690
- y_error = []
691
- mean_scores, models, cvscores = [], [], []
692
- for (
693
- algorithm,
694
- samples,
695
- features,
696
- mean_score,
697
- hyperparameters,
698
- all_scores,
699
- runtime,
700
- x,
701
- ) in trials:
702
- mean_scores.append(mean_score)
703
- models.append(algorithm)
704
- cvscores.append(all_scores)
705
- mean_scores_ser = pd.Series(mean_scores, index=models).sort_values(
706
- ascending=False
707
- )
708
- scores_ser = pd.Series(cvscores, index=models)
709
- ax.set_title("Algorithm Selection Trials")
710
- ax.set_ylabel(ylabel)
711
- ax.set_xlabel("Algorithm")
712
- for f in mean_scores_ser.keys():
713
- se = scipy.stats.sem(scores_ser[f], ddof=1)
714
- y_error.append(se)
715
- if f == "{}_AS".format(self.est.selected_model_):
716
- colors.append("orange")
717
- elif mean_scores_ser[f] >= mean_scores_ser.mean():
718
- colors.append("teal")
719
- else:
720
- colors.append("turquoise")
721
- mean_scores_ser.plot.bar(ax=ax, color=colors, edgecolor="black", zorder=1)
722
- ax.errorbar(
723
- x=mean_scores_ser.index.values,
724
- y=mean_scores_ser.values,
725
- yerr=y_error,
726
- fmt="none",
727
- capsize=4,
728
- color="black",
729
- zorder=0,
730
- )
731
- ax.axhline(y=mean_scores_ser.mean(), color="black", linewidth=0.5)
732
- ax.autoscale_view()
733
- plt.show()
734
-
735
- def visualize_adaptive_sampling_trials(self):
736
- """
737
- Visualize the trials for Adaptive Sampling.
738
- """
739
- trials = self.est.adaptive_sampling_trials_
740
- if len(trials) == 0:
741
- _log_visualize_no_trials("adaptive sampling")
742
- return
743
- fig, ax = plt.subplots(1, figsize=(6, 3))
744
- ax.set_title("Adaptive Sampling ({})".format(trials[0][0]))
745
- ax.set_xlabel("Dataset sample size")
746
- ax.set_ylabel(r"Predicted model score")
747
- scores = [
748
- mean_score
749
- for (
750
- algorithm,
751
- samples,
752
- features,
753
- mean_score,
754
- hyperparameters,
755
- all_scores,
756
- runtime,
757
- x,
758
- ) in trials
759
- ]
760
- n_samples = [
761
- samples
762
- for (
763
- algorithm,
764
- samples,
765
- features,
766
- mean_score,
767
- hyperparameters,
768
- all_scores,
769
- runtime,
770
- x,
771
- ) in trials
772
- ]
773
- y_margin = 0.10 * (max(scores) - min(scores))
774
- ax.grid(color="g", linestyle="-", linewidth=0.1)
775
- ax.set_ylim(min(scores) - y_margin, max(scores) + y_margin)
776
- ax.plot(n_samples, scores, "k:", marker="s", color="teal", markersize=3)
777
- plt.show()
778
-
779
- def visualize_feature_selection_trials(self, ylabel=None):
780
- """
781
- Visualize the feature selection trials taken to arrive at optimal set of
782
- features. The orange line shows the optimal number of features chosen
783
- by Feature Selection.
784
-
785
- Parameters
786
- ----------
787
- ylabel : str,
788
- Label for the y-axis. Defaults to the scoring metric.
789
- """
790
- if ylabel is None:
791
- ylabel = self.selected_score_label().capitalize()
792
- trials = self.est.feature_selection_trials_
793
- if len(trials) == 0:
794
- _log_visualize_no_trials("feature selection")
795
- return
796
- fig, ax = plt.subplots(1, figsize=(6, 3))
797
- ax.set_title("Feature Selection Trials")
798
- ax.set_xlabel("Number of Features")
799
- ax.set_ylabel(ylabel)
800
- scores = [
801
- mean_score
802
- for (
803
- algorithm,
804
- samples,
805
- features,
806
- mean_score,
807
- hyperparameters,
808
- all_scores,
809
- runtime,
810
- x,
811
- ) in trials
812
- ]
813
- n_features = [
814
- features
815
- for (
816
- algorithm,
817
- samples,
818
- features,
819
- mean_score,
820
- hyperparameters,
821
- all_scores,
822
- runtime,
823
- x,
824
- ) in trials
825
- ]
826
- y_margin = 0.10 * (max(scores) - min(scores))
827
- ax.grid(color="g", linestyle="-", linewidth=0.1)
828
- ax.set_ylim(min(scores) - y_margin, max(scores) + y_margin)
829
- ax.plot(n_features, scores, "k:", marker="s", color="teal", markersize=3)
830
- ax.axvline(
831
- x=len(self.est.selected_features_names_), color="orange", linewidth=2.0
832
- )
833
- plt.show()
834
-
835
- def visualize_tuning_trials(self, ylabel=None):
836
- """
837
- Visualize (plot) the hyperparamter tuning trials taken to arrive at the optimal
838
- hyper parameters. Each trial in the plot represents a particular
839
- hyperparamter combination.
840
-
841
- Parameters
842
- ----------
843
- ylabel : str,
844
- Label for the y-axis. Defaults to the scoring metric.
845
- """
846
- if ylabel is None:
847
- ylabel = self.selected_score_label().capitalize()
848
- # scores in trials are sorted decreasingly.
849
- # reversed(trails) : let the scores sort in increasing order from left to right.
850
- scores = [
851
- mean_score
852
- for (
853
- algorithm,
854
- samples,
855
- features,
856
- mean_score,
857
- hyperparameters,
858
- all_scores,
859
- runtime,
860
- x,
861
- ) in reversed(self.est.tuning_trials_)
862
- if mean_score and not np.isnan(mean_score)
863
- ]
864
- if not len(scores) > 1:
865
- raise RuntimeError("Insufficient tuning trials.")
866
- else:
867
- fig, ax = plt.subplots(1, figsize=(6, 3))
868
- ax.set_title("Hyperparameter Tuning Trials")
869
- ax.set_xlabel("Iteration $n$")
870
- ax.set_ylabel(ylabel)
871
- y_margin = 0.10 * (max(scores) - min(scores))
872
- ax.grid(color="g", linestyle="-", linewidth=0.1)
873
- ax.set_ylim(min(scores) - y_margin, max(scores) + y_margin)
874
- ax.plot(
875
- range(1, len(scores) + 1),
876
- scores,
877
- "k:",
878
- marker="s",
879
- color="teal",
880
- markersize=3,
881
- )
882
- plt.show()
883
-
884
-
885
- class AutoMLPreprocessingTransformer(object): # pragma: no cover
886
- @deprecated(
887
- details="Working with AutoML has moved from within ADS to working directly with the AutoMLx library. AutoMLx are preinstalled in conda pack automlx_p38_cpu_v2 and later, and can now be updated independently of ADS. AutoMLx documentation may be found at https://docs.oracle.com/en-us/iaas/tools/automlx/latest/html/multiversion/v23.1.1/index.html. Notebook examples are in Oracle's samples repository: https://github.com/oracle-samples/oci-data-science-ai-samples/tree/master/notebook_examples and a migration tutorial can be found at https://accelerated-data-science.readthedocs.io/en/latest/user_guide/model_training/automl/quick_start.html .",
888
- raise_error=True,
889
- )
890
- def __init__(self, msg):
891
- self.msg = msg
892
-
893
- def fit(self, X):
894
- """
895
- Fits the preprocessing Transformer
896
-
897
- Parameters
898
- ----------
899
- X: Dataframe or list-like
900
- A Dataframe or list-like object holding data to be predicted on
901
-
902
- Returns
903
- -------
904
- Self: Estimator
905
- The fitted estimator
906
- """
907
- return self
908
-
909
- def transform(self, X):
910
- """
911
- Runs the preprocessing transform function and returns the result
912
-
913
- Parameters
914
- ---------
915
- X: Dataframe or list-like
916
- A Dataframe or list-like object holding data to be transformed
917
-
918
- Returns
919
- -------
920
- X: Dataframe or list-like
921
- The transformed Dataframe.
922
- """
923
- return X
924
-
925
- def _log_visualize_no_trials(target):
926
- logger.error(
927
- f"There are no trials. Therefore, the {target} cannot be visualized."
928
- )
929
-
930
- def __repr__(self):
931
- return self.msg
932
-
933
-
934
- class AutoMLFeatureSelection(object): # pragma: no cover
935
- @deprecated(
936
- details="Working with AutoML has moved from within ADS to working directly with the AutoMLx library. AutoMLx are preinstalled in conda pack automlx_p38_cpu_v2 and later, and can now be updated independently of ADS. AutoMLx documentation may be found at https://docs.oracle.com/en-us/iaas/tools/automlx/latest/html/multiversion/v23.1.1/index.html. Notebook examples are in Oracle's samples repository: https://github.com/oracle-samples/oci-data-science-ai-samples/tree/master/notebook_examples and a migration tutorial can be found at https://accelerated-data-science.readthedocs.io/en/latest/user_guide/model_training/automl/quick_start.html .",
937
- raise_error=True,
938
- )
939
- def __init__(self, msg):
940
- self.msg = msg
941
-
942
- def fit(self, X):
943
- """
944
- Fits the baseline estimator
945
-
946
- Parameters
947
- ----------
948
- X: Dataframe or list-like
949
- A Dataframe or list-like object holding data to be predicted on
950
-
951
- Returns
952
- -------
953
- Self: Estimator
954
- The fitted estimator
955
- """
956
- return self
957
-
958
- def transform(self, X):
959
- """
960
- Runs the Baselines transform function and returns the result
961
-
962
- Parameters
963
- ---------
964
- X: Dataframe or list-like
965
- A Dataframe or list-like object holding data to be transformed
966
-
967
- Returns
968
- -------
969
- X: Dataframe or list-like
970
- The transformed Dataframe.
971
- """
972
- return X
973
-
974
- def __repr__(self):
975
- return self.msg