qwak-sdk 0.5.66__py3-none-any.whl → 0.5.67__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/models/build/ui.py +41 -18
- {qwak_sdk-0.5.66.dist-info → qwak_sdk-0.5.67.dist-info}/METADATA +3 -3
- {qwak_sdk-0.5.66.dist-info → qwak_sdk-0.5.67.dist-info}/RECORD +6 -6
- {qwak_sdk-0.5.66.dist-info → qwak_sdk-0.5.67.dist-info}/WHEEL +0 -0
- {qwak_sdk-0.5.66.dist-info → qwak_sdk-0.5.67.dist-info}/entry_points.txt +0 -0
qwak_sdk/__init__.py
CHANGED
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
import click
|
|
2
|
-
from qwak.inner.build_config.build_config_v1 import
|
|
3
|
-
BuildConfigV1
|
|
2
|
+
from qwak.inner.build_config.build_config_v1 import (
|
|
3
|
+
BuildConfigV1,
|
|
4
|
+
BuildProperties,
|
|
5
|
+
DockerConf,
|
|
6
|
+
ModelUri,
|
|
7
|
+
RemoteBuildResources,
|
|
8
|
+
)
|
|
4
9
|
from qwak.inner.build_logic.execute_build_pipeline import execute_build_pipeline
|
|
5
|
-
from qwak.inner.build_logic.run_handlers.programmatic_phase_run_handler import
|
|
10
|
+
from qwak.inner.build_logic.run_handlers.programmatic_phase_run_handler import (
|
|
11
|
+
ProgrammaticPhaseRunHandler,
|
|
12
|
+
)
|
|
6
13
|
from qwak.inner.const import QwakConstants
|
|
7
14
|
|
|
8
15
|
from qwak_sdk.commands.models.build._logic.build_steps import create_pipeline
|
|
9
|
-
from qwak_sdk.commands.models.build._logic.client_logs.cli_phase_run_handler import
|
|
16
|
+
from qwak_sdk.commands.models.build._logic.client_logs.cli_phase_run_handler import (
|
|
17
|
+
CLIPhaseRunHandler,
|
|
18
|
+
)
|
|
10
19
|
from qwak_sdk.commands.models.build._logic.client_logs.logger import get_build_logger
|
|
11
20
|
from qwak_sdk.commands.models.build._logic.client_logs.utils import zip_logs
|
|
12
21
|
from qwak_sdk.inner.tools.cli_tools import QwakCommand
|
|
@@ -14,7 +23,12 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
14
23
|
|
|
15
24
|
|
|
16
25
|
@click.command("build", cls=QwakCommand)
|
|
17
|
-
@click.option(
|
|
26
|
+
@click.option(
|
|
27
|
+
"--model-id",
|
|
28
|
+
metavar="NAME",
|
|
29
|
+
required=False,
|
|
30
|
+
help="Model ID to assign the build for",
|
|
31
|
+
)
|
|
18
32
|
@click.option(
|
|
19
33
|
"--main-dir",
|
|
20
34
|
metavar="NAME",
|
|
@@ -60,7 +74,7 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
60
74
|
"--git-credentials-secret",
|
|
61
75
|
metavar="NAME",
|
|
62
76
|
required=False,
|
|
63
|
-
help="
|
|
77
|
+
help="Predefined Qwak secret secret name, that contains access credentials to private repositories"
|
|
64
78
|
+ "Secrets should be of the form USERNAME:ACCESS_TOKEN. For info regarding defining Qwak Secrets using the"
|
|
65
79
|
+ "`qwak secret` command",
|
|
66
80
|
)
|
|
@@ -68,7 +82,7 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
68
82
|
"--cpus",
|
|
69
83
|
metavar="NAME",
|
|
70
84
|
required=False,
|
|
71
|
-
help="
|
|
85
|
+
help="Number of cpus to use on the remote build. [Default (If GPU not configured): 2] "
|
|
72
86
|
"(DO NOT CONFIGURE GPU AND CPU TOGETHER)",
|
|
73
87
|
type=click.FLOAT,
|
|
74
88
|
)
|
|
@@ -76,14 +90,14 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
76
90
|
"--memory",
|
|
77
91
|
metavar="NAME",
|
|
78
92
|
required=False,
|
|
79
|
-
help="
|
|
93
|
+
help="Memory to use on the remote build. [Default (If GPU not configured): 4Gi] "
|
|
80
94
|
"(DO NOT CONFIGURE GPU AND CPU TOGETHER)",
|
|
81
95
|
)
|
|
82
96
|
@click.option(
|
|
83
97
|
"--gpu-type",
|
|
84
98
|
metavar="NAME",
|
|
85
99
|
required=False,
|
|
86
|
-
help=f"
|
|
100
|
+
help=f"Type of GPU to use on the remote build ({', '.join([x for x in QwakConstants.GPU_TYPES])})."
|
|
87
101
|
f"\n[Default: {RemoteBuildResources.gpu_type}]"
|
|
88
102
|
"(DO NOT CONFIGURE GPU AND CPU TOGETHER)",
|
|
89
103
|
type=click.STRING,
|
|
@@ -93,13 +107,13 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
93
107
|
metavar="NAME",
|
|
94
108
|
required=False,
|
|
95
109
|
type=int,
|
|
96
|
-
help=f"
|
|
110
|
+
help=f"Amount of GPU's to use on the remote build."
|
|
97
111
|
f"\n[Default: {RemoteBuildResources.gpu_amount}] "
|
|
98
112
|
"(DO NOT CONFIGURE GPU AND CPU TOGETHER)",
|
|
99
113
|
)
|
|
100
114
|
@click.option(
|
|
101
115
|
"--gpu-compatible",
|
|
102
|
-
help=f"
|
|
116
|
+
help=f"Whether to build an image that is compatible to be deployd on a GPU instance."
|
|
103
117
|
f"\n[Default: {BuildProperties.gpu_compatible}] ",
|
|
104
118
|
default=False,
|
|
105
119
|
is_flag=True,
|
|
@@ -108,12 +122,12 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
108
122
|
"--iam-role-arn",
|
|
109
123
|
required=False,
|
|
110
124
|
type=str,
|
|
111
|
-
help="
|
|
125
|
+
help="Custom IAM Role ARN for AWS based builds",
|
|
112
126
|
)
|
|
113
127
|
@click.option(
|
|
114
128
|
"--service-account-key-secret-name",
|
|
115
129
|
type=str,
|
|
116
|
-
help="Custom service account for
|
|
130
|
+
help="Custom service account for GCP",
|
|
117
131
|
)
|
|
118
132
|
@click.option(
|
|
119
133
|
"--cache/--no-cache",
|
|
@@ -234,10 +248,15 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
234
248
|
)
|
|
235
249
|
@click.option(
|
|
236
250
|
"--push/--no-push",
|
|
237
|
-
help="Whether to push the
|
|
251
|
+
help="Whether to push the build image to the registry (default is True)",
|
|
238
252
|
default=True,
|
|
239
253
|
is_flag=True,
|
|
240
254
|
)
|
|
255
|
+
@click.option(
|
|
256
|
+
"--provision-instance-timeout",
|
|
257
|
+
help="Timeout in minutes for the provision instance step",
|
|
258
|
+
default=120,
|
|
259
|
+
)
|
|
241
260
|
@click.argument("uri", required=False)
|
|
242
261
|
def models_build(**kwargs):
|
|
243
262
|
return build(**kwargs)
|
|
@@ -264,13 +283,17 @@ def build(
|
|
|
264
283
|
id_only = kwargs.get("id_only")
|
|
265
284
|
pipeline, success_msg = create_pipeline(config)
|
|
266
285
|
with get_build_logger(config=config, json_logs=json_logs) as (
|
|
267
|
-
|
|
268
|
-
|
|
286
|
+
logger,
|
|
287
|
+
log_path,
|
|
269
288
|
):
|
|
270
289
|
if programmatic:
|
|
271
|
-
build_runner = ProgrammaticPhaseRunHandler(
|
|
290
|
+
build_runner = ProgrammaticPhaseRunHandler(
|
|
291
|
+
logger, config.verbose, json_logs
|
|
292
|
+
)
|
|
272
293
|
else:
|
|
273
|
-
build_runner = CLIPhaseRunHandler(
|
|
294
|
+
build_runner = CLIPhaseRunHandler(
|
|
295
|
+
logger, log_path, config.verbose, json_logs
|
|
296
|
+
)
|
|
274
297
|
|
|
275
298
|
execute_build_pipeline(
|
|
276
299
|
pipeline,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: qwak-sdk
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.67
|
|
4
4
|
Summary: Qwak SDK and CLI for qwak models
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: mlops,ml,deployment,serving,model
|
|
@@ -37,8 +37,8 @@ Requires-Dist: pandas (>1.1.3) ; (python_version >= "3.9" and python_version < "
|
|
|
37
37
|
Requires-Dist: pandas (>=1.4.0) ; (python_version >= "3.10" and python_version < "3.12") and (extra == "batch" or extra == "feedback")
|
|
38
38
|
Requires-Dist: pyarrow (>=6.0.0,<11.0.0) ; extra == "batch"
|
|
39
39
|
Requires-Dist: python-json-logger (>=2.0.2)
|
|
40
|
-
Requires-Dist: qwak-core (==0.
|
|
41
|
-
Requires-Dist: qwak-inference (>=0.1.
|
|
40
|
+
Requires-Dist: qwak-core (==0.4.8)
|
|
41
|
+
Requires-Dist: qwak-inference (>=0.1.16,<0.2.0)
|
|
42
42
|
Requires-Dist: rich (>=13.0.0)
|
|
43
43
|
Requires-Dist: tabulate (>=0.8.0)
|
|
44
44
|
Requires-Dist: yaspin (>=2.0.0)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
qwak_sdk/__init__.py,sha256=
|
|
1
|
+
qwak_sdk/__init__.py,sha256=NNZZ1nm59YD8isM6cCdmZBmVnhSLrubQOw8xfd9VXpc,135
|
|
2
2
|
qwak_sdk/cli.py,sha256=FIK1dUNxR57ypb-CeD7fKSJnPJ02lrjR9G4aj2qMLPU,2458
|
|
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
|
|
@@ -121,7 +121,7 @@ qwak_sdk/commands/models/build/_logic/util/__init__.py,sha256=47DEQpj8HBSa-_TImW
|
|
|
121
121
|
qwak_sdk/commands/models/build/_logic/util/protobuf_factory.py,sha256=ar_oY38w_x0sxgVF7EBs5h7gchNsDntvtKK5sSYxb24,1686
|
|
122
122
|
qwak_sdk/commands/models/build/_logic/util/step_decorator.py,sha256=HLZyCGdqe3Ir7SaPWp1YNRHJpjXG-e-bbAvnOFysAVM,1913
|
|
123
123
|
qwak_sdk/commands/models/build/_logic/util/text.py,sha256=tH-v19Mt8l90sMVxku5XRtrderT0qdRqJ-jLijqannA,188
|
|
124
|
-
qwak_sdk/commands/models/build/ui.py,sha256=
|
|
124
|
+
qwak_sdk/commands/models/build/ui.py,sha256=qr-brINdA6wF9QVgFjE77qGi3KIYckHTrPQlr-d5jyo,9164
|
|
125
125
|
qwak_sdk/commands/models/builds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
126
|
qwak_sdk/commands/models/builds/builds_commands_group.py,sha256=0nSfTY8TracXG61rFboQWUTXJisHO6dgtJKeijy6ru8,491
|
|
127
127
|
qwak_sdk/commands/models/builds/cancel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -318,7 +318,7 @@ qwak_sdk/tools/colors.py,sha256=7pui_GGjC4uZKYFsIyXaJjYsjLxJVHb4OrfTgr93hqo,287
|
|
|
318
318
|
qwak_sdk/tools/files.py,sha256=AyKJTOy7NhvP3SrqwIw_lxYNCOy1CvLgMmSJpWZ0OKM,2257
|
|
319
319
|
qwak_sdk/tools/log_handling.py,sha256=Aa1EmxUPCX8YWiZRutUvnqPv6K_z1zoGMwIWsEv24mM,6327
|
|
320
320
|
qwak_sdk/tools/utils.py,sha256=SHmU4r_m2ABZyFYMC03P17GvltPbYbmB39hvalIZEtI,1168
|
|
321
|
-
qwak_sdk-0.5.
|
|
322
|
-
qwak_sdk-0.5.
|
|
323
|
-
qwak_sdk-0.5.
|
|
324
|
-
qwak_sdk-0.5.
|
|
321
|
+
qwak_sdk-0.5.67.dist-info/entry_points.txt,sha256=vSl0ELYDyj640oMM57u0AjBP87wtLYxCcGOendhEx80,47
|
|
322
|
+
qwak_sdk-0.5.67.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
|
|
323
|
+
qwak_sdk-0.5.67.dist-info/METADATA,sha256=xfnTJi0rGKt4gDYgthZkCDE43GNuPOkdz8KYgS3hvEM,2599
|
|
324
|
+
qwak_sdk-0.5.67.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|