qwak-sdk 0.5.82__py3-none-any.whl → 0.5.86__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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # fmt: off
2
2
  __author__ = '''Qwak.ai'''
3
- __version__ = '0.5.82'
3
+ __version__ = '0.5.86'
4
4
 
5
5
  from qwak.inner import wire_dependencies
6
6
 
qwak_sdk/cli.py CHANGED
@@ -4,6 +4,7 @@ import click
4
4
  from packaging import version
5
5
  from qwak.inner.di_configuration import UserAccountConfiguration
6
6
  from qwak.inner.di_configuration.account import UserAccount
7
+ from qwak.inner.tool.auth import FrogMLAuthClient
7
8
 
8
9
  from qwak_sdk import __version__ as sdk_version
9
10
  from qwak_sdk.commands.admin.admin_commands_group import admin_commands_group
@@ -41,7 +42,32 @@ def create_qwak_cli():
41
42
 
42
43
  @qwak_cli.command("configure", short_help="Configure the Qwak environment")
43
44
  @click.option(
44
- "--api-key", metavar="PASSWORD", required=False, help="Qwak assigned API key"
45
+ "--api-key",
46
+ metavar="QWAK_API_KEY",
47
+ required=False,
48
+ help="Qwak assigned API key",
49
+ )
50
+ @click.option(
51
+ "--url", metavar="BASE_URL", required=False, help="Artifactory base url"
52
+ )
53
+ @click.option(
54
+ "--username", metavar="USERNAME", required=False, help="The user's username"
55
+ )
56
+ @click.option(
57
+ "--password", metavar="PASSWORD", required=False, help="The user's password"
58
+ )
59
+ @click.option(
60
+ "--token",
61
+ metavar="TOKEN",
62
+ required=False,
63
+ help="Access token to authenticate",
64
+ )
65
+ @click.option(
66
+ "--interactive",
67
+ metavar="INTERACTIVE",
68
+ required=False,
69
+ help="Login with interactive flow",
70
+ default=False,
45
71
  )
46
72
  @click.option(
47
73
  "--environment",
@@ -51,15 +77,46 @@ def create_qwak_cli():
51
77
  is_eager=True,
52
78
  help="Qwak environment's name",
53
79
  )
80
+ @click.option(
81
+ "--type",
82
+ metavar="TYPE",
83
+ default="qwak",
84
+ required=False,
85
+ type=click.Choice(["qwak", "jfrog"], case_sensitive=False),
86
+ is_eager=True,
87
+ help="Login type (qwak/jfrog)",
88
+ )
54
89
  @profile_setter_wrapper
55
- def set_configuration(api_key: Optional[str], environment: str, **_):
56
- if api_key is None:
57
- api_key = click.prompt("Please enter your API key", type=str)
58
-
59
- account_config = UserAccountConfiguration()
60
- account_config.configure_user(UserAccount(api_key=api_key))
90
+ def set_configuration(
91
+ api_key: Optional[str],
92
+ url: Optional[str],
93
+ username: Optional[str],
94
+ password: Optional[str],
95
+ token: Optional[str],
96
+ interactive: bool,
97
+ environment: str,
98
+ type: str,
99
+ **_,
100
+ ):
101
+ if type.lower() == "jfrog":
102
+ account_config = UserAccountConfiguration(auth_client=FrogMLAuthClient)
103
+ account_config.configure_user(
104
+ UserAccount(
105
+ url=url,
106
+ username=username,
107
+ password=password,
108
+ api_key=token,
109
+ anonymous=False,
110
+ is_interactive=interactive,
111
+ )
112
+ )
113
+ elif type.lower() == "qwak":
114
+ if api_key is None:
115
+ api_key = click.prompt("Please enter your API key", type=str)
61
116
 
62
- print(f"User successfully configured for the '{environment}' environment")
117
+ account_config = UserAccountConfiguration()
118
+ account_config.configure_user(UserAccount(api_key=api_key))
119
+ print(f"User successfully configured for the '{environment}' environment")
63
120
 
64
121
  qwak_cli.add_command(projects_command_group)
65
122
  qwak_cli.add_command(models_command_group)
@@ -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: feature set name that will be triggered
21
+ name: Feature set name that will be triggered.
19
22
  """
20
23
  try:
21
- FeatureRegistryClient().run_feature_set(feature_set_name=name)
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}")
@@ -132,8 +132,8 @@ from qwak_sdk.inner.tools.config_handler import config_handler
132
132
  )
133
133
  @click.option(
134
134
  "--cache/--no-cache",
135
- default=None,
136
- help="Disable docker build cache. [Default: Cache enabled]",
135
+ default=False,
136
+ help="Disable docker build cache. [Default: Cache disabled]",
137
137
  )
138
138
  @click.option(
139
139
  "-v",
@@ -1,16 +1,15 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qwak-sdk
3
- Version: 0.5.82
3
+ Version: 0.5.86
4
4
  Summary: Qwak SDK and CLI for qwak models
5
5
  License: Apache-2.0
6
6
  Keywords: mlops,ml,deployment,serving,model
7
7
  Author: Qwak
8
8
  Author-email: info@qwak.com
9
- Requires-Python: >=3.7.1,<3.12
9
+ Requires-Python: >=3.9,<3.12
10
10
  Classifier: License :: OSI Approved :: Apache Software License
11
11
  Classifier: Operating System :: OS Independent
12
12
  Classifier: Programming Language :: Python :: 3
13
- Classifier: Programming Language :: Python :: 3.8
14
13
  Classifier: Programming Language :: Python :: 3.9
15
14
  Classifier: Programming Language :: Python :: 3.10
16
15
  Classifier: Programming Language :: Python :: 3.11
@@ -41,7 +40,7 @@ Requires-Dist: pyarrow (>=6.0.0,<11.0.0) ; extra == "batch" or extra == "feature
41
40
  Requires-Dist: pyathena (>=2.2.0,!=2.18.0) ; extra == "feature-store"
42
41
  Requires-Dist: pyspark (==3.4.2) ; extra == "feature-store"
43
42
  Requires-Dist: python-json-logger (>=2.0.2)
44
- Requires-Dist: qwak-core (==0.4.105)
43
+ Requires-Dist: qwak-core (==0.4.165)
45
44
  Requires-Dist: qwak-inference (>=0.1.18,<0.2.0)
46
45
  Requires-Dist: rich (>=13.0.0)
47
46
  Requires-Dist: tabulate (>=0.8.0)
@@ -1,5 +1,5 @@
1
- qwak_sdk/__init__.py,sha256=5WxdaiKUba1SxlVhvAfhCqKTvIv97ryFMadJWNOh6yw,135
2
- qwak_sdk/cli.py,sha256=AFUAqablunsHasfY1ikhj9GYUARbQ5dR-sblxqa1id4,2841
1
+ qwak_sdk/__init__.py,sha256=9eYJ9BVyrth4Dyzyk3AYq0iWC7Z31TrbdZLJm9iJbrY,135
2
+ qwak_sdk/cli.py,sha256=frMefF0AmLI1g5A9aADNueUkMDjRHikKlmXIA2i4kYA,4510
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
5
5
  qwak_sdk/commands/_logic/tools.py,sha256=uJOSfpifONXjFJjaHvm_7ivTs8K0PO56YoxhU0dktPU,239
@@ -97,7 +97,7 @@ qwak_sdk/commands/feature_store/register/ui.py,sha256=F9bCsV13ZdmzHw470Bfso48Lzj
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=1VJBqzxMwUWcytmZL0ymf9QlYa7oX6RDLmKsLmYVW_4,1015
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
@@ -122,7 +122,7 @@ qwak_sdk/commands/models/build/_logic/util/protobuf_factory.py,sha256=ar_oY38w_x
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
124
  qwak_sdk/commands/models/build/_logic/wait_until_finished.py,sha256=DxIyNK-MFjxSh9xe7dJx-znmz8ZOqelK-cJQvr7YI9g,1220
125
- qwak_sdk/commands/models/build/ui.py,sha256=eQWoaA5zA3KsRUfNMA3XanLboVc2rO50l6FzdDomd1c,9869
125
+ qwak_sdk/commands/models/build/ui.py,sha256=lBuRa-DpEKnHBz6xs2ZGWr6JzZkwGSXDNeK8LDJCM4A,9871
126
126
  qwak_sdk/commands/models/builds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
127
  qwak_sdk/commands/models/builds/builds_commands_group.py,sha256=0nSfTY8TracXG61rFboQWUTXJisHO6dgtJKeijy6ru8,491
128
128
  qwak_sdk/commands/models/builds/cancel/__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.82.dist-info/entry_points.txt,sha256=vSl0ELYDyj640oMM57u0AjBP87wtLYxCcGOendhEx80,47
323
- qwak_sdk-0.5.82.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
324
- qwak_sdk-0.5.82.dist-info/METADATA,sha256=v3Tkqf9G6556gBOX_jfQCW4ygXdgSb0N7D2S8Liw4fE,2978
325
- qwak_sdk-0.5.82.dist-info/RECORD,,
322
+ qwak_sdk-0.5.86.dist-info/entry_points.txt,sha256=vSl0ELYDyj640oMM57u0AjBP87wtLYxCcGOendhEx80,47
323
+ qwak_sdk-0.5.86.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
324
+ qwak_sdk-0.5.86.dist-info/METADATA,sha256=LP4ousAyUlpzuorwgdCGPtAVLw9r_a4W53Oc7uVloyM,2926
325
+ qwak_sdk-0.5.86.dist-info/RECORD,,