oracle-ads 2.13.5__py3-none-any.whl → 2.13.6__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.
- ads/aqua/common/enums.py +14 -0
- ads/aqua/common/utils.py +38 -0
- ads/aqua/model/model.py +17 -6
- ads/dataset/recommendation.py +11 -20
- ads/opctl/operator/lowcode/pii/model/report.py +9 -16
- ads/opctl/utils.py +1 -1
- {oracle_ads-2.13.5.dist-info → oracle_ads-2.13.6.dist-info}/METADATA +1 -1
- {oracle_ads-2.13.5.dist-info → oracle_ads-2.13.6.dist-info}/RECORD +11 -11
- {oracle_ads-2.13.5.dist-info → oracle_ads-2.13.6.dist-info}/WHEEL +0 -0
- {oracle_ads-2.13.5.dist-info → oracle_ads-2.13.6.dist-info}/entry_points.txt +0 -0
- {oracle_ads-2.13.5.dist-info → oracle_ads-2.13.6.dist-info}/licenses/LICENSE.txt +0 -0
ads/aqua/common/enums.py
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
# Copyright (c) 2024, 2025 Oracle and/or its affiliates.
|
3
3
|
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
|
4
4
|
|
5
|
+
from typing import Dict, List
|
6
|
+
|
5
7
|
from ads.common.extended_enum import ExtendedEnum
|
6
8
|
|
7
9
|
|
@@ -106,3 +108,15 @@ class ModelFormat(ExtendedEnum):
|
|
106
108
|
class Platform(ExtendedEnum):
|
107
109
|
ARM_CPU = "ARM_CPU"
|
108
110
|
NVIDIA_GPU = "NVIDIA_GPU"
|
111
|
+
|
112
|
+
|
113
|
+
# This dictionary defines compatibility groups for container families.
|
114
|
+
# The structure is:
|
115
|
+
# - Key: The preferred container family to use when multiple compatible families are selected.
|
116
|
+
# - Value: A list of all compatible families (including the preferred one).
|
117
|
+
CONTAINER_FAMILY_COMPATIBILITY: Dict[str, List[str]] = {
|
118
|
+
InferenceContainerTypeFamily.AQUA_VLLM_V1_CONTAINER_FAMILY: [
|
119
|
+
InferenceContainerTypeFamily.AQUA_VLLM_V1_CONTAINER_FAMILY,
|
120
|
+
InferenceContainerTypeFamily.AQUA_VLLM_CONTAINER_FAMILY,
|
121
|
+
],
|
122
|
+
}
|
ads/aqua/common/utils.py
CHANGED
@@ -37,6 +37,7 @@ from pydantic import BaseModel, ValidationError
|
|
37
37
|
|
38
38
|
from ads.aqua.common.entities import GPUShapesIndex
|
39
39
|
from ads.aqua.common.enums import (
|
40
|
+
CONTAINER_FAMILY_COMPATIBILITY,
|
40
41
|
InferenceContainerParamType,
|
41
42
|
InferenceContainerType,
|
42
43
|
RqsAdditionalDetails,
|
@@ -1316,3 +1317,40 @@ def load_gpu_shapes_index(
|
|
1316
1317
|
)
|
1317
1318
|
|
1318
1319
|
return GPUShapesIndex(**data)
|
1320
|
+
|
1321
|
+
|
1322
|
+
def get_preferred_compatible_family(selected_families: set[str]) -> str:
|
1323
|
+
"""
|
1324
|
+
Determines the preferred container family from a given set of container families.
|
1325
|
+
|
1326
|
+
This method is used in the context of multi-model deployment to handle cases
|
1327
|
+
where models selected for deployment use different, but compatible, container families.
|
1328
|
+
|
1329
|
+
It checks the input `families` set against the `CONTAINER_FAMILY_COMPATIBILITY` map.
|
1330
|
+
If a compatibility group exists that fully includes all the families in the input,
|
1331
|
+
the corresponding key (i.e., the preferred family) is returned.
|
1332
|
+
|
1333
|
+
Parameters
|
1334
|
+
----------
|
1335
|
+
families : set[str]
|
1336
|
+
A set of container family identifiers.
|
1337
|
+
|
1338
|
+
Returns
|
1339
|
+
-------
|
1340
|
+
Optional[str]
|
1341
|
+
The preferred container family if all families are compatible within one group;
|
1342
|
+
otherwise, returns `None` indicating that no compatible family group was found.
|
1343
|
+
|
1344
|
+
Example
|
1345
|
+
-------
|
1346
|
+
>>> get_preferred_compatible_family({"odsc-vllm-serving", "odsc-vllm-serving-v1"})
|
1347
|
+
'odsc-vllm-serving-v1'
|
1348
|
+
|
1349
|
+
>>> get_preferred_compatible_family({"odsc-vllm-serving", "odsc-tgi-serving"})
|
1350
|
+
None # Incompatible families
|
1351
|
+
"""
|
1352
|
+
for preferred, compatible_list in CONTAINER_FAMILY_COMPATIBILITY.items():
|
1353
|
+
if selected_families.issubset(set(compatible_list)):
|
1354
|
+
return preferred
|
1355
|
+
|
1356
|
+
return None
|
ads/aqua/model/model.py
CHANGED
@@ -39,6 +39,7 @@ from ads.aqua.common.utils import (
|
|
39
39
|
get_artifact_path,
|
40
40
|
get_container_config,
|
41
41
|
get_hf_model_info,
|
42
|
+
get_preferred_compatible_family,
|
42
43
|
list_os_files_with_extension,
|
43
44
|
load_config,
|
44
45
|
read_file,
|
@@ -337,15 +338,25 @@ class AquaModelApp(AquaApp):
|
|
337
338
|
|
338
339
|
selected_models_deployment_containers.add(deployment_container)
|
339
340
|
|
340
|
-
|
341
|
-
if len(selected_models_deployment_containers) > 1:
|
341
|
+
if not selected_models_deployment_containers:
|
342
342
|
raise AquaValueError(
|
343
|
-
"
|
344
|
-
|
345
|
-
"For multi-model deployment, all models in the group must share the same container family."
|
343
|
+
"None of the selected models are associated with a recognized container family. "
|
344
|
+
"Please review the selected models, or select a different group of models."
|
346
345
|
)
|
347
346
|
|
348
|
-
|
347
|
+
# Check if the all models in the group shares same container family
|
348
|
+
if len(selected_models_deployment_containers) > 1:
|
349
|
+
deployment_container = get_preferred_compatible_family(
|
350
|
+
selected_families=selected_models_deployment_containers
|
351
|
+
)
|
352
|
+
if not deployment_container:
|
353
|
+
raise AquaValueError(
|
354
|
+
"The selected models are associated with different container families: "
|
355
|
+
f"{list(selected_models_deployment_containers)}."
|
356
|
+
"For multi-model deployment, all models in the group must share the same container family."
|
357
|
+
)
|
358
|
+
else:
|
359
|
+
deployment_container = selected_models_deployment_containers.pop()
|
349
360
|
|
350
361
|
# Generate model group details
|
351
362
|
timestamp = datetime.now().strftime("%Y%m%d")
|
ads/dataset/recommendation.py
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
#!/usr/bin/env python
|
2
|
-
# -*- coding: utf-8; -*-
|
3
2
|
|
4
|
-
# Copyright (c) 2020,
|
3
|
+
# Copyright (c) 2020, 2025 Oracle and/or its affiliates.
|
5
4
|
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
|
6
5
|
|
7
6
|
import copy
|
8
7
|
import importlib
|
9
8
|
|
10
9
|
from ads.common.decorator.runtime_dependency import (
|
11
|
-
runtime_dependency,
|
12
10
|
OptionalDependency,
|
11
|
+
runtime_dependency,
|
13
12
|
)
|
14
13
|
from ads.dataset import logger
|
15
14
|
|
@@ -59,11 +58,10 @@ class Recommendation:
|
|
59
58
|
if change["type"] == "change" and change["name"] == "value":
|
60
59
|
if change["new"] == "Fill missing values with constant":
|
61
60
|
self._show_constant_fill_widget(column)
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
text.close()
|
61
|
+
elif change["old"] == "Fill missing values with constant":
|
62
|
+
text = self.fill_nan_dict.pop(column, None)
|
63
|
+
if text is not None:
|
64
|
+
text.close()
|
67
65
|
self.reco_dict[recommendation_type][column]["Selected Action"] = change[
|
68
66
|
"new"
|
69
67
|
]
|
@@ -151,7 +149,6 @@ class Recommendation:
|
|
151
149
|
@runtime_dependency(module="IPython", install_from=OptionalDependency.NOTEBOOK)
|
152
150
|
@runtime_dependency(module="ipywidgets", install_from=OptionalDependency.NOTEBOOK)
|
153
151
|
def _display(self):
|
154
|
-
|
155
152
|
from IPython.core.display import display
|
156
153
|
|
157
154
|
if self.recommendation_type_index != len(self.recommendation_types):
|
@@ -164,11 +161,7 @@ class Recommendation:
|
|
164
161
|
]
|
165
162
|
if self.recommendation_type_index == 0:
|
166
163
|
for column in recommendation:
|
167
|
-
print(
|
168
|
-
"Column '{0}' is constant and will be dropped".format(
|
169
|
-
column
|
170
|
-
)
|
171
|
-
)
|
164
|
+
print(f"Column '{column}' is constant and will be dropped")
|
172
165
|
self.recommendation_type_index += 1
|
173
166
|
self._display()
|
174
167
|
return
|
@@ -184,9 +177,9 @@ class Recommendation:
|
|
184
177
|
self.recommendation_type_labels[
|
185
178
|
self.recommendation_type_index
|
186
179
|
]
|
187
|
-
)
|
180
|
+
),
|
181
|
+
layout=ipywidgets.Layout(display="flex"),
|
188
182
|
),
|
189
|
-
layout=ipywidgets.Layout(display="flex"),
|
190
183
|
)
|
191
184
|
self.action_list[
|
192
185
|
self.recommendation_types[self.recommendation_type_index]
|
@@ -194,7 +187,7 @@ class Recommendation:
|
|
194
187
|
self.column_list = []
|
195
188
|
self.message_list = []
|
196
189
|
self.extra_info_list = []
|
197
|
-
for column in recommendation
|
190
|
+
for column in recommendation:
|
198
191
|
messages = ipywidgets.Label(
|
199
192
|
recommendation[column]["Message"],
|
200
193
|
layout=ipywidgets.Layout(
|
@@ -240,9 +233,7 @@ class Recommendation:
|
|
240
233
|
self.column_list.append(
|
241
234
|
ipywidgets.Label(
|
242
235
|
column
|
243
|
-
+ "(type: {
|
244
|
-
self.ds.sampled_df[column].dtype
|
245
|
-
),
|
236
|
+
+ f"(type: {self.ds.sampled_df[column].dtype})",
|
246
237
|
layout=ipywidgets.Layout(flex="auto"),
|
247
238
|
color="grey",
|
248
239
|
)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env python
|
2
2
|
|
3
|
-
# Copyright (c) 2023,
|
3
|
+
# Copyright (c) 2023, 2025 Oracle and/or its affiliates.
|
4
4
|
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
|
5
5
|
|
6
6
|
|
@@ -123,7 +123,6 @@ def make_model_card(model_name="", readme_path=""):
|
|
123
123
|
)
|
124
124
|
return rc.Group(
|
125
125
|
rc.Text("-"),
|
126
|
-
columns=1,
|
127
126
|
)
|
128
127
|
|
129
128
|
try:
|
@@ -156,7 +155,6 @@ def make_model_card(model_name="", readme_path=""):
|
|
156
155
|
return rc.Group(
|
157
156
|
rc.Text(text),
|
158
157
|
eval_res_tb,
|
159
|
-
columns=2,
|
160
158
|
)
|
161
159
|
|
162
160
|
|
@@ -216,7 +214,7 @@ def build_entity_df(entites, id) -> pd.DataFrame:
|
|
216
214
|
"Type": "-",
|
217
215
|
"Redacted To": "-",
|
218
216
|
}
|
219
|
-
df = df.
|
217
|
+
df = pd.concat([df, pd.DataFrame([df2])], ignore_index=True)
|
220
218
|
return df
|
221
219
|
|
222
220
|
|
@@ -232,7 +230,6 @@ class RowReportFields:
|
|
232
230
|
self._make_stats_card(),
|
233
231
|
self._make_text_card(),
|
234
232
|
],
|
235
|
-
type=rc.SelectType.TABS,
|
236
233
|
),
|
237
234
|
label="Row Id: " + str(self.spec.id),
|
238
235
|
)
|
@@ -256,7 +253,7 @@ class RowReportFields:
|
|
256
253
|
index=True,
|
257
254
|
)
|
258
255
|
)
|
259
|
-
return rc.Group(stats, label="STATS")
|
256
|
+
return rc.Group(*stats, label="STATS")
|
260
257
|
|
261
258
|
def _make_text_card(self):
|
262
259
|
annotations = []
|
@@ -277,7 +274,7 @@ class RowReportFields:
|
|
277
274
|
},
|
278
275
|
return_html=True,
|
279
276
|
)
|
280
|
-
return rc.Group(rc.
|
277
|
+
return rc.Group(rc.Html(render_html), label="TEXT")
|
281
278
|
|
282
279
|
|
283
280
|
class PIIOperatorReport:
|
@@ -292,7 +289,7 @@ class PIIOperatorReport:
|
|
292
289
|
RowReportFields(r, report_spec.run_summary.show_sensitive_info)
|
293
290
|
for r in rows
|
294
291
|
]
|
295
|
-
|
292
|
+
self.report_sections = None
|
296
293
|
self.report_uri = report_uri
|
297
294
|
|
298
295
|
def make_view(self):
|
@@ -317,7 +314,6 @@ class PIIOperatorReport:
|
|
317
314
|
label="Details",
|
318
315
|
),
|
319
316
|
],
|
320
|
-
type=rc.SelectType.TABS,
|
321
317
|
)
|
322
318
|
)
|
323
319
|
self.report_sections = [title_text, report_description, time_proceed, structure]
|
@@ -331,7 +327,8 @@ class PIIOperatorReport:
|
|
331
327
|
disable_print()
|
332
328
|
with rc.ReportCreator("My Report") as report:
|
333
329
|
report.save(
|
334
|
-
rc.Block(report_sections or self.report_sections),
|
330
|
+
rc.Block(*(report_sections or self.report_sections)),
|
331
|
+
report_local_path,
|
335
332
|
)
|
336
333
|
enable_print()
|
337
334
|
|
@@ -354,7 +351,6 @@ class PIIOperatorReport:
|
|
354
351
|
self._make_yaml_card(),
|
355
352
|
self._make_model_card(),
|
356
353
|
],
|
357
|
-
type=rc.SelectType.TABS,
|
358
354
|
),
|
359
355
|
)
|
360
356
|
|
@@ -367,7 +363,6 @@ class PIIOperatorReport:
|
|
367
363
|
blocks=[
|
368
364
|
row.build_report() for row in self.rows_details
|
369
365
|
], # RowReportFields
|
370
|
-
type=rc.SelectType.DROPDOWN,
|
371
366
|
label="Details",
|
372
367
|
),
|
373
368
|
)
|
@@ -414,7 +409,6 @@ class PIIOperatorReport:
|
|
414
409
|
self.report_spec.run_summary.elapsed_time
|
415
410
|
),
|
416
411
|
),
|
417
|
-
columns=2,
|
418
412
|
),
|
419
413
|
rc.Heading("Entities Distribution", level=3),
|
420
414
|
plot_pie(self.report_spec.run_summary.statics),
|
@@ -423,7 +417,7 @@ class PIIOperatorReport:
|
|
423
417
|
entites_df = self._build_total_entity_df()
|
424
418
|
summary_stats.append(rc.Heading("Resolved Entities", level=3))
|
425
419
|
summary_stats.append(rc.DataTable(entites_df, index=True))
|
426
|
-
return rc.Group(summary_stats, label="STATS")
|
420
|
+
return rc.Group(*summary_stats, label="STATS")
|
427
421
|
|
428
422
|
def _make_yaml_card(self) -> rc.Group:
|
429
423
|
"""Shows the full pii config yaml."""
|
@@ -449,13 +443,12 @@ class PIIOperatorReport:
|
|
449
443
|
|
450
444
|
if len(model_cards) <= 1:
|
451
445
|
return rc.Group(
|
452
|
-
model_cards,
|
446
|
+
*model_cards,
|
453
447
|
label="MODEL CARD",
|
454
448
|
)
|
455
449
|
return rc.Group(
|
456
450
|
rc.Select(
|
457
451
|
model_cards,
|
458
|
-
type=rc.SelectType.TABS,
|
459
452
|
),
|
460
453
|
label="MODEL CARD",
|
461
454
|
)
|
ads/opctl/utils.py
CHANGED
@@ -154,7 +154,7 @@ def build_image(image_type: str, gpu: bool = False) -> None:
|
|
154
154
|
# Just get the manufacturer of the processors
|
155
155
|
manufacturer = cpuinfo.get_cpu_info().get("brand_raw")
|
156
156
|
arch = (
|
157
|
-
"arm" if re.search("apple m\d
|
157
|
+
"arm" if re.search("apple m\d", manufacturer, re.IGNORECASE) else "other"
|
158
158
|
)
|
159
159
|
print(f"The local machine's platform is {arch}.")
|
160
160
|
image, dockerfile, target = _get_image_name_dockerfile_target(
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: oracle_ads
|
3
|
-
Version: 2.13.
|
3
|
+
Version: 2.13.6
|
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
|
@@ -13,9 +13,9 @@ ads/aqua/client/openai_client.py,sha256=Gi8nSrtPAUOjxRNu-6UUAqtxWyQIQ5CAvatnm7Xf
|
|
13
13
|
ads/aqua/common/__init__.py,sha256=rZrmh1nho40OCeabXCNWtze-mXi-PGKetcZdxZSn3_0,204
|
14
14
|
ads/aqua/common/decorator.py,sha256=JEN6Cy4DYgQbmIR3ShCjTuBMCnilDxq7jkYMJse1rcM,4112
|
15
15
|
ads/aqua/common/entities.py,sha256=kLUJu77Sg97VrHb76PvFAAaSWEUum9nYTwzMtOnUo50,8922
|
16
|
-
ads/aqua/common/enums.py,sha256=
|
16
|
+
ads/aqua/common/enums.py,sha256=rTZDOQzTfcgwEl7gjVY3_JotHXkz7wB_edEIB0i6AeQ,3739
|
17
17
|
ads/aqua/common/errors.py,sha256=QONm-2jKBg8AjgOKXm6x-arAV1KIW9pdhfNN1Ys21Wo,3044
|
18
|
-
ads/aqua/common/utils.py,sha256=
|
18
|
+
ads/aqua/common/utils.py,sha256=OtHtGCC0gZvqNif_sfQoYp4KnZhIulv5a_gbceomIew,44238
|
19
19
|
ads/aqua/config/__init__.py,sha256=2a_1LI4jWtJpbic5_v4EoOUTXCAH7cmsy9BW5prDHjU,179
|
20
20
|
ads/aqua/config/config.py,sha256=MNY4ttccaQdhxUyS1o367YIDl-U_AiSLVlgvzSd7JE4,944
|
21
21
|
ads/aqua/config/container_config.py,sha256=7n3ZZG7Y1J4IkwEAhkoQ-h638pthPcyjRQogR25pSB4,8292
|
@@ -58,7 +58,7 @@ ads/aqua/model/__init__.py,sha256=j2iylvERdANxgrEDp7b_mLcKMz1CF5Go0qgYCiMwdos,27
|
|
58
58
|
ads/aqua/model/constants.py,sha256=3BT5Dpr7EmTrBL7xF128gHGGjwyBgwAr3OlLSWSnR9g,1628
|
59
59
|
ads/aqua/model/entities.py,sha256=kBjsihInnbGw9MhWQEfJ4hcWEzv6BxF8VlDDFWUPYVg,9903
|
60
60
|
ads/aqua/model/enums.py,sha256=iJi-AZRh7KR_HK5HUwTkgnTOGVna2Ai5WEzqCjk7Y3s,1079
|
61
|
-
ads/aqua/model/model.py,sha256=
|
61
|
+
ads/aqua/model/model.py,sha256=9gl2bPyUURb3azHmtu-iZJy2-hpCQKI-NvVPAxjPuy8,79324
|
62
62
|
ads/aqua/modeldeployment/__init__.py,sha256=RJCfU1yazv3hVWi5rS08QVLTpTwZLnlC8wU8diwFjnM,391
|
63
63
|
ads/aqua/modeldeployment/constants.py,sha256=lJF77zwxmlECljDYjwFAMprAUR_zctZHmawiP-4alLg,296
|
64
64
|
ads/aqua/modeldeployment/deployment.py,sha256=bKwq0-qrAni2mZ9LMslcME-qlWSOhp7bn1H1zCvi1e0,55636
|
@@ -171,7 +171,7 @@ ads/dataset/label_encoder.py,sha256=JEvS7zdQRrj-hyDqLCY-tXLeROYCtdibapRWoUDXy_0,
|
|
171
171
|
ads/dataset/pipeline.py,sha256=laXu4E-ipL7UKWEeTcvJEw2ub8YYUNFUo4Taqa4eB_o,1642
|
172
172
|
ads/dataset/plot.py,sha256=8DB7brJqBJBsTFWogOxfYPYwTykFwAHFOIjA3Q8P2NE,26056
|
173
173
|
ads/dataset/progress.py,sha256=ulcjMurT0P0FKJk0-6tmUQF5clpv2VGpnD2shM2EIHA,2298
|
174
|
-
ads/dataset/recommendation.py,sha256=
|
174
|
+
ads/dataset/recommendation.py,sha256=lxVN9ThG2Mjs9aSLbVRxx_lWJ1U3kFZEN5QoqMiY-aw,12633
|
175
175
|
ads/dataset/recommendation_transformer.py,sha256=ijt7EnG65vUuuMgfMH6gRE-kSVXtXoHvieFiagWg05U,22159
|
176
176
|
ads/dataset/regression_dataset.py,sha256=KYoxzhn7kPXSUFX_QDDC4eSHP-3rAC3Y-2BHj-L28Zo,562
|
177
177
|
ads/dataset/sampled_dataset.py,sha256=rvmQagFVDXZXtmUw_ugKO1cDL4sOZfqvsG033PnxXR4,39566
|
@@ -579,7 +579,7 @@ ads/opctl/forecast.py,sha256=ZInj8FyXHkdjiEmXDc-jH1xT7JAGHEKwP0Lnq39xWGQ,418
|
|
579
579
|
ads/opctl/index.yaml,sha256=cf9j3VXcNY-DvFlAZQLZj8-hA9QArWlirPtN1sRKqyM,68
|
580
580
|
ads/opctl/schema.yaml.yml,sha256=L4eoHVFLu5tHPDOD53-dVGbscKkXG86i4IbRX-bVL2g,546
|
581
581
|
ads/opctl/script.py,sha256=3AgTOjDnvmheu4ROrn56d38h8wZVOZwne_ix2x3U6bY,1181
|
582
|
-
ads/opctl/utils.py,sha256=
|
582
|
+
ads/opctl/utils.py,sha256=QL0TmdVdP9Cywwqt8pF7mcpJpG0tLfc8A9M6X_sb20U,10671
|
583
583
|
ads/opctl/backend/__init__.py,sha256=DwYupQz6SOfMLmmAjJ9danchK0shQRJKTGPU--naQgY,204
|
584
584
|
ads/opctl/backend/ads_dataflow.py,sha256=XHk6OEcaWPU6vRvvRMqROiN8PriFKx_5Gvu6cz6pZas,13031
|
585
585
|
ads/opctl/backend/ads_ml_job.py,sha256=Wwt2uiehi7ulkoPlhb4k5UeqYw1Y56Y_ANhGw5G5zP8,27834
|
@@ -748,7 +748,7 @@ ads/opctl/operator/lowcode/pii/model/__init__.py,sha256=sAqmLhogrLXb3xI7dPOj9HmS
|
|
748
748
|
ads/opctl/operator/lowcode/pii/model/factory.py,sha256=mM-xifHwVa1tGHcTcvgySUrGsPmIqmOavf8i_dVbkRQ,2502
|
749
749
|
ads/opctl/operator/lowcode/pii/model/guardrails.py,sha256=--GUFt-zlVyJY5WQZNMHjQDlVfVy-tYeXubgvYN-H-U,6246
|
750
750
|
ads/opctl/operator/lowcode/pii/model/pii.py,sha256=hbOomsCNgj7uZNOdUIja3rE-iTGhh9P2hKh8xrtpXR4,5110
|
751
|
-
ads/opctl/operator/lowcode/pii/model/report.py,sha256=
|
751
|
+
ads/opctl/operator/lowcode/pii/model/report.py,sha256=8D24DlDHPy_FRNUzFkKN7iTFH-974xiJ48rzUWsUsd8,16167
|
752
752
|
ads/opctl/operator/lowcode/pii/model/processor/__init__.py,sha256=febfGPoGJXTD-hCJoiVmsnBP3K3MYBqfuQoTNPm_4kY,910
|
753
753
|
ads/opctl/operator/lowcode/pii/model/processor/email_replacer.py,sha256=sTjMbP8UfwszrzFI0QgzZ0BwWfVqYxhWJ1z8S5AcE2U,996
|
754
754
|
ads/opctl/operator/lowcode/pii/model/processor/mbi_replacer.py,sha256=nm4dRZjFwxraktXTR1FConaAH4o1uagiXMVeGU0H0O0,1025
|
@@ -852,8 +852,8 @@ ads/type_discovery/unknown_detector.py,sha256=yZuYQReO7PUyoWZE7onhhtYaOg6088wf1y
|
|
852
852
|
ads/type_discovery/zipcode_detector.py,sha256=3AlETg_ZF4FT0u914WXvTT3F3Z6Vf51WiIt34yQMRbw,1421
|
853
853
|
ads/vault/__init__.py,sha256=x9tMdDAOdF5iDHk9u2di_K-ze5Nq068x25EWOBoWwqY,245
|
854
854
|
ads/vault/vault.py,sha256=hFBkpYE-Hfmzu1L0sQwUfYcGxpWmgG18JPndRl0NOXI,8624
|
855
|
-
oracle_ads-2.13.
|
856
|
-
oracle_ads-2.13.
|
857
|
-
oracle_ads-2.13.
|
858
|
-
oracle_ads-2.13.
|
859
|
-
oracle_ads-2.13.
|
855
|
+
oracle_ads-2.13.6.dist-info/entry_points.txt,sha256=9VFnjpQCsMORA4rVkvN8eH6D3uHjtegb9T911t8cqV0,35
|
856
|
+
oracle_ads-2.13.6.dist-info/licenses/LICENSE.txt,sha256=zoGmbfD1IdRKx834U0IzfFFFo5KoFK71TND3K9xqYqo,1845
|
857
|
+
oracle_ads-2.13.6.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
858
|
+
oracle_ads-2.13.6.dist-info/METADATA,sha256=r07qyuquzLOV4t2OloGNRKDEgdbwifVB6v6viXCK7oI,16639
|
859
|
+
oracle_ads-2.13.6.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|