hiddenlayer-sdk 2.0.8__py3-none-any.whl → 2.0.10__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.
- hiddenlayer/__init__.py +11 -2
- hiddenlayer/sdk/rest/models/inventory_v3.py +7 -3
- hiddenlayer/sdk/rest/models/model_inventory_info.py +5 -1
- hiddenlayer/sdk/rest/models/multi_file_upload_request_v3.py +6 -2
- hiddenlayer/sdk/rest/models/scan_model_details_v3.py +6 -2
- hiddenlayer/sdk/rest/models/scan_model_details_v31.py +7 -3
- hiddenlayer/sdk/services/model_scan.py +21 -0
- hiddenlayer/sdk/version.py +1 -1
- {hiddenlayer_sdk-2.0.8.dist-info → hiddenlayer_sdk-2.0.10.dist-info}/METADATA +1 -1
- {hiddenlayer_sdk-2.0.8.dist-info → hiddenlayer_sdk-2.0.10.dist-info}/RECORD +13 -13
- {hiddenlayer_sdk-2.0.8.dist-info → hiddenlayer_sdk-2.0.10.dist-info}/WHEEL +1 -1
- {hiddenlayer_sdk-2.0.8.dist-info → hiddenlayer_sdk-2.0.10.dist-info}/licenses/LICENSE +0 -0
- {hiddenlayer_sdk-2.0.8.dist-info → hiddenlayer_sdk-2.0.10.dist-info}/top_level.txt +0 -0
hiddenlayer/__init__.py
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
import os
|
2
2
|
from typing import Callable, Optional
|
3
|
+
from urllib.parse import urljoin
|
3
4
|
|
4
5
|
import requests
|
5
6
|
from requests.auth import HTTPBasicAuth
|
@@ -33,8 +34,13 @@ class HiddenlayerServiceClient:
|
|
33
34
|
api_id: Optional[str] = None,
|
34
35
|
api_key: Optional[str] = None,
|
35
36
|
host: str = "https://api.us.hiddenlayer.ai",
|
37
|
+
auth_url: Optional[str] = None,
|
36
38
|
):
|
37
39
|
self.host = host.strip()
|
40
|
+
if auth_url:
|
41
|
+
self.auth_url = auth_url.strip()
|
42
|
+
else:
|
43
|
+
self.auth_url = None
|
38
44
|
self.is_saas = is_saas(host)
|
39
45
|
refresh_jwt_func: Optional[Callable[[], str]] = None
|
40
46
|
|
@@ -65,9 +71,12 @@ class HiddenlayerServiceClient:
|
|
65
71
|
def _get_jwt(self, *, api_id: str, api_key: str) -> str:
|
66
72
|
"Get the JWT token to auth to the Hiddenlayer API."
|
67
73
|
|
68
|
-
|
74
|
+
if self.auth_url:
|
75
|
+
auth_url = self.auth_url
|
76
|
+
else:
|
77
|
+
auth_url = os.getenv("HL_AUTH_URL", "https://auth.hiddenlayer.ai")
|
69
78
|
|
70
|
-
token_url =
|
79
|
+
token_url = urljoin(auth_url, "/oauth2/token?grant_type=client_credentials")
|
71
80
|
|
72
81
|
resp = requests.post(token_url, auth=HTTPBasicAuth(api_id, api_key))
|
73
82
|
|
@@ -17,7 +17,7 @@ import pprint
|
|
17
17
|
import re # noqa: F401
|
18
18
|
import json
|
19
19
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, StrictStr
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
22
22
|
from typing import Optional, Set
|
23
23
|
from typing_extensions import Self
|
@@ -32,7 +32,9 @@ class InventoryV3(BaseModel):
|
|
32
32
|
model_version: Optional[StrictStr] = None
|
33
33
|
model_version_id: Optional[StrictStr] = None
|
34
34
|
requesting_entity: Optional[StrictStr] = None
|
35
|
-
|
35
|
+
request_source: Optional[StrictStr] = Field(default=None, description="Identifies the system that requested the scan")
|
36
|
+
origin: Optional[StrictStr] = Field(default=None, description="Specifies the platform or service where the model originated before being scanned")
|
37
|
+
__properties: ClassVar[List[str]] = ["requested_scan_location", "model_name", "model_source", "model_version", "model_version_id", "requesting_entity", "request_source", "origin"]
|
36
38
|
|
37
39
|
model_config = ConfigDict(
|
38
40
|
populate_by_name=True,
|
@@ -90,7 +92,9 @@ class InventoryV3(BaseModel):
|
|
90
92
|
"model_source": obj.get("model_source"),
|
91
93
|
"model_version": obj.get("model_version"),
|
92
94
|
"model_version_id": obj.get("model_version_id"),
|
93
|
-
"requesting_entity": obj.get("requesting_entity")
|
95
|
+
"requesting_entity": obj.get("requesting_entity"),
|
96
|
+
"request_source": obj.get("request_source"),
|
97
|
+
"origin": obj.get("origin")
|
94
98
|
})
|
95
99
|
return _obj
|
96
100
|
|
@@ -31,9 +31,11 @@ class ModelInventoryInfo(BaseModel):
|
|
31
31
|
model_source: Optional[StrictStr] = Field(default=None, description="source (provider) info")
|
32
32
|
requested_scan_location: StrictStr = Field(description="Location to be scanned")
|
33
33
|
requesting_entity: Optional[StrictStr] = Field(default=None, description="Entity that requested the scan")
|
34
|
+
request_source: Optional[StrictStr] = Field(default=None, description="Source of the request")
|
35
|
+
origin: Optional[StrictStr] = Field(default=None, description="Origin of the scan")
|
34
36
|
model_id: StrictStr = Field(description="Unique identifier for the model")
|
35
37
|
model_version_id: StrictStr = Field(description="unique identifier for the model version")
|
36
|
-
__properties: ClassVar[List[str]] = ["model_name", "model_version", "model_source", "requested_scan_location", "requesting_entity", "model_id", "model_version_id"]
|
38
|
+
__properties: ClassVar[List[str]] = ["model_name", "model_version", "model_source", "requested_scan_location", "requesting_entity", "request_source", "origin", "model_id", "model_version_id"]
|
37
39
|
|
38
40
|
model_config = ConfigDict(
|
39
41
|
populate_by_name=True,
|
@@ -91,6 +93,8 @@ class ModelInventoryInfo(BaseModel):
|
|
91
93
|
"model_source": obj.get("model_source"),
|
92
94
|
"requested_scan_location": obj.get("requested_scan_location"),
|
93
95
|
"requesting_entity": obj.get("requesting_entity"),
|
96
|
+
"request_source": obj.get("request_source"),
|
97
|
+
"origin": obj.get("origin"),
|
94
98
|
"model_id": obj.get("model_id"),
|
95
99
|
"model_version_id": obj.get("model_version_id")
|
96
100
|
})
|
@@ -30,7 +30,9 @@ class MultiFileUploadRequestV3(BaseModel):
|
|
30
30
|
model_name: StrictStr = Field(description="Model name")
|
31
31
|
requesting_entity: StrictStr = Field(description="Requesting entity")
|
32
32
|
location_alias: Optional[StrictStr] = Field(default=None, description="Requested location alias")
|
33
|
-
|
33
|
+
request_source: Optional[StrictStr] = Field(default=None, description="Identifies the system that requested the scan")
|
34
|
+
origin: Optional[StrictStr] = Field(default=None, description="Specifies the platform or service where the model originated before being scanned")
|
35
|
+
__properties: ClassVar[List[str]] = ["model_version", "model_name", "requesting_entity", "location_alias", "request_source", "origin"]
|
34
36
|
|
35
37
|
model_config = ConfigDict(
|
36
38
|
populate_by_name=True,
|
@@ -86,7 +88,9 @@ class MultiFileUploadRequestV3(BaseModel):
|
|
86
88
|
"model_version": obj.get("model_version"),
|
87
89
|
"model_name": obj.get("model_name"),
|
88
90
|
"requesting_entity": obj.get("requesting_entity"),
|
89
|
-
"location_alias": obj.get("location_alias")
|
91
|
+
"location_alias": obj.get("location_alias"),
|
92
|
+
"request_source": obj.get("request_source"),
|
93
|
+
"origin": obj.get("origin")
|
90
94
|
})
|
91
95
|
return _obj
|
92
96
|
|
@@ -31,7 +31,9 @@ class ScanModelDetailsV3(BaseModel):
|
|
31
31
|
model_source: Optional[StrictStr] = Field(default=None, description="source (provider) info")
|
32
32
|
requested_scan_location: StrictStr = Field(description="Location to be scanned")
|
33
33
|
requesting_entity: Optional[StrictStr] = Field(default=None, description="Entity that requested the scan")
|
34
|
-
|
34
|
+
request_source: Optional[StrictStr] = Field(default=None, description="Source of the request")
|
35
|
+
origin: Optional[StrictStr] = Field(default=None, description="Origin of the scan")
|
36
|
+
__properties: ClassVar[List[str]] = ["model_name", "model_version", "model_source", "requested_scan_location", "requesting_entity", "request_source", "origin"]
|
35
37
|
|
36
38
|
model_config = ConfigDict(
|
37
39
|
populate_by_name=True,
|
@@ -88,7 +90,9 @@ class ScanModelDetailsV3(BaseModel):
|
|
88
90
|
"model_version": obj.get("model_version"),
|
89
91
|
"model_source": obj.get("model_source"),
|
90
92
|
"requested_scan_location": obj.get("requested_scan_location"),
|
91
|
-
"requesting_entity": obj.get("requesting_entity")
|
93
|
+
"requesting_entity": obj.get("requesting_entity"),
|
94
|
+
"request_source": obj.get("request_source"),
|
95
|
+
"origin": obj.get("origin")
|
92
96
|
})
|
93
97
|
return _obj
|
94
98
|
|
@@ -18,7 +18,7 @@ import re # noqa: F401
|
|
18
18
|
import json
|
19
19
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
21
|
-
from typing import Any, ClassVar, Dict, List
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
22
22
|
from typing import Optional, Set
|
23
23
|
from typing_extensions import Self
|
24
24
|
|
@@ -30,7 +30,9 @@ class ScanModelDetailsV31(BaseModel):
|
|
30
30
|
model_version: StrictStr = Field(description="If you do not provide a version, one will be generated for you.")
|
31
31
|
requested_scan_location: StrictStr = Field(description="Location to be scanned")
|
32
32
|
requesting_entity: StrictStr = Field(description="Entity that requested the scan")
|
33
|
-
|
33
|
+
request_source: Optional[StrictStr] = Field(default=None, description="Identifies the system that requested the scan")
|
34
|
+
origin: Optional[StrictStr] = Field(default=None, description="Specifies the platform or service where the model originated before being scanned")
|
35
|
+
__properties: ClassVar[List[str]] = ["model_name", "model_version", "requested_scan_location", "requesting_entity", "request_source", "origin"]
|
34
36
|
|
35
37
|
model_config = ConfigDict(
|
36
38
|
populate_by_name=True,
|
@@ -86,7 +88,9 @@ class ScanModelDetailsV31(BaseModel):
|
|
86
88
|
"model_name": obj.get("model_name"),
|
87
89
|
"model_version": obj.get("model_version"),
|
88
90
|
"requested_scan_location": obj.get("requested_scan_location"),
|
89
|
-
"requesting_entity": obj.get("requesting_entity")
|
91
|
+
"requesting_entity": obj.get("requesting_entity"),
|
92
|
+
"request_source": obj.get("request_source"),
|
93
|
+
"origin": obj.get("origin")
|
90
94
|
})
|
91
95
|
return _obj
|
92
96
|
|
@@ -48,6 +48,8 @@ class ModelScanAPI:
|
|
48
48
|
model_source: CommunityScanSource,
|
49
49
|
model_version: str = "main",
|
50
50
|
wait_for_results: bool = True,
|
51
|
+
request_source="API Upload",
|
52
|
+
origin: str = "",
|
51
53
|
) -> ScanResults:
|
52
54
|
"""
|
53
55
|
Scan a model available at a remote location using the HiddenLayer Model Scanner.
|
@@ -67,6 +69,8 @@ class ModelScanAPI:
|
|
67
69
|
model_version=model_version,
|
68
70
|
requested_scan_location=model_path,
|
69
71
|
requesting_entity="hiddenlayer-python-sdk",
|
72
|
+
request_source=request_source,
|
73
|
+
origin=origin,
|
70
74
|
),
|
71
75
|
)
|
72
76
|
result = self._model_supply_chain_api.create_scan_job(scan_job)
|
@@ -85,6 +89,8 @@ class ModelScanAPI:
|
|
85
89
|
model_path: Union[str, os.PathLike],
|
86
90
|
model_version: str = "1",
|
87
91
|
wait_for_results: bool = True,
|
92
|
+
request_source="API Upload",
|
93
|
+
origin: str = "",
|
88
94
|
) -> ScanResults:
|
89
95
|
"""
|
90
96
|
Scan a local model file using the HiddenLayer Model Scanner.
|
@@ -104,6 +110,8 @@ class ModelScanAPI:
|
|
104
110
|
model_name=model_name,
|
105
111
|
model_version=model_version,
|
106
112
|
requesting_entity="hiddenlayer-python-sdk",
|
113
|
+
request_source=request_source,
|
114
|
+
origin=origin,
|
107
115
|
)
|
108
116
|
response = self._model_supply_chain_api.begin_multi_file_upload(
|
109
117
|
multi_file_upload_request_v3=request
|
@@ -130,6 +138,7 @@ class ModelScanAPI:
|
|
130
138
|
model_version: str = "1",
|
131
139
|
s3_client: Optional[object] = None,
|
132
140
|
wait_for_results: bool = True,
|
141
|
+
request_source="API Upload",
|
133
142
|
) -> ScanResults:
|
134
143
|
"""
|
135
144
|
Scan a model file on S3.
|
@@ -174,6 +183,8 @@ class ModelScanAPI:
|
|
174
183
|
model_name=model_name,
|
175
184
|
model_version=model_version,
|
176
185
|
wait_for_results=wait_for_results,
|
186
|
+
request_source=request_source,
|
187
|
+
origin="S3",
|
177
188
|
)
|
178
189
|
|
179
190
|
def scan_azure_blob_model(
|
@@ -187,6 +198,7 @@ class ModelScanAPI:
|
|
187
198
|
blob_service_client: Optional[object] = None,
|
188
199
|
credential: Optional[object] = None,
|
189
200
|
wait_for_results: bool = True,
|
201
|
+
request_source="API Upload",
|
190
202
|
) -> ScanResults:
|
191
203
|
"""
|
192
204
|
Scan a model file on Azure Blob Storage.
|
@@ -252,6 +264,8 @@ class ModelScanAPI:
|
|
252
264
|
model_name=model_name,
|
253
265
|
model_version=model_version,
|
254
266
|
wait_for_results=wait_for_results,
|
267
|
+
request_source=request_source,
|
268
|
+
origin="Azure Blob Storage",
|
255
269
|
)
|
256
270
|
|
257
271
|
def scan_huggingface_model(
|
@@ -268,6 +282,7 @@ class ModelScanAPI:
|
|
268
282
|
force_download: bool = False,
|
269
283
|
hf_token: Optional[Union[str, bool]] = None,
|
270
284
|
wait_for_results: bool = True,
|
285
|
+
request_source="API Upload",
|
271
286
|
) -> ScanResults:
|
272
287
|
"""
|
273
288
|
Scans a model on HuggingFace.
|
@@ -322,6 +337,8 @@ class ModelScanAPI:
|
|
322
337
|
allow_file_patterns=allow_file_patterns,
|
323
338
|
ignore_file_patterns=ignore_file_patterns,
|
324
339
|
wait_for_results=wait_for_results,
|
340
|
+
request_source=request_source,
|
341
|
+
origin="Hugging Face",
|
325
342
|
)
|
326
343
|
|
327
344
|
def get_scan_results(self, *, scan_id: str) -> ScanResults:
|
@@ -390,6 +407,8 @@ class ModelScanAPI:
|
|
390
407
|
allow_file_patterns: Optional[List[str]] = None,
|
391
408
|
ignore_file_patterns: Optional[List[str]] = None,
|
392
409
|
wait_for_results: bool = True,
|
410
|
+
request_source="API Upload",
|
411
|
+
origin: str = "",
|
393
412
|
) -> ScanResults:
|
394
413
|
"""
|
395
414
|
Submits all files in a directory and its sub directories to be scanned.
|
@@ -411,6 +430,8 @@ class ModelScanAPI:
|
|
411
430
|
model_name=model_name,
|
412
431
|
model_version=model_version,
|
413
432
|
requesting_entity="hiddenlayer-python-sdk",
|
433
|
+
request_source=request_source,
|
434
|
+
origin=origin,
|
414
435
|
)
|
415
436
|
response = self._model_supply_chain_api.begin_multi_file_upload(
|
416
437
|
multi_file_upload_request_v3=request
|
hiddenlayer/sdk/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
VERSION = "2.0.
|
1
|
+
VERSION = "2.0.10"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: hiddenlayer-sdk
|
3
|
-
Version: 2.0.
|
3
|
+
Version: 2.0.10
|
4
4
|
Summary: Official HiddenLayer Python SDK
|
5
5
|
Author-email: HiddenLayer Integrations Team <integrations@hiddenlayer.com>
|
6
6
|
Maintainer-email: HiddenLayer Integrations Team <integrations@hiddenlayer.com>
|
@@ -1,10 +1,10 @@
|
|
1
|
-
hiddenlayer/__init__.py,sha256=
|
1
|
+
hiddenlayer/__init__.py,sha256=YGc00rA_UkheVMkpn5MsYuHvmUzE1Sl9OZoqLtQ1nBU,3696
|
2
2
|
hiddenlayer/sdk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
3
|
hiddenlayer/sdk/constants.py,sha256=BytOHlVWk6lhWB4bpT7kDj3ctozZA9ftaB2D6lSGtGI,628
|
4
4
|
hiddenlayer/sdk/exceptions.py,sha256=_Lelwk32LWxWuUPglfw8R8RuiX_Uxm_N7TP3BLhDLz0,226
|
5
5
|
hiddenlayer/sdk/models.py,sha256=t92fK7xxuPm1XzazNsRg5AOAD17qnvNZiGaN1gM6lHk,1776
|
6
6
|
hiddenlayer/sdk/utils.py,sha256=Ntao8hfsYuB7obZOanayIlrgJ98IWcPhs3sRi39IDkg,2997
|
7
|
-
hiddenlayer/sdk/version.py,sha256=
|
7
|
+
hiddenlayer/sdk/version.py,sha256=cvebPKJg8pP9aW2gMv6ZYLVFFp-UJVx7GaaCBql0ReY,19
|
8
8
|
hiddenlayer/sdk/rest/__init__.py,sha256=fL2dURfsADiHHxdxxbUyjrqQi5BPRVdd9p51XPrJhks,8499
|
9
9
|
hiddenlayer/sdk/rest/api_client.py,sha256=Yd71Up1SHj5pPp4jB_gIsm5Y77jHph7T4iU9NiIhUak,26291
|
10
10
|
hiddenlayer/sdk/rest/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
|
@@ -47,7 +47,7 @@ hiddenlayer/sdk/rest/models/fix.py,sha256=YaigBB7v8YSRp4_1TKs45f96sIs2XsUHQXdjRp
|
|
47
47
|
hiddenlayer/sdk/rest/models/get_condensed_model_scan_reports200_response.py,sha256=XKTEAiv21q1ah5ec6VRx_-2J8NyfbGOpSgCrjlDiN94,3610
|
48
48
|
hiddenlayer/sdk/rest/models/graph.py,sha256=CS3NGVxqaZl-n7f1PMt6VGzEubAY5qKSMGa4ipJwzCk,4764
|
49
49
|
hiddenlayer/sdk/rest/models/graph_traversal.py,sha256=XQmy0us7wSaOxeUc5dYeH2f02wjkWgr54mwMo20fL80,3835
|
50
|
-
hiddenlayer/sdk/rest/models/inventory_v3.py,sha256=
|
50
|
+
hiddenlayer/sdk/rest/models/inventory_v3.py,sha256=4jGZSyK6K_jXND4aBC2PksgUC9W8gKPs940ckNJ-diU,3485
|
51
51
|
hiddenlayer/sdk/rest/models/invocation.py,sha256=NTzgSAW05TsUKQMhlCNLl8OZiU1lWpoxKDf-LGoh8J4,13160
|
52
52
|
hiddenlayer/sdk/rest/models/location.py,sha256=KcPalokp6VzRZvT1FZMrObx6eC08GGgG1qoHACFAnjs,6686
|
53
53
|
hiddenlayer/sdk/rest/models/location_inner.py,sha256=k7he8hKddcvyjJHrC513c18JVV1dOWRMCZ7WpDhAr8I,4738
|
@@ -56,9 +56,9 @@ hiddenlayer/sdk/rest/models/logical_location.py,sha256=F-vZ6Ya8cvurh1pHF_DGIkvix
|
|
56
56
|
hiddenlayer/sdk/rest/models/message.py,sha256=my3CLkfFwJV5gUgU_hw1mVuqAo7_5i61q-g75L64zhE,2975
|
57
57
|
hiddenlayer/sdk/rest/models/mitre_atlas_inner.py,sha256=8jFDqr88ZgzuU8Je0OUCFL6YO5g1rEdaLEDAxV-Q-Vk,3476
|
58
58
|
hiddenlayer/sdk/rest/models/model.py,sha256=ozRK8O9lijrPVs0Ahy8aFPzN4V5dFSYic3Yacx_cggs,3201
|
59
|
-
hiddenlayer/sdk/rest/models/model_inventory_info.py,sha256=
|
59
|
+
hiddenlayer/sdk/rest/models/model_inventory_info.py,sha256=_x60bE1CMRUJPLhC614yFrnOS3pGTxxXYMBrr9YktHI,3845
|
60
60
|
hiddenlayer/sdk/rest/models/model_version.py,sha256=siicFB14ozdgtkDooa_UkqhzcIPtFTwHwiu_reAyhR4,2953
|
61
|
-
hiddenlayer/sdk/rest/models/multi_file_upload_request_v3.py,sha256=
|
61
|
+
hiddenlayer/sdk/rest/models/multi_file_upload_request_v3.py,sha256=Wb_igq5Tp7l7J8OdcOG-E5pdCi6VpF_SZEFjFzuHzQA,3373
|
62
62
|
hiddenlayer/sdk/rest/models/multiformat_message_string.py,sha256=eJS6TTQSbLg1S_xuL1R-ZXrLcK0Kny9odyH55-nczBU,3146
|
63
63
|
hiddenlayer/sdk/rest/models/node.py,sha256=k2wEbU5018DJDLZ48xvzqxuPcdgtpkLRT5ZB3J-vc24,4510
|
64
64
|
hiddenlayer/sdk/rest/models/notification.py,sha256=MPZRQSFMDprGdAL-BbWE1LFv4MpqWGrMEjmDtEUGqKI,7035
|
@@ -87,8 +87,8 @@ hiddenlayer/sdk/rest/models/scan_detection_v31.py,sha256=tTNRlggUmL-cY4ZRiC-2au6
|
|
87
87
|
hiddenlayer/sdk/rest/models/scan_header_v3.py,sha256=sgpiAE6NflJtLJhfUA4NmveUCHTPQN2JSsk7cEBMjVQ,5035
|
88
88
|
hiddenlayer/sdk/rest/models/scan_job.py,sha256=IADBv0WCXCZ8m2rUJ8Do7IPSc3aczICCdkLnz2g8FXs,3970
|
89
89
|
hiddenlayer/sdk/rest/models/scan_job_access.py,sha256=Q9SWDj7u9ec5H03zlzPUeO_si1rxS_c7iL_YPc-FDxo,2956
|
90
|
-
hiddenlayer/sdk/rest/models/scan_model_details_v3.py,sha256=
|
91
|
-
hiddenlayer/sdk/rest/models/scan_model_details_v31.py,sha256=
|
90
|
+
hiddenlayer/sdk/rest/models/scan_model_details_v3.py,sha256=FD0-CkMv--IU8lzXZMbjqUV3u6smTIZ4wNyT6h5mFt8,3490
|
91
|
+
hiddenlayer/sdk/rest/models/scan_model_details_v31.py,sha256=QJMMKs3LRote3ufX2DBjo2OGqLpPiHH7UGZ1o0eO3hM,3433
|
92
92
|
hiddenlayer/sdk/rest/models/scan_model_ids_v3.py,sha256=MzU_KNr5CXylDbakDOLv7qGz4naAJ2_56cuW9MATJpw,2639
|
93
93
|
hiddenlayer/sdk/rest/models/scan_report_v3.py,sha256=n9oi5wXwdBNIKdPzg1-2wEOSilDARHalTMjTF6THtfg,5658
|
94
94
|
hiddenlayer/sdk/rest/models/scan_results_map_v3.py,sha256=BQowU2WqGi0wlNqr9Oi3n_F-NEbfA4aPA-2QfdENwGQ,3363
|
@@ -118,9 +118,9 @@ hiddenlayer/sdk/rest/models/web_request.py,sha256=u9pmXP-NPDBKcW3ivNDa1I0i0vxQki
|
|
118
118
|
hiddenlayer/sdk/rest/models/web_response.py,sha256=gSKHygOE25yvLKMk__Aga90cHfpFxWvmib1SwWGFTik,4704
|
119
119
|
hiddenlayer/sdk/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
120
120
|
hiddenlayer/sdk/services/aidr_predictive.py,sha256=S2MvN5qPyYhYXbYM3lvDmylhY71p4d07L36m-a1ZMyM,4773
|
121
|
-
hiddenlayer/sdk/services/model_scan.py,sha256=
|
122
|
-
hiddenlayer_sdk-2.0.
|
123
|
-
hiddenlayer_sdk-2.0.
|
124
|
-
hiddenlayer_sdk-2.0.
|
125
|
-
hiddenlayer_sdk-2.0.
|
126
|
-
hiddenlayer_sdk-2.0.
|
121
|
+
hiddenlayer/sdk/services/model_scan.py,sha256=hJzvt8EjpJ4EKPnde_Mql-X8T32itIE2qUITSma6d3o,18988
|
122
|
+
hiddenlayer_sdk-2.0.10.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
123
|
+
hiddenlayer_sdk-2.0.10.dist-info/METADATA,sha256=I-0WsMT3esstIudfXcC6KSd7KDpBOtteLCmb-KSxLyE,18154
|
124
|
+
hiddenlayer_sdk-2.0.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
125
|
+
hiddenlayer_sdk-2.0.10.dist-info/top_level.txt,sha256=8BxcmGvEN1RqsMvTWg9Q0vDmtBGcTmatnme6nzyPj2U,12
|
126
|
+
hiddenlayer_sdk-2.0.10.dist-info/RECORD,,
|
File without changes
|
File without changes
|