oracle-ads 2.12.10rc0__py3-none-any.whl → 2.12.11__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 (28) hide show
  1. ads/aqua/__init__.py +2 -1
  2. ads/aqua/app.py +30 -16
  3. ads/aqua/client/__init__.py +3 -0
  4. ads/aqua/client/client.py +799 -0
  5. ads/aqua/evaluation/evaluation.py +20 -12
  6. ads/aqua/extension/aqua_ws_msg_handler.py +14 -7
  7. ads/aqua/extension/base_handler.py +12 -9
  8. ads/aqua/extension/model_handler.py +6 -1
  9. ads/aqua/finetuning/entities.py +3 -0
  10. ads/aqua/finetuning/finetuning.py +32 -1
  11. ads/aqua/model/entities.py +2 -1
  12. ads/aqua/model/model.py +136 -76
  13. ads/aqua/modeldeployment/deployment.py +22 -10
  14. ads/cli.py +16 -8
  15. ads/opctl/operator/lowcode/common/transformations.py +38 -3
  16. ads/opctl/operator/lowcode/common/utils.py +11 -1
  17. ads/opctl/operator/lowcode/forecast/__main__.py +10 -0
  18. ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py +1 -1
  19. ads/opctl/operator/lowcode/forecast/operator_config.py +31 -0
  20. ads/opctl/operator/lowcode/forecast/schema.yaml +63 -0
  21. ads/opctl/operator/lowcode/forecast/whatifserve/__init__.py +7 -0
  22. ads/opctl/operator/lowcode/forecast/whatifserve/deployment_manager.py +233 -0
  23. ads/opctl/operator/lowcode/forecast/whatifserve/score.py +238 -0
  24. {oracle_ads-2.12.10rc0.dist-info → oracle_ads-2.12.11.dist-info}/METADATA +3 -1
  25. {oracle_ads-2.12.10rc0.dist-info → oracle_ads-2.12.11.dist-info}/RECORD +28 -23
  26. {oracle_ads-2.12.10rc0.dist-info → oracle_ads-2.12.11.dist-info}/LICENSE.txt +0 -0
  27. {oracle_ads-2.12.10rc0.dist-info → oracle_ads-2.12.11.dist-info}/WHEEL +0 -0
  28. {oracle_ads-2.12.10rc0.dist-info → oracle_ads-2.12.11.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,238 @@
1
+ #!/usr/bin/env python
2
+
3
+ # Copyright (c) 2023, 2024 Oracle and/or its affiliates.
4
+ # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
5
+
6
+ import json
7
+ import os
8
+ from joblib import load
9
+ import pandas as pd
10
+ import numpy as np
11
+ from functools import lru_cache
12
+ import logging
13
+ import ads
14
+ from ads.opctl.operator.lowcode.common.utils import load_data
15
+ from ads.opctl.operator.common.operator_config import InputData
16
+ from ads.opctl.operator.lowcode.forecast.const import SupportedModels
17
+
18
+ ads.set_auth("resource_principal")
19
+
20
+ logging.basicConfig(format='%(name)s - %(levelname)s - %(message)s', level=logging.INFO)
21
+ logger_pred = logging.getLogger('model-prediction')
22
+ logger_pred.setLevel(logging.INFO)
23
+ logger_feat = logging.getLogger('input-features')
24
+ logger_feat.setLevel(logging.INFO)
25
+
26
+ """
27
+ Inference script. This script is used for prediction by scoring server when schema is known.
28
+ """
29
+
30
+
31
+ @lru_cache(maxsize=10)
32
+ def load_model():
33
+ """
34
+ Loads model from the serialized format
35
+
36
+ Returns
37
+ -------
38
+ model: a model instance on which predict API can be invoked
39
+ """
40
+ model_dir = os.path.dirname(os.path.realpath(__file__))
41
+ contents = os.listdir(model_dir)
42
+ model_file_name = "models.pickle"
43
+ if model_file_name in contents:
44
+ with open(os.path.join(os.path.dirname(os.path.realpath(__file__)), model_file_name), "rb") as file:
45
+ model = load(file)
46
+ else:
47
+ raise Exception('{0} is not found in model directory {1}'.format(model_file_name, model_dir))
48
+ return model
49
+
50
+
51
+ @lru_cache(maxsize=1)
52
+ def fetch_data_type_from_schema(
53
+ input_schema_path=os.path.join(os.path.dirname(os.path.realpath(__file__)), "input_schema.json")):
54
+ """
55
+ Returns data type information fetch from input_schema.json.
56
+
57
+ Parameters
58
+ ----------
59
+ input_schema_path: path of input schema.
60
+
61
+ Returns
62
+ -------
63
+ data_type: data type fetch from input_schema.json.
64
+
65
+ """
66
+ data_type = {}
67
+ if os.path.exists(input_schema_path):
68
+ schema = json.load(open(input_schema_path))
69
+ for col in schema['schema']:
70
+ data_type[col['name']] = col['dtype']
71
+ else:
72
+ print(
73
+ "input_schema has to be passed in in order to recover the same data type. pass `X_sample` in `ads.model.framework.sklearn_model.SklearnModel.prepare` function to generate the input_schema. Otherwise, the data type might be changed after serialization/deserialization.")
74
+ return data_type
75
+
76
+
77
+ def deserialize(data, input_schema_path):
78
+ """
79
+ Deserialize json serialization data to data in original type when sent to predict.
80
+
81
+ Parameters
82
+ ----------
83
+ data: serialized input data.
84
+ input_schema_path: path of input schema.
85
+
86
+ Returns
87
+ -------
88
+ data: deserialized input data.
89
+
90
+ """
91
+
92
+ # Add further data deserialization if needed
93
+ return data
94
+
95
+
96
+ def pre_inference(data, input_schema_path):
97
+ """
98
+ Preprocess data
99
+
100
+ Parameters
101
+ ----------
102
+ data: Data format as expected by the predict API of the core estimator.
103
+ input_schema_path: path of input schema.
104
+
105
+ Returns
106
+ -------
107
+ data: Data format after any processing.
108
+
109
+ """
110
+ return deserialize(data, input_schema_path)
111
+
112
+
113
+ def post_inference(yhat):
114
+ """
115
+ Post-process the model results
116
+
117
+ Parameters
118
+ ----------
119
+ yhat: Data format after calling model.predict.
120
+
121
+ Returns
122
+ -------
123
+ yhat: Data format after any processing.
124
+
125
+ """
126
+ if isinstance(yhat, pd.core.frame.DataFrame):
127
+ yhat = yhat.values
128
+ if isinstance(yhat, np.ndarray):
129
+ yhat = yhat.tolist()
130
+ return yhat
131
+
132
+
133
+ def get_forecast(future_df, model_name, series_id, model_object, date_col, target_column, target_cat_col, horizon):
134
+ date_col_name = date_col["name"]
135
+ date_col_format = date_col["format"]
136
+ future_df[target_cat_col] = future_df[target_cat_col].astype("str")
137
+ future_df[date_col_name] = pd.to_datetime(
138
+ future_df[date_col_name], format=date_col_format
139
+ )
140
+ if model_name == SupportedModels.AutoTS:
141
+ series_id_col = "Series"
142
+ full_data_indexed = future_df.rename(columns={target_cat_col: series_id_col})
143
+ additional_regressors = list(
144
+ set(full_data_indexed.columns) - {target_column, series_id_col, date_col_name}
145
+ )
146
+ future_reg = full_data_indexed.reset_index().pivot(
147
+ index=date_col_name,
148
+ columns=series_id_col,
149
+ values=additional_regressors,
150
+ )
151
+ pred_obj = model_object.predict(future_regressor=future_reg)
152
+ return pred_obj.forecast[series_id].tolist()
153
+ elif model_name == SupportedModels.Prophet and series_id in model_object:
154
+ model = model_object[series_id]
155
+ processed = future_df.rename(columns={date_col_name: 'ds', target_column: 'y'})
156
+ forecast = model.predict(processed)
157
+ return forecast['yhat'].tolist()
158
+ elif model_name == SupportedModels.NeuralProphet and series_id in model_object:
159
+ model = model_object[series_id]
160
+ model.restore_trainer()
161
+ accepted_regressors = list(model.config_regressors.regressors.keys())
162
+ data = future_df.rename(columns={date_col_name: 'ds', target_column: 'y'})
163
+ future = data[accepted_regressors + ["ds"]].reset_index(drop=True)
164
+ future["y"] = None
165
+ forecast = model.predict(future)
166
+ return forecast['yhat1'].tolist()
167
+ elif model_name == SupportedModels.Arima and series_id in model_object:
168
+ model = model_object[series_id]
169
+ future_df = future_df.set_index(date_col_name)
170
+ x_pred = future_df.drop(target_cat_col, axis=1)
171
+ yhat, conf_int = model.predict(
172
+ n_periods=horizon,
173
+ X=x_pred,
174
+ return_conf_int=True
175
+ )
176
+ yhat_clean = pd.DataFrame(yhat, index=yhat.index, columns=["yhat"])
177
+ return yhat_clean['yhat'].tolist()
178
+ elif model_name == SupportedModels.AutoMLX and series_id in model_object:
179
+ # automlx model
180
+ model = model_object[series_id]
181
+ x_pred = future_df.drop(target_cat_col, axis=1)
182
+ x_pred = x_pred.set_index(date_col_name)
183
+ forecast = model.forecast(
184
+ X=x_pred,
185
+ periods=horizon
186
+ )
187
+ return forecast[target_column].tolist()
188
+ else:
189
+ raise Exception(f"Invalid model object type: {type(model_object).__name__}.")
190
+
191
+
192
+ def predict(data, model=load_model()) -> dict:
193
+ """
194
+ Returns prediction given the model and data to predict
195
+
196
+ Parameters
197
+ ----------
198
+ model: Model instance returned by load_model API
199
+ data: Data format as expected by the predict API of the core estimator. For eg. in case of sckit models it could be numpy array/List of list/Panda DataFrame
200
+
201
+ Returns
202
+ -------
203
+ predictions: Output from scoring server
204
+ Format: { 'prediction': output from `model.predict` method }
205
+
206
+ """
207
+ assert model is not None, "Model is not loaded"
208
+
209
+ models = model["models"]
210
+ specs = model["spec"]
211
+ horizon = specs["horizon"]
212
+ model_name = specs["model"]
213
+ date_col = specs["datetime_column"]
214
+ target_column = specs["target_column"]
215
+ target_category_column = specs["target_category_columns"][0]
216
+
217
+ try:
218
+ input_data = InputData(**data["additional_data"])
219
+ except TypeError as e:
220
+ raise ValueError(f"Validation error: {e}")
221
+ additional_data = load_data(input_data)
222
+
223
+ unique_values = additional_data[target_category_column].unique()
224
+ forecasts = {}
225
+ for key in unique_values:
226
+ try:
227
+ s_id = str(key)
228
+ filtered = additional_data[additional_data[target_category_column] == key]
229
+ future = filtered.tail(horizon)
230
+ forecast = get_forecast(future, model_name, s_id, models, date_col,
231
+ target_column, target_category_column, horizon)
232
+ forecasts[s_id] = json.dumps(forecast)
233
+ except Exception as e:
234
+ raise RuntimeError(
235
+ f"An error occurred during prediction: {e}."
236
+ f" Please ensure the input data matches the format and structure of the data used during training.")
237
+
238
+ return {'prediction': json.dumps(forecasts)}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: oracle_ads
3
- Version: 2.12.10rc0
3
+ Version: 2.12.11
4
4
  Summary: Oracle Accelerated Data Science SDK
5
5
  Keywords: Oracle Cloud Infrastructure,OCI,Machine Learning,ML,Artificial Intelligence,AI,Data Science,Cloud,Oracle
6
6
  Author: Oracle Data Science
@@ -34,6 +34,8 @@ Requires-Dist: scikit-learn>=1.0,<1.6.0
34
34
  Requires-Dist: tabulate>=0.8.9
35
35
  Requires-Dist: tqdm>=4.59.0
36
36
  Requires-Dist: pydantic>=2.6.3
37
+ Requires-Dist: tenacity
38
+ Requires-Dist: httpx
37
39
  Requires-Dist: oracle_ads[opctl] ; extra == "anomaly"
38
40
  Requires-Dist: autots ; extra == "anomaly"
39
41
  Requires-Dist: oracledb ; extra == "anomaly"
@@ -1,12 +1,14 @@
1
1
  ads/__init__.py,sha256=OxHySbHbMqPgZ8sUj33Bxy-smSiNgRjtcSUV77oBL08,3787
2
- ads/cli.py,sha256=hjRcQfXFzkh37fbyUBg95I3R0brslZLf9IQU8nSCxio,3933
2
+ ads/cli.py,sha256=WkOpZv8jWgFYN9BNkt2LJBs9KzJHgFqq3pIymsqc8Q4,4292
3
3
  ads/config.py,sha256=WGFgS5-dxqC9_iRJKakn-mh9545gHJpWB_Y0hT5O3ec,8016
4
- ads/aqua/__init__.py,sha256=tmTJDKbYGjhDC5er6g5Cd3VV60NithclAyC-MVKLln4,1005
5
- ads/aqua/app.py,sha256=i-03u5bf3gCCIIXf5bbWK22rW6ll0skQQlVt-zehOGU,12538
4
+ ads/aqua/__init__.py,sha256=T5v0LVPaeyXuXmA-0NbH44cnR3pGmQVFwRVKxRbEI9U,1068
5
+ ads/aqua/app.py,sha256=AYTul3k06n-AN5KrtNHolv0cVkqCqLvrhPoQuIko_8c,13268
6
6
  ads/aqua/cli.py,sha256=W-0kswzRDEilqHyw5GSMOrARgvOyPRtkEtpy54ew0Jo,3907
7
7
  ads/aqua/constants.py,sha256=fTPrRuWaZB1_THZ2I1nOrwW1pQGpvMC44--Ok5Myr5Y,2978
8
8
  ads/aqua/data.py,sha256=HfxLfKiNiPJecMQy0JAztUsT3IdZilHHHOrCJnjZMc4,408
9
9
  ads/aqua/ui.py,sha256=aRVtvJslhq8Zq8B_2AQdmlFbuLWpHakFTZg6T9uvHU0,27248
10
+ ads/aqua/client/__init__.py,sha256=-46EcKQjnWEXxTt85bQzXjA5xsfoBXIGm_syKFlVL1c,178
11
+ ads/aqua/client/client.py,sha256=HiEA0XjvC7iuuz6vhiu6UG0qMd9x2t1pYwTe22N-I-U,30065
10
12
  ads/aqua/common/__init__.py,sha256=rZrmh1nho40OCeabXCNWtze-mXi-PGKetcZdxZSn3_0,204
11
13
  ads/aqua/common/decorator.py,sha256=JEN6Cy4DYgQbmIR3ShCjTuBMCnilDxq7jkYMJse1rcM,4112
12
14
  ads/aqua/common/entities.py,sha256=UsP8CczuifLOLr_gAhulh8VmgGSFir3rli1MMQ-CZhk,537
@@ -28,10 +30,10 @@ ads/aqua/evaluation/__init__.py,sha256=Fd7WL7MpQ1FtJjlftMY2KHli5cz1wr5MDu3hGmV89
28
30
  ads/aqua/evaluation/constants.py,sha256=GvcXvPIw-VDKw4a8WNKs36uWdT-f7VJrWSpnnRnthGg,1533
29
31
  ads/aqua/evaluation/entities.py,sha256=pvZWrO-Hlsh0TIFnly84OijKHULRVM13D5a-4ZGxte8,5733
30
32
  ads/aqua/evaluation/errors.py,sha256=qzR63YEIA8haCh4HcBHFFm7j4g6jWDfGszqrPkXx9zQ,4564
31
- ads/aqua/evaluation/evaluation.py,sha256=0f6i3G1KWmbwCf_A33YKrnfDVmKu7XHD2nue0y8Ob9k,58915
33
+ ads/aqua/evaluation/evaluation.py,sha256=Kn__jUSFwG7FE_R7GM8PGMoXNvfFuRaYgTQWAgH_7U0,59521
32
34
  ads/aqua/extension/__init__.py,sha256=mRArjU6UZpZYVr0qHSSkPteA_CKcCZIczOFaK421m9o,1453
33
- ads/aqua/extension/aqua_ws_msg_handler.py,sha256=soSRnIFx93JCFf6HsuF_BQEpJ2mre-IVQDUDKUKPijY,3392
34
- ads/aqua/extension/base_handler.py,sha256=Zbb-uSNLljRU5NPOndn3_lx8MN_1yxlF2GHVpBT-kWk,5233
35
+ ads/aqua/extension/aqua_ws_msg_handler.py,sha256=zR7Fb3LEXzPrEICooWvuo_ahoY6KhcABpKUmYQkEpS0,3626
36
+ ads/aqua/extension/base_handler.py,sha256=s49sfCEzy_WpXsBCMilMsrp4_mKEbSGN7ajfCe0FJVo,5351
35
37
  ads/aqua/extension/common_handler.py,sha256=Oz3riHDy5pFfbArLge5iaaRoK8PEAnkBvhqqVGbUsvE,4196
36
38
  ads/aqua/extension/common_ws_msg_handler.py,sha256=pMX79tmJKTKog684o6vuwZkAD47l8SxtRx5TNn8se7k,2230
37
39
  ads/aqua/extension/deployment_handler.py,sha256=abTwz9OFJB2_OPbRZaDvNMb3BjRmkSmNh28EtGNstg4,11287
@@ -40,7 +42,7 @@ ads/aqua/extension/errors.py,sha256=ojDolyr3_0UCCwKqPtiZZyMQuX35jr8h8MQRP6HcBs4,
40
42
  ads/aqua/extension/evaluation_handler.py,sha256=fJH73fa0xmkEiP8SxKL4A4dJgj-NoL3z_G-w_WW2zJs,4353
41
43
  ads/aqua/extension/evaluation_ws_msg_handler.py,sha256=dv0iwOSTxYj1kQ1rPEoDmGgFBzLUCLXq5h7rpmY2T1M,2098
42
44
  ads/aqua/extension/finetune_handler.py,sha256=97obbhITswTrBvl88g7gk4GvF2SUHBGUAq4rOylFbtQ,3079
43
- ads/aqua/extension/model_handler.py,sha256=c2e2Pm8ICGKmJFvHsTDwEtWOpL8ZKlK5IZUv40AtwaQ,11456
45
+ ads/aqua/extension/model_handler.py,sha256=NUR3PeLLAM-A1uyhwmglFhB4GgzembBY27CTPQ0Pm2Q,11682
44
46
  ads/aqua/extension/models_ws_msg_handler.py,sha256=3CPfzWl1xfrE2Dpn_WYP9zY0kY5zlsAE8tU_6Y2-i18,1801
45
47
  ads/aqua/extension/ui_handler.py,sha256=Q0LkrV6VtVUI4GpNgqJQt8SGzxHzp4X5hdHF6KgPp9M,11217
46
48
  ads/aqua/extension/ui_websocket_handler.py,sha256=oLFjaDrqkSERbhExdvxjLJX0oRcP-DVJ_aWn0qy0uvo,5084
@@ -49,16 +51,16 @@ ads/aqua/extension/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
49
51
  ads/aqua/extension/models/ws_models.py,sha256=-m6IJRS-4I6AMLDwgu19XdrvHyOStuBx9t4B0LgS07g,3348
50
52
  ads/aqua/finetuning/__init__.py,sha256=vwYT5PluMR0mDQwVIavn_8Icms7LmvfV_FOrJ8fJx8I,296
51
53
  ads/aqua/finetuning/constants.py,sha256=va1TIAdMD5ATOdC39PSQpLycL1N5ubIOWTWrPKQSghY,886
52
- ads/aqua/finetuning/entities.py,sha256=FcJ-0ilNIXDhA3ODX4c6IQwzvh20VQMrACtD7fq_i9o,5944
53
- ads/aqua/finetuning/finetuning.py,sha256=YF4Rs3E-ze4vFMmdyRDDY6YWfJFu9CYO10mbUUBCq80,25059
54
+ ads/aqua/finetuning/entities.py,sha256=1RRaRFuxoBtApeCIqG-0H8Iom2kz2dv7LOX6y2wWLnA,6116
55
+ ads/aqua/finetuning/finetuning.py,sha256=0GnaEXL2_tJZ5JU5T7-4bmLLpI-ZlmTGvgIrZHZ7Ko8,26329
54
56
  ads/aqua/model/__init__.py,sha256=j2iylvERdANxgrEDp7b_mLcKMz1CF5Go0qgYCiMwdos,278
55
57
  ads/aqua/model/constants.py,sha256=H239zDu3koa3UTdw-uQveXHX2NDwidclVcS4QIrCTJo,1593
56
- ads/aqua/model/entities.py,sha256=TXcU78LTVk9POIAFYuzH1NBSXriPHpvoL3KASQ97OYo,9899
58
+ ads/aqua/model/entities.py,sha256=5XaJapNoRRxvSJCWVq7pIg_GCN_W1M1q9mxz6Cp3A28,9955
57
59
  ads/aqua/model/enums.py,sha256=t8GbK2nblIPm3gClR8W31RmbtTuqpoSzoN4W3JfD6AI,1004
58
- ads/aqua/model/model.py,sha256=Zwhb7ZXK1di7k_5wzDTToxMyOn4WUcjhEV_wjTM4two,66742
60
+ ads/aqua/model/model.py,sha256=uJ408_MZpGqea7jUxomiy5SH82CUxZyWP_42XegUlLQ,69762
59
61
  ads/aqua/modeldeployment/__init__.py,sha256=RJCfU1yazv3hVWi5rS08QVLTpTwZLnlC8wU8diwFjnM,391
60
62
  ads/aqua/modeldeployment/constants.py,sha256=lJF77zwxmlECljDYjwFAMprAUR_zctZHmawiP-4alLg,296
61
- ads/aqua/modeldeployment/deployment.py,sha256=hlaLWjND6DDnwj-DA_7vwA-1UQRmZkNFbauB0SImqfs,31185
63
+ ads/aqua/modeldeployment/deployment.py,sha256=UxyxAvte4mTkWz3Vp4-OACNKNujcZW7WvpVYIUgt_nY,31804
62
64
  ads/aqua/modeldeployment/entities.py,sha256=EV7hxfKRZNY9kJDy_1IC7PoSIsRQ0yy02pll0gCsCkY,5171
63
65
  ads/aqua/modeldeployment/inference.py,sha256=JPqzbHJoM-PpIU_Ft9lHudO9_1vFr7OPQ2GHjPoAufU,2142
64
66
  ads/aqua/training/__init__.py,sha256=w2DNWltXtASQgbrHyvKo0gMs5_chZoG-CSDMI4qe7i0,202
@@ -679,8 +681,8 @@ ads/opctl/operator/lowcode/common/__init__.py,sha256=rZrmh1nho40OCeabXCNWtze-mXi
679
681
  ads/opctl/operator/lowcode/common/const.py,sha256=1dUhgup4L_U0s6BSYmgLPpZAe6xqfSHPPoLqW0j46U8,265
680
682
  ads/opctl/operator/lowcode/common/data.py,sha256=nKwE0ubF9fTHFOls5uQ3BBpcPNRtwvGW3UGK-JjAm84,4107
681
683
  ads/opctl/operator/lowcode/common/errors.py,sha256=LvQ_Qzh6cqD6uP91DMFFVXPrcc3010EE8LfBH-CH0ho,1534
682
- ads/opctl/operator/lowcode/common/transformations.py,sha256=Qjbnjle_x1SdWbr2frG2tvpGd1WzdH6yi8QT6caWlsQ,9990
683
- ads/opctl/operator/lowcode/common/utils.py,sha256=gnXQijt3tLRoJSoKyJIt0gMS9TpSY37KiXTifUAvkJ8,9490
684
+ ads/opctl/operator/lowcode/common/transformations.py,sha256=6zrrPdfbphVKDyQ8xHBbLIblpwxWP3CZzfLATka4Dc0,11226
685
+ ads/opctl/operator/lowcode/common/utils.py,sha256=d0Ex6YxVJm1s2W8tfSjy46jw0iM4ukNIw9qQKGWcGdc,9772
684
686
  ads/opctl/operator/lowcode/feature_store_marketplace/MLoperator,sha256=JO5ulr32WsFnbpk1KN97h8-D70jcFt1kRQ08UMkP4rU,346
685
687
  ads/opctl/operator/lowcode/feature_store_marketplace/README.md,sha256=fN9ROzOPdEZdRgSP_uYvAmD5bD983NC7Irfe_D-mvrw,1356
686
688
  ads/opctl/operator/lowcode/feature_store_marketplace/__init__.py,sha256=rZrmh1nho40OCeabXCNWtze-mXi-PGKetcZdxZSn3_0,204
@@ -698,14 +700,14 @@ ads/opctl/operator/lowcode/feature_store_marketplace/models/serializable_yaml_mo
698
700
  ads/opctl/operator/lowcode/forecast/MLoperator,sha256=xM8yBUQObjG_6Mg36f3Vv8b9N3L8_5RUZJE2riOjXuw,5981
699
701
  ads/opctl/operator/lowcode/forecast/README.md,sha256=kbCCEdo-0pwKlZp9ctnWUK6Z31n69IsnG0i26b202Zg,9768
700
702
  ads/opctl/operator/lowcode/forecast/__init__.py,sha256=sAqmLhogrLXb3xI7dPOj9HmSkpTnLh9wkzysuGd8AXk,204
701
- ads/opctl/operator/lowcode/forecast/__main__.py,sha256=5Vh-kClwxTsvZLEuECyQBvbZFfH37HQW2G09RwX11Kw,2503
703
+ ads/opctl/operator/lowcode/forecast/__main__.py,sha256=2NmZ4Z-Hu9ViuH6LOQ27ciVN7uryho9Fxs3adfWQkbk,2894
702
704
  ads/opctl/operator/lowcode/forecast/cmd.py,sha256=uwU-QvnYwxoRFXZv7_JFkzAUnjTNoSsHEme2FF-9Rl0,1151
703
705
  ads/opctl/operator/lowcode/forecast/const.py,sha256=XEH74IeAJ89_wCOXWuIrAWl5Rwjzfadl7aSsmLSMZk4,2695
704
706
  ads/opctl/operator/lowcode/forecast/environment.yaml,sha256=eVMf9pcjADI14_GRGdZOB_gK5_MyG_-cX037TXqzFho,330
705
707
  ads/opctl/operator/lowcode/forecast/errors.py,sha256=X9zuV2Lqb5N9FuBHHshOFYyhvng5r9KGLHnQijZ5b8c,911
706
708
  ads/opctl/operator/lowcode/forecast/model_evaluator.py,sha256=IutyI2bo_aFopHsWlJ3z7TcBPXs6G3NufdIaXBUD6Tw,9352
707
- ads/opctl/operator/lowcode/forecast/operator_config.py,sha256=vG7n-RIiazujH0UtJ0uarx9IKDIAS0b4WcCo1dNLVL0,6422
708
- ads/opctl/operator/lowcode/forecast/schema.yaml,sha256=hfKL3K8lPooZBsM6Oj2kA49f2sqo6238Kz1F8wr0QmE,10411
709
+ ads/opctl/operator/lowcode/forecast/operator_config.py,sha256=fcq0WrqW4AYkcW6d_L1lPETj95zjboZRmVGvAXxDQu4,7618
710
+ ads/opctl/operator/lowcode/forecast/schema.yaml,sha256=nDrY-8Qyv-_6Olxi4CoUgyQe65h7I9CPYghtSVGIxVE,12437
709
711
  ads/opctl/operator/lowcode/forecast/utils.py,sha256=0ssrXBAEL5hjQX4avLPkSwFp3sKE8QV5M3K5InqvzYg,14137
710
712
  ads/opctl/operator/lowcode/forecast/model/__init__.py,sha256=sAqmLhogrLXb3xI7dPOj9HmSkpTnLh9wkzysuGd8AXk,204
711
713
  ads/opctl/operator/lowcode/forecast/model/arima.py,sha256=sWGTUxisV8ytUA-_MK54bdP2FVO_9BMD8-EsulJEYxE,11430
@@ -713,10 +715,13 @@ ads/opctl/operator/lowcode/forecast/model/automlx.py,sha256=lXJoeMFHapyd5aYLi81T
713
715
  ads/opctl/operator/lowcode/forecast/model/autots.py,sha256=RyLeD3dwMfrb6St-QFoH2MM8vH3inepVamRRovI-bwM,13086
714
716
  ads/opctl/operator/lowcode/forecast/model/base_model.py,sha256=h0PGYUKfO2CSH34EK3YtYnZHnpiRJThvIkwyIiKqxDI,33531
715
717
  ads/opctl/operator/lowcode/forecast/model/factory.py,sha256=hSRPPWdpIRSMYPUFMIUuxc2TPZt-SG18MiqhtdfL3mg,3488
716
- ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py,sha256=GCwX9Udh4U79wBNG5bjSYabgRDO0u-ElVJkSC_HcBeA,16563
718
+ ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py,sha256=BFZL-F2pec5Gb5UTRcFlNPi3LT65z4pGzRJvhgxK0TE,16562
717
719
  ads/opctl/operator/lowcode/forecast/model/ml_forecast.py,sha256=NSZ2L6gRw4S68BUF0Vyu-cUPSsq8LRxgoVajW9Ra63k,9640
718
720
  ads/opctl/operator/lowcode/forecast/model/neuralprophet.py,sha256=URtnP4oEMP7tGwe0WfWtfMFftAXQzN3K9RurAv_cgnY,19251
719
721
  ads/opctl/operator/lowcode/forecast/model/prophet.py,sha256=yiCIP0bR0jg-b2XHVJSfO7CFZ3_GXEnpLkW_MkV45Jo,14983
722
+ ads/opctl/operator/lowcode/forecast/whatifserve/__init__.py,sha256=JNDDjLrNorKXMHUuXMifqXea3eheST-lnrcwCl2bWrk,242
723
+ ads/opctl/operator/lowcode/forecast/whatifserve/deployment_manager.py,sha256=fTu5h18dyNi61wX4u0bcevBVd5QCx2avpW4g1Ry-xwM,11168
724
+ ads/opctl/operator/lowcode/forecast/whatifserve/score.py,sha256=KpWx7fGFGPb5VUKIoMpEDbUs6q9j3hT-Zax7rsbfYuw,8172
720
725
  ads/opctl/operator/lowcode/pii/MLoperator,sha256=GKCuiXRwfGLyBqELbtgtg-kJPtNWNVA-kSprYTqhF64,6406
721
726
  ads/opctl/operator/lowcode/pii/README.md,sha256=2P3tpKv6v__Eehj6iLfTXgyDhS4lmi1BTfEdmJhT0K4,9237
722
727
  ads/opctl/operator/lowcode/pii/__init__.py,sha256=sAqmLhogrLXb3xI7dPOj9HmSkpTnLh9wkzysuGd8AXk,204
@@ -836,8 +841,8 @@ ads/type_discovery/unknown_detector.py,sha256=yZuYQReO7PUyoWZE7onhhtYaOg6088wf1y
836
841
  ads/type_discovery/zipcode_detector.py,sha256=3AlETg_ZF4FT0u914WXvTT3F3Z6Vf51WiIt34yQMRbw,1421
837
842
  ads/vault/__init__.py,sha256=x9tMdDAOdF5iDHk9u2di_K-ze5Nq068x25EWOBoWwqY,245
838
843
  ads/vault/vault.py,sha256=hFBkpYE-Hfmzu1L0sQwUfYcGxpWmgG18JPndRl0NOXI,8624
839
- oracle_ads-2.12.10rc0.dist-info/entry_points.txt,sha256=9VFnjpQCsMORA4rVkvN8eH6D3uHjtegb9T911t8cqV0,35
840
- oracle_ads-2.12.10rc0.dist-info/LICENSE.txt,sha256=zoGmbfD1IdRKx834U0IzfFFFo5KoFK71TND3K9xqYqo,1845
841
- oracle_ads-2.12.10rc0.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
842
- oracle_ads-2.12.10rc0.dist-info/METADATA,sha256=m-HTzIoPcZGQXZwa4ObkkwJw5cmv8FTxFEqELz4xCzw,16238
843
- oracle_ads-2.12.10rc0.dist-info/RECORD,,
844
+ oracle_ads-2.12.11.dist-info/entry_points.txt,sha256=9VFnjpQCsMORA4rVkvN8eH6D3uHjtegb9T911t8cqV0,35
845
+ oracle_ads-2.12.11.dist-info/LICENSE.txt,sha256=zoGmbfD1IdRKx834U0IzfFFFo5KoFK71TND3K9xqYqo,1845
846
+ oracle_ads-2.12.11.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
847
+ oracle_ads-2.12.11.dist-info/METADATA,sha256=oRryfiayUyY7iM-nFKSi1Ual55JEZpbExLXezXBwmAs,16280
848
+ oracle_ads-2.12.11.dist-info/RECORD,,