qwak-sdk 0.5.81__py3-none-any.whl → 0.5.85__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.
Potentially problematic release.
This version of qwak-sdk might be problematic. Click here for more details.
- qwak_sdk/__init__.py +1 -1
- qwak_sdk/commands/feature_store/register/_logic.py +12 -3
- qwak_sdk/commands/feature_store/trigger/ui.py +10 -3
- {qwak_sdk-0.5.81.dist-info → qwak_sdk-0.5.85.dist-info}/METADATA +2 -2
- {qwak_sdk-0.5.81.dist-info → qwak_sdk-0.5.85.dist-info}/RECORD +7 -7
- {qwak_sdk-0.5.81.dist-info → qwak_sdk-0.5.85.dist-info}/WHEEL +0 -0
- {qwak_sdk-0.5.81.dist-info → qwak_sdk-0.5.85.dist-info}/entry_points.txt +0 -0
qwak_sdk/__init__.py
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from pathlib import Path
|
|
1
2
|
from typing import List, Optional, Tuple, cast
|
|
2
3
|
|
|
3
4
|
from _qwak_proto.qwak.feature_store.entities.entity_pb2 import (
|
|
@@ -89,7 +90,9 @@ def _register_data_sources(
|
|
|
89
90
|
with qwak_spinner(
|
|
90
91
|
begin_text="Finding Data Sources to register", print_callback=print
|
|
91
92
|
):
|
|
92
|
-
qwak_sources = extract_class_objects(
|
|
93
|
+
qwak_sources: List[Tuple[BaseSource, str]] = extract_class_objects(
|
|
94
|
+
qwak_python_files, BaseSource
|
|
95
|
+
)
|
|
93
96
|
|
|
94
97
|
print(f"👀 Found {len(qwak_sources)} Data Sources")
|
|
95
98
|
for data_source, source_file_path in qwak_sources:
|
|
@@ -115,7 +118,10 @@ def _register_data_sources(
|
|
|
115
118
|
f"Update existing Data Source '{data_source.name}' from source file '{source_file_path}'?",
|
|
116
119
|
force,
|
|
117
120
|
):
|
|
118
|
-
data_source_proto, _ = data_source._prepare_and_get(
|
|
121
|
+
data_source_proto, _ = data_source._prepare_and_get(
|
|
122
|
+
artifact_url=artifact_url,
|
|
123
|
+
source_definition_path=Path(source_file_path),
|
|
124
|
+
)
|
|
119
125
|
registry.update_data_source(
|
|
120
126
|
existing_source.data_source.data_source_definition.data_source_id,
|
|
121
127
|
data_source_proto,
|
|
@@ -125,7 +131,10 @@ def _register_data_sources(
|
|
|
125
131
|
f"Create Data Source '{data_source.name}' from source file '{source_file_path}'?",
|
|
126
132
|
force,
|
|
127
133
|
):
|
|
128
|
-
data_source_proto, _ = data_source._prepare_and_get(
|
|
134
|
+
data_source_proto, _ = data_source._prepare_and_get(
|
|
135
|
+
artifact_url=artifact_url,
|
|
136
|
+
source_definition_path=Path(source_file_path),
|
|
137
|
+
)
|
|
129
138
|
registry.create_data_source(data_source_proto)
|
|
130
139
|
print(DELIMITER)
|
|
131
140
|
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import click
|
|
2
|
+
from _qwak_proto.qwak.feature_store.features.feature_set_service_pb2 import (
|
|
3
|
+
RunBatchFeatureSetResponse,
|
|
4
|
+
)
|
|
2
5
|
from qwak.clients.feature_store import FeatureRegistryClient
|
|
3
6
|
from qwak.exceptions import QwakException
|
|
4
7
|
|
|
@@ -15,10 +18,12 @@ def trigger_feature_set(name, **kwargs):
|
|
|
15
18
|
Trigger a batch feature set ingestion job
|
|
16
19
|
|
|
17
20
|
Args:
|
|
18
|
-
name:
|
|
21
|
+
name: Feature set name that will be triggered.
|
|
19
22
|
"""
|
|
20
23
|
try:
|
|
21
|
-
FeatureRegistryClient().run_feature_set(
|
|
24
|
+
result: RunBatchFeatureSetResponse = FeatureRegistryClient().run_feature_set(
|
|
25
|
+
feature_set_name=name
|
|
26
|
+
)
|
|
22
27
|
except Exception as e:
|
|
23
28
|
print(
|
|
24
29
|
f"{Color.RED} Failed to trigger a batch feature set ingestion for feature set {name} {Color.END}"
|
|
@@ -28,5 +33,7 @@ def trigger_feature_set(name, **kwargs):
|
|
|
28
33
|
) from e
|
|
29
34
|
|
|
30
35
|
print(
|
|
31
|
-
f"{Color.GREEN}Successfully triggered a batch feature set ingestion for feature set {Color.YELLOW}{name}"
|
|
36
|
+
f"{Color.GREEN}Successfully triggered a batch feature set ingestion for feature set: {Color.YELLOW}{name}"
|
|
32
37
|
)
|
|
38
|
+
if result.execution_id:
|
|
39
|
+
print(f"{Color.WHITE} Execution ID: {Color.YELLOW}{result.execution_id}")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: qwak-sdk
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.85
|
|
4
4
|
Summary: Qwak SDK and CLI for qwak models
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: mlops,ml,deployment,serving,model
|
|
@@ -41,7 +41,7 @@ Requires-Dist: pyarrow (>=6.0.0,<11.0.0) ; extra == "batch" or extra == "feature
|
|
|
41
41
|
Requires-Dist: pyathena (>=2.2.0,!=2.18.0) ; extra == "feature-store"
|
|
42
42
|
Requires-Dist: pyspark (==3.4.2) ; extra == "feature-store"
|
|
43
43
|
Requires-Dist: python-json-logger (>=2.0.2)
|
|
44
|
-
Requires-Dist: qwak-core (==0.4.
|
|
44
|
+
Requires-Dist: qwak-core (==0.4.111)
|
|
45
45
|
Requires-Dist: qwak-inference (>=0.1.18,<0.2.0)
|
|
46
46
|
Requires-Dist: rich (>=13.0.0)
|
|
47
47
|
Requires-Dist: tabulate (>=0.8.0)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
qwak_sdk/__init__.py,sha256=
|
|
1
|
+
qwak_sdk/__init__.py,sha256=IHd_9l0NwzDVnUsFJwNyy2fGzu1dROSeP_vQcpSDl1k,135
|
|
2
2
|
qwak_sdk/cli.py,sha256=AFUAqablunsHasfY1ikhj9GYUARbQ5dR-sblxqa1id4,2841
|
|
3
3
|
qwak_sdk/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
qwak_sdk/commands/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -92,12 +92,12 @@ qwak_sdk/commands/feature_store/list/ui.py,sha256=NuXnQ3cdXSDCFAcC2jmgx4sAdjNuyI
|
|
|
92
92
|
qwak_sdk/commands/feature_store/pause/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
93
93
|
qwak_sdk/commands/feature_store/pause/ui.py,sha256=C89yl4ly-RpyZub30q5xV5g1UDnI_GmHSndvXAkXkw4,695
|
|
94
94
|
qwak_sdk/commands/feature_store/register/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
95
|
-
qwak_sdk/commands/feature_store/register/_logic.py,sha256=
|
|
95
|
+
qwak_sdk/commands/feature_store/register/_logic.py,sha256=C_clkccTr36fUAYrjOG6-4m0qz4sc2nx351qdHtFbRI,13468
|
|
96
96
|
qwak_sdk/commands/feature_store/register/ui.py,sha256=F9bCsV13ZdmzHw470Bfso48LzjABLmYx5p8sISJNPh0,2997
|
|
97
97
|
qwak_sdk/commands/feature_store/resume/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
98
98
|
qwak_sdk/commands/feature_store/resume/ui.py,sha256=nI87xvA30qNQVJnT67lYJgwKGBtvZAurC6XX9ttpCZA,700
|
|
99
99
|
qwak_sdk/commands/feature_store/trigger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
100
|
-
qwak_sdk/commands/feature_store/trigger/ui.py,sha256=
|
|
100
|
+
qwak_sdk/commands/feature_store/trigger/ui.py,sha256=NvFfnZn-Idddt5fkO8nWvu-nP8PazN5tAb7vHyRgeck,1298
|
|
101
101
|
qwak_sdk/commands/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
102
|
qwak_sdk/commands/models/build/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
103
103
|
qwak_sdk/commands/models/build/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -319,7 +319,7 @@ qwak_sdk/tools/colors.py,sha256=7pui_GGjC4uZKYFsIyXaJjYsjLxJVHb4OrfTgr93hqo,287
|
|
|
319
319
|
qwak_sdk/tools/files.py,sha256=AyKJTOy7NhvP3SrqwIw_lxYNCOy1CvLgMmSJpWZ0OKM,2257
|
|
320
320
|
qwak_sdk/tools/log_handling.py,sha256=Aa1EmxUPCX8YWiZRutUvnqPv6K_z1zoGMwIWsEv24mM,6327
|
|
321
321
|
qwak_sdk/tools/utils.py,sha256=SHmU4r_m2ABZyFYMC03P17GvltPbYbmB39hvalIZEtI,1168
|
|
322
|
-
qwak_sdk-0.5.
|
|
323
|
-
qwak_sdk-0.5.
|
|
324
|
-
qwak_sdk-0.5.
|
|
325
|
-
qwak_sdk-0.5.
|
|
322
|
+
qwak_sdk-0.5.85.dist-info/entry_points.txt,sha256=vSl0ELYDyj640oMM57u0AjBP87wtLYxCcGOendhEx80,47
|
|
323
|
+
qwak_sdk-0.5.85.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
|
|
324
|
+
qwak_sdk-0.5.85.dist-info/METADATA,sha256=BvusqMnPJ6jGzvONLg52XICX3ilx1qYObj787b3Lptc,2978
|
|
325
|
+
qwak_sdk-0.5.85.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|