frogml-core 0.0.4__py3-none-any.whl → 0.0.5__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.
frogml_core/__init__.py CHANGED
@@ -1,7 +1,7 @@
1
1
  """Top-level package for frogml."""
2
2
 
3
3
  __author__ = "jfrog"
4
- __version__ = "0.0.4"
4
+ __version__ = "0.0.5"
5
5
 
6
6
  from frogml_core.inner.di_configuration import wire_dependencies
7
7
  from frogml_core.model.model_version_tracking import ( # noqa: F401,E501
@@ -3,6 +3,7 @@ from typing import Optional
3
3
  import grpc
4
4
  from dependency_injector.wiring import Provide
5
5
 
6
+ from frogml_core.utils.model_utils import get_model_id_from_model_name
6
7
  from frogml_proto.qwak.models.models_pb2 import (
7
8
  CreateModelRequest,
8
9
  DeleteModelRequest,
@@ -59,7 +60,7 @@ class ModelsManagementClient:
59
60
  return self._models_management_service.CreateModel(
60
61
  CreateModelRequest(
61
62
  model_spec=ModelSpec(
62
- model_named_id=model_name.lower().replace(" ", "-"),
63
+ model_named_id=get_model_id_from_model_name(model_name),
63
64
  display_name=model_name,
64
65
  project_id=project_id,
65
66
  model_description=model_description,
@@ -3,6 +3,7 @@ from platform import python_version
3
3
  from dependency_injector.wiring import Provide
4
4
  from grpc import RpcError
5
5
 
6
+ from frogml_core.utils.model_utils import get_model_id_from_model_name
6
7
  from frogml_proto.jfml.model_version.v1.model_repository_spec_pb2 import (
7
8
  ModelRepositorySpec,
8
9
  )
@@ -33,7 +34,7 @@ class ModelVersionManagerClient:
33
34
  def __build_create_model_request(
34
35
  project_key: str,
35
36
  repository_key: str,
36
- model_id: str,
37
+ model_name: str,
37
38
  model_version_name: str,
38
39
  model_version_framework: ModelVersionFramework,
39
40
  dry_run: bool,
@@ -44,7 +45,7 @@ class ModelVersionManagerClient:
44
45
  repository_spec=ModelRepositorySpec(
45
46
  project_key=project_key,
46
47
  repository_key=repository_key,
47
- model_id=model_id,
48
+ model_id=get_model_id_from_model_name(model_name),
48
49
  ),
49
50
  name=model_version_name,
50
51
  framework=model_version_framework,
@@ -64,7 +65,7 @@ class ModelVersionManagerClient:
64
65
  create_model_request = self.__build_create_model_request(
65
66
  project_key=project_key,
66
67
  repository_key=repository_key,
67
- model_id=model_name,
68
+ model_name=model_name,
68
69
  model_version_name=model_version_name,
69
70
  model_version_framework=model_version_framework,
70
71
  dry_run=True,
@@ -90,7 +91,7 @@ class ModelVersionManagerClient:
90
91
  create_model_request = self.__build_create_model_request(
91
92
  project_key=project_key,
92
93
  repository_key=repository_key,
93
- model_id=model_name,
94
+ model_name=model_name,
94
95
  model_version_name=model_version_name,
95
96
  model_version_framework=model_version_framework,
96
97
  dry_run=False,
@@ -0,0 +1,2 @@
1
+ def get_model_id_from_model_name(model_name: str) -> str:
2
+ return model_name.strip().lower().replace(" ", "_").replace("-", "_")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: frogml-core
3
- Version: 0.0.4
3
+ Version: 0.0.5
4
4
  Summary: frogml Core contains the necessary objects and communication tools for using the Jfrog ml Platform
5
5
  License: Apache-2.0
6
6
  Keywords: mlops,ml,deployment,serving,model
@@ -12,8 +12,6 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Programming Language :: Python :: 3.9
13
13
  Classifier: Programming Language :: Python :: 3.10
14
14
  Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Programming Language :: Python :: 3.7
16
- Classifier: Programming Language :: Python :: 3.8
17
15
  Classifier: Programming Language :: Python :: Implementation :: CPython
18
16
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
19
17
  Provides-Extra: feature-store
@@ -28,12 +26,12 @@ Requires-Dist: frogml-storage (>=0.9.0,<0.10.0)
28
26
  Requires-Dist: grpcio (>=1.57.0)
29
27
  Requires-Dist: joblib (>=1.3.2,<2.0.0)
30
28
  Requires-Dist: marshmallow-dataclass (>=8.5.8,<9.0.0)
31
- Requires-Dist: protobuf (>=3.10,<4) ; python_full_version >= "3.7.1" and python_version < "3.10"
29
+ Requires-Dist: protobuf (>=3.10,<4) ; python_version < "3.10"
32
30
  Requires-Dist: protobuf (>=4.21.6) ; python_version >= "3.10"
33
31
  Requires-Dist: pyarrow (>=6.0.0) ; extra == "feature-store"
34
32
  Requires-Dist: pyathena (>=2.2.0,!=2.18.0) ; extra == "feature-store"
33
+ Requires-Dist: pyjwt (>=2.10.1,<3.0.0)
35
34
  Requires-Dist: pyspark (==3.4.2) ; extra == "feature-store"
36
- Requires-Dist: python-jose
37
35
  Requires-Dist: python-json-logger (>=3.2.1,<4.0.0)
38
36
  Requires-Dist: requests
39
37
  Requires-Dist: retrying (==1.3.4)
@@ -1,4 +1,4 @@
1
- frogml_core/__init__.py,sha256=FEH4fn3sgb5td_T6APitX5ZU7tYrNApGiJUwKXfuQP4,776
1
+ frogml_core/__init__.py,sha256=gtjCUe_Qnnwk_i-GPq2WqAVkjn_BLGk8M042omH-oio,776
2
2
  frogml_core/automations/__init__.py,sha256=j2gD15MN-xVWhI5rAFsDwhL0CIyICLNT0scXsKvNBkU,1547
3
3
  frogml_core/automations/automation_executions.py,sha256=xpOb9Dq8gPPGNQDJTvBBZbNz4woZDRZY0HqnLSu7pwU,3230
4
4
  frogml_core/automations/automations.py,sha256=GKEQyQMi8sxX5oZn62PaxPi0zD8IaJRjBkhczRJxHNs,13070
@@ -71,9 +71,9 @@ frogml_core/clients/kube_deployment_captain/client.py,sha256=oz7VF37TSO0S07MqXOY
71
71
  frogml_core/clients/logging_client/__init__.py,sha256=1OCHnigQBYThBwGbxCreYA0BgP0HcuLFzNEWd3Yxh-c,34
72
72
  frogml_core/clients/logging_client/client.py,sha256=A7qQJWW54Ve7O0DuJX9gmSJlUQyRIKC0VmfGS6bUwjo,4950
73
73
  frogml_core/clients/model_management/__init__.py,sha256=vjWVP8MjmK4_A70WOgJqa6x24AeLK-ABjGJtogGzw9w,43
74
- frogml_core/clients/model_management/client.py,sha256=ZsElgiI2hH8eArLeN6Gm4mN8VojdPyCSmbCNUQspJD4,4500
74
+ frogml_core/clients/model_management/client.py,sha256=rXnzcP3-pfXCVG0KlcCwbdeIJ1iFzV84JYtyNC8n-x8,4575
75
75
  frogml_core/clients/model_version_manager/__init__.py,sha256=4Pnfzj4Egps48__dProdbSKQl5pNip0hGJd75w67BfY,46
76
- frogml_core/clients/model_version_manager/client.py,sha256=HvoIEx3fFP4cLoEnmIqD3jwB1EXA4a3TvOuz43eXkeg,4038
76
+ frogml_core/clients/model_version_manager/client.py,sha256=-QN6ibQ_wdkS_pUqcD_WfjSoroeGgCMFEXOcqOdndVo,4147
77
77
  frogml_core/clients/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
78
  frogml_core/clients/project/client.py,sha256=VvnUk7mo-UkE9Gkj9jVkCPGTVx8qmuekMz7oH9Uzv2Y,2159
79
79
  frogml_core/clients/prompt_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -419,6 +419,7 @@ frogml_core/tools/logger/logging.yml,sha256=E3wtIVo7JV5DPP0EjT2Ang1zhdntW9s7uMVW
419
419
  frogml_core/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
420
420
  frogml_core/utils/datetime_utils.py,sha256=3zK7PUrerMlwB7U6WeuYwMAclVMfPqBNZihNRyIVMs4,581
421
421
  frogml_core/utils/dict_utils.py,sha256=YsOSQeGpmrsm3CMnx2ZbqvzEcybk3m-0TCMXbBdBXaY,263
422
+ frogml_core/utils/model_utils.py,sha256=fLdYIScmVUfChGGxOacH2mID00ZUOPtS4ewUimEDGhg,132
422
423
  frogml_core/utils/proto_utils.py,sha256=QXEOf-pmqRLaijqCVt4IHb7_b8bmG1_ghfgMmqzHrg0,1730
423
424
  frogml_core/vector_store/__init__.py,sha256=9gR2B5A1MXb2ks5VUzqrPASGpVTDuJs4uq7N7FNWOY4,120
424
425
  frogml_core/vector_store/client.py,sha256=mmchLHjR5aOZOLIz1eibmsoXSMHvcHjCtaWB24QZoAY,6067
@@ -967,7 +968,7 @@ frogml_services_mock/mocks/alert_manager_service_api.py,sha256=wEBgwtCRAxUSAni-r
967
968
  frogml_services_mock/mocks/alert_registry_service_api.py,sha256=k_MbEytyIvUcMffqd1E6Wf0qBEOyZMVpBu-jaS6Tvjw,2277
968
969
  frogml_services_mock/mocks/analytics_api.py,sha256=9zA90He4hYOd8Wr1k_wZho6bWsbkd8mVUt4MUCrTEKc,2132
969
970
  frogml_services_mock/mocks/audience_service_api.py,sha256=x96adhF05NYqEtI8lJaf5llrZX29udPLHuVXKy_FbR0,2661
970
- frogml_services_mock/mocks/authentication_service.py,sha256=cmsDEcVjJsCU143oOAEfinShvzRw9I8mJAAEIa53SjI,1176
971
+ frogml_services_mock/mocks/authentication_service.py,sha256=cyuH9XX8oicOz_GFoIgP62ru0NWxk7OiXQushfftBUc,1170
971
972
  frogml_services_mock/mocks/automation_management_service.py,sha256=-7kncqM3R-_pLmppzFpuv_TniXCVGVuESculVuQ3EbY,8238
972
973
  frogml_services_mock/mocks/autoscaling_service_api.py,sha256=u3RkwHxACPFSk9DwhLFQSI7_ULoHN9uWFL-zyyo-sNw,1032
973
974
  frogml_services_mock/mocks/batch_job_manager_service.py,sha256=QY3HA0MlA8eg2jkQEzjyGx8UsSnlGbOUopDLOYLacL4,13146
@@ -1012,6 +1013,6 @@ frogml_services_mock/mocks/workspace_manager_service_mock.py,sha256=WbOiWgOyr-xT
1012
1013
  frogml_services_mock/services_mock.py,sha256=_34z6rFCHFwcSni-9eyJlrH264xsL_QDNmG-EBv0zMc,20281
1013
1014
  frogml_services_mock/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1014
1015
  frogml_services_mock/utils/service_utils.py,sha256=ZlB0CnB1J6oBn6_m7fQO2U8tKoboHdUa6ljjkRMYNXU,265
1015
- frogml_core-0.0.4.dist-info/METADATA,sha256=p-i36cxAoVFMZ9lytMKXYpNxNTJ-NP0y0UKLWH33dd4,2228
1016
- frogml_core-0.0.4.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
1017
- frogml_core-0.0.4.dist-info/RECORD,,
1016
+ frogml_core-0.0.5.dist-info/METADATA,sha256=F0kOu8Pcq0VETo8XqWjePdCvQq21d3um34KbbfoDjvg,2105
1017
+ frogml_core-0.0.5.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
1018
+ frogml_core-0.0.5.dist-info/RECORD,,
@@ -1,6 +1,6 @@
1
1
  from datetime import datetime, timedelta
2
2
 
3
- from jose import jwt
3
+ import jwt
4
4
 
5
5
  from frogml_proto.qwak.administration.v0.authentication.authentication_service_pb2 import (
6
6
  AuthenticateRequest,
@@ -23,7 +23,7 @@ _payload = {
23
23
  "exp": epoch,
24
24
  }
25
25
 
26
- mock_jwt_token = jwt.encode(_payload, "secret", algorithm="HS256")
26
+ mock_jwt_token = jwt.encode(_payload, key="secret", algorithm="HS256")
27
27
 
28
28
 
29
29
  class AuthenticationServiceMock(AuthenticationServiceServicer):