datachain 0.16.5__py3-none-any.whl → 0.17.1__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 datachain might be problematic. Click here for more details.
- datachain/catalog/catalog.py +20 -91
- datachain/cli/commands/datasets.py +1 -1
- datachain/cli/commands/show.py +1 -1
- datachain/cli/parser/__init__.py +2 -2
- datachain/cli/parser/job.py +30 -0
- datachain/data_storage/metastore.py +23 -23
- datachain/data_storage/sqlite.py +8 -7
- datachain/data_storage/warehouse.py +12 -12
- datachain/dataset.py +88 -45
- datachain/lib/dataset_info.py +2 -1
- datachain/lib/dc/datachain.py +8 -3
- datachain/lib/dc/datasets.py +28 -7
- datachain/lib/dc/storage.py +10 -2
- datachain/lib/dc/values.py +2 -0
- datachain/lib/pytorch.py +2 -2
- datachain/listing.py +1 -1
- datachain/query/dataset.py +9 -9
- datachain/query/dispatch.py +8 -6
- datachain/query/session.py +2 -2
- datachain/remote/studio.py +16 -5
- datachain/semver.py +58 -0
- datachain/studio.py +34 -3
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/METADATA +2 -2
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/RECORD +28 -27
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/WHEEL +1 -1
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/entry_points.txt +0 -0
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/licenses/LICENSE +0 -0
- {datachain-0.16.5.dist-info → datachain-0.17.1.dist-info}/top_level.txt +0 -0
datachain/remote/studio.py
CHANGED
|
@@ -29,7 +29,7 @@ DatasetExportStatus = Optional[dict[str, Any]]
|
|
|
29
29
|
DatasetExportSignedUrls = Optional[list[str]]
|
|
30
30
|
FileUploadData = Optional[dict[str, Any]]
|
|
31
31
|
JobData = Optional[dict[str, Any]]
|
|
32
|
-
|
|
32
|
+
JobListData = dict[str, Any]
|
|
33
33
|
logger = logging.getLogger("datachain")
|
|
34
34
|
|
|
35
35
|
DATASET_ROWS_CHUNK_SIZE = 8192
|
|
@@ -307,7 +307,7 @@ class StudioClient:
|
|
|
307
307
|
def rm_dataset(
|
|
308
308
|
self,
|
|
309
309
|
name: str,
|
|
310
|
-
version: Optional[
|
|
310
|
+
version: Optional[str] = None,
|
|
311
311
|
force: Optional[bool] = False,
|
|
312
312
|
) -> Response[DatasetInfoData]:
|
|
313
313
|
return self._send_request(
|
|
@@ -336,7 +336,7 @@ class StudioClient:
|
|
|
336
336
|
return response
|
|
337
337
|
|
|
338
338
|
def dataset_rows_chunk(
|
|
339
|
-
self, name: str, version:
|
|
339
|
+
self, name: str, version: str, offset: int
|
|
340
340
|
) -> Response[DatasetRowsData]:
|
|
341
341
|
req_data = {"dataset_name": name, "dataset_version": version}
|
|
342
342
|
return self._send_request_msgpack(
|
|
@@ -353,7 +353,7 @@ class StudioClient:
|
|
|
353
353
|
)
|
|
354
354
|
|
|
355
355
|
def export_dataset_table(
|
|
356
|
-
self, name: str, version:
|
|
356
|
+
self, name: str, version: str
|
|
357
357
|
) -> Response[DatasetExportSignedUrls]:
|
|
358
358
|
return self._send_request(
|
|
359
359
|
"datachain/datasets/export",
|
|
@@ -362,7 +362,7 @@ class StudioClient:
|
|
|
362
362
|
)
|
|
363
363
|
|
|
364
364
|
def dataset_export_status(
|
|
365
|
-
self, name: str, version:
|
|
365
|
+
self, name: str, version: str
|
|
366
366
|
) -> Response[DatasetExportStatus]:
|
|
367
367
|
return self._send_request(
|
|
368
368
|
"datachain/datasets/export-status",
|
|
@@ -402,6 +402,17 @@ class StudioClient:
|
|
|
402
402
|
}
|
|
403
403
|
return self._send_request("datachain/job", data)
|
|
404
404
|
|
|
405
|
+
def get_jobs(
|
|
406
|
+
self,
|
|
407
|
+
status: Optional[str] = None,
|
|
408
|
+
limit: int = 20,
|
|
409
|
+
) -> Response[JobListData]:
|
|
410
|
+
return self._send_request(
|
|
411
|
+
"datachain/jobs",
|
|
412
|
+
{"status": status, "limit": limit} if status else {"limit": limit},
|
|
413
|
+
method="GET",
|
|
414
|
+
)
|
|
415
|
+
|
|
405
416
|
def cancel_job(
|
|
406
417
|
self,
|
|
407
418
|
job_id: str,
|
datachain/semver.py
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
def parse(version: str) -> tuple[int, int, int]:
|
|
2
|
+
"""Parsing semver into 3 integers: major, minor, patch"""
|
|
3
|
+
validate(version)
|
|
4
|
+
parts = version.split(".")
|
|
5
|
+
return (int(parts[0]), int(parts[1]), int(parts[2]))
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def validate(version: str) -> None:
|
|
9
|
+
"""
|
|
10
|
+
Raises exception if version doesn't have valid semver format which is:
|
|
11
|
+
<major>.<minor>.<patch> or one of version parts is not positive integer
|
|
12
|
+
"""
|
|
13
|
+
error_message = (
|
|
14
|
+
"Invalid version. It should be in format: <major>.<minor>.<patch> where"
|
|
15
|
+
" each version part is positive integer"
|
|
16
|
+
)
|
|
17
|
+
parts = version.split(".")
|
|
18
|
+
if len(parts) != 3:
|
|
19
|
+
raise ValueError(error_message)
|
|
20
|
+
for part in parts:
|
|
21
|
+
try:
|
|
22
|
+
val = int(part)
|
|
23
|
+
assert val >= 0
|
|
24
|
+
except (ValueError, AssertionError):
|
|
25
|
+
raise ValueError(error_message) from None
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def create(major: int = 0, minor: int = 0, patch: int = 0) -> str:
|
|
29
|
+
"""Creates new semver from 3 integers: major, minor and patch"""
|
|
30
|
+
if major < 0 or minor < 0 or patch < 0:
|
|
31
|
+
raise ValueError("Major, minor and patch must be greater or equal to zero")
|
|
32
|
+
|
|
33
|
+
return ".".join([str(major), str(minor), str(patch)])
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def value(version: str) -> int:
|
|
37
|
+
"""
|
|
38
|
+
Calculate integer value of a version. This is useful when comparing two versions
|
|
39
|
+
"""
|
|
40
|
+
major, minor, patch = parse(version)
|
|
41
|
+
return major * 100 + minor * 10 + patch
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def compare(v1: str, v2: str) -> int:
|
|
45
|
+
"""
|
|
46
|
+
Compares 2 versions and returns:
|
|
47
|
+
-1 if v1 < v2
|
|
48
|
+
0 if v1 == v2
|
|
49
|
+
1 if v1 > v2
|
|
50
|
+
"""
|
|
51
|
+
v1_val = value(v1)
|
|
52
|
+
v2_val = value(v2)
|
|
53
|
+
|
|
54
|
+
if v1_val < v2_val:
|
|
55
|
+
return -1
|
|
56
|
+
if v1_val > v2_val:
|
|
57
|
+
return 1
|
|
58
|
+
return 0
|
datachain/studio.py
CHANGED
|
@@ -3,6 +3,8 @@ import os
|
|
|
3
3
|
import sys
|
|
4
4
|
from typing import TYPE_CHECKING, Optional
|
|
5
5
|
|
|
6
|
+
import tabulate
|
|
7
|
+
|
|
6
8
|
from datachain.config import Config, ConfigLevel
|
|
7
9
|
from datachain.dataset import QUERY_DATASET_PREFIX
|
|
8
10
|
from datachain.error import DataChainError
|
|
@@ -44,6 +46,10 @@ def process_jobs_args(args: "Namespace"):
|
|
|
44
46
|
return cancel_job(args.id, args.team)
|
|
45
47
|
if args.cmd == "logs":
|
|
46
48
|
return show_job_logs(args.id, args.team)
|
|
49
|
+
|
|
50
|
+
if args.cmd == "ls":
|
|
51
|
+
return list_jobs(args.status, args.team, args.limit)
|
|
52
|
+
|
|
47
53
|
raise DataChainError(f"Unknown command '{args.cmd}'.")
|
|
48
54
|
|
|
49
55
|
|
|
@@ -201,7 +207,7 @@ def edit_studio_dataset(
|
|
|
201
207
|
def remove_studio_dataset(
|
|
202
208
|
team_name: Optional[str],
|
|
203
209
|
name: str,
|
|
204
|
-
version: Optional[
|
|
210
|
+
version: Optional[str] = None,
|
|
205
211
|
force: Optional[bool] = False,
|
|
206
212
|
):
|
|
207
213
|
client = StudioClient(team=team_name)
|
|
@@ -240,13 +246,13 @@ def show_logs_from_client(client, job_id):
|
|
|
240
246
|
raise DataChainError(response.message)
|
|
241
247
|
|
|
242
248
|
response_data = response.data
|
|
243
|
-
if response_data:
|
|
249
|
+
if response_data and response_data.get("dataset_versions"):
|
|
244
250
|
dataset_versions = response_data.get("dataset_versions", [])
|
|
245
251
|
print("\n\n>>>> Dataset versions created during the job:")
|
|
246
252
|
for version in dataset_versions:
|
|
247
253
|
print(f" - {version.get('dataset_name')}@v{version.get('version')}")
|
|
248
254
|
else:
|
|
249
|
-
print("
|
|
255
|
+
print("\n\nNo dataset versions created during the job.")
|
|
250
256
|
|
|
251
257
|
|
|
252
258
|
def create_job(
|
|
@@ -337,6 +343,31 @@ def cancel_job(job_id: str, team_name: Optional[str]):
|
|
|
337
343
|
print(f"Job {job_id} canceled")
|
|
338
344
|
|
|
339
345
|
|
|
346
|
+
def list_jobs(status: Optional[str], team_name: Optional[str], limit: int):
|
|
347
|
+
client = StudioClient(team=team_name)
|
|
348
|
+
response = client.get_jobs(status, limit)
|
|
349
|
+
if not response.ok:
|
|
350
|
+
raise DataChainError(response.message)
|
|
351
|
+
|
|
352
|
+
jobs = response.data.get("jobs", [])
|
|
353
|
+
if not jobs:
|
|
354
|
+
print("No jobs found")
|
|
355
|
+
return
|
|
356
|
+
|
|
357
|
+
rows = [
|
|
358
|
+
{
|
|
359
|
+
"ID": job.get("id"),
|
|
360
|
+
"Name": job.get("name"),
|
|
361
|
+
"Status": job.get("status"),
|
|
362
|
+
"Created at": job.get("created_at"),
|
|
363
|
+
"Created by": job.get("created_by"),
|
|
364
|
+
}
|
|
365
|
+
for job in jobs
|
|
366
|
+
]
|
|
367
|
+
|
|
368
|
+
print(tabulate.tabulate(rows, headers="keys", tablefmt="grid"))
|
|
369
|
+
|
|
370
|
+
|
|
340
371
|
def show_job_logs(job_id: str, team_name: Optional[str]):
|
|
341
372
|
token = Config().read().get("studio", {}).get("token")
|
|
342
373
|
if not token:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: datachain
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.1
|
|
4
4
|
Summary: Wrangle unstructured AI data at scale
|
|
5
5
|
Author-email: Dmitry Petrov <support@dvc.org>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -44,7 +44,7 @@ Requires-Dist: datamodel-code-generator>=0.25
|
|
|
44
44
|
Requires-Dist: Pillow<12,>=10.0.0
|
|
45
45
|
Requires-Dist: msgpack<2,>=1.0.4
|
|
46
46
|
Requires-Dist: psutil
|
|
47
|
-
Requires-Dist: huggingface_hub
|
|
47
|
+
Requires-Dist: huggingface_hub<0.31
|
|
48
48
|
Requires-Dist: iterative-telemetry>=0.0.10
|
|
49
49
|
Requires-Dist: platformdirs
|
|
50
50
|
Requires-Dist: dvc-studio-client<1,>=0.21
|
|
@@ -3,35 +3,36 @@ datachain/__main__.py,sha256=hG3Y4ARGEqe1AWwNMd259rBlqtphx1Wk39YbueQ0yV8,91
|
|
|
3
3
|
datachain/asyn.py,sha256=RH_jFwJcTXxhEFomaI9yL6S3Onau6NZ6FSKfKFGtrJE,9689
|
|
4
4
|
datachain/cache.py,sha256=yQblPhOh_Mq74Ma7xT1CL1idLJ0HgrQxpGVYvRy_9Eg,3623
|
|
5
5
|
datachain/config.py,sha256=g8qbNV0vW2VEKpX-dGZ9pAn0DAz6G2ZFcr7SAV3PoSM,4272
|
|
6
|
-
datachain/dataset.py,sha256=
|
|
6
|
+
datachain/dataset.py,sha256=qxLIegmPF7e4uc2DrouyFtlLxWr7lChPxDt5H6dm9MM,20766
|
|
7
7
|
datachain/error.py,sha256=bxAAL32lSeMgzsQDEHbGTGORj-mPzzpCRvWDPueJNN4,1092
|
|
8
8
|
datachain/job.py,sha256=x5PB6d5sqx00hePNNkirESlOVAvnmkEM5ygUgQmAhsk,1262
|
|
9
|
-
datachain/listing.py,sha256=
|
|
9
|
+
datachain/listing.py,sha256=JtExYIfKMFhEIIcSSWBmaxWpoS3ben7kb692cHHm4Lo,7079
|
|
10
10
|
datachain/node.py,sha256=KWDT0ClYXB7FYI-QOvzAa-UDkLJErUI2eWm5FBteYuU,5577
|
|
11
11
|
datachain/nodes_fetcher.py,sha256=_wgaKyqEjkqdwJ_Hj6D8vUYz7hnU7g6xhm0H6ZnYxmE,1095
|
|
12
12
|
datachain/nodes_thread_pool.py,sha256=mdo0s-VybuSZkRUARcUO4Tjh8KFfZr9foHqmupx2SmM,3989
|
|
13
13
|
datachain/progress.py,sha256=lRzxoYP4Qv2XBwD78sOkmYRzHFpZ2ExVNJF8wAeICtY,770
|
|
14
14
|
datachain/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
15
|
datachain/script_meta.py,sha256=V-LaFOZG84pD0Zc0NvejYdzwDgzITv6yHvAHggDCnuY,4978
|
|
16
|
-
datachain/
|
|
16
|
+
datachain/semver.py,sha256=t_3Y5OGLEthrstBwuwrf5pXVquEuRFu3ZoGe3ajfJB8,1715
|
|
17
|
+
datachain/studio.py,sha256=5MSDk-pM2Na0TlK0eCStmZ47hNBvlY2WPKzCQFmBPpM,10948
|
|
17
18
|
datachain/telemetry.py,sha256=0A4IOPPp9VlP5pyW9eBfaTK3YhHGzHl7dQudQjUAx9A,994
|
|
18
19
|
datachain/utils.py,sha256=DNqOi-Ydb7InyWvD9m7_yailxz6-YGpZzh00biQaHNo,15305
|
|
19
20
|
datachain/catalog/__init__.py,sha256=cMZzSz3VoUi-6qXSVaHYN-agxQuAcz2XSqnEPZ55crE,353
|
|
20
|
-
datachain/catalog/catalog.py,sha256=
|
|
21
|
+
datachain/catalog/catalog.py,sha256=yQ-St_vWU9ddUoma--wc8bWgSODo1kwHyZvRwvlT4no,58469
|
|
21
22
|
datachain/catalog/datasource.py,sha256=IkGMh0Ttg6Q-9DWfU_H05WUnZepbGa28HYleECi6K7I,1353
|
|
22
23
|
datachain/catalog/loader.py,sha256=UXjYD6BNRoupPvkiz3-b04jepXhtLHCA4gzKFnXxOtQ,5987
|
|
23
24
|
datachain/cli/__init__.py,sha256=eKCyqT05OMESHXCC93iQdqzusBdk1ptqZbBeaEghkgo,8344
|
|
24
25
|
datachain/cli/utils.py,sha256=wrLnAh7Wx8O_ojZE8AE4Lxn5WoxHbOj7as8NWlLAA74,3036
|
|
25
26
|
datachain/cli/commands/__init__.py,sha256=zp3bYIioO60x_X04A4-IpZqSYVnpwOa1AdERQaRlIhI,493
|
|
26
|
-
datachain/cli/commands/datasets.py,sha256=
|
|
27
|
+
datachain/cli/commands/datasets.py,sha256=77QBkn_Enok0vzkHE0rqCbM9YQuXK1oQNdfCCSKoFKE,5793
|
|
27
28
|
datachain/cli/commands/du.py,sha256=9edEzDEs98K2VYk8Wf-ZMpUzALcgm9uD6YtoqbvtUGU,391
|
|
28
29
|
datachain/cli/commands/index.py,sha256=eglNaIe1yyIadUHHumjtNbgIjht6kme7SS7xE3YHR88,198
|
|
29
30
|
datachain/cli/commands/ls.py,sha256=dSD2_MHng4t9HRFJZWMOCjPL4XU3qaBV3piNl8UXP08,5275
|
|
30
31
|
datachain/cli/commands/misc.py,sha256=c0DmkOLwcDI2YhA8ArOuLJk6aGzSMZCiKL_E2JGibVE,600
|
|
31
32
|
datachain/cli/commands/query.py,sha256=Xzfgh14nPVH-sclqX1tpZqgfdTugw5s_44v0D33z6FA,1505
|
|
32
|
-
datachain/cli/commands/show.py,sha256=
|
|
33
|
-
datachain/cli/parser/__init__.py,sha256=
|
|
34
|
-
datachain/cli/parser/job.py,sha256=
|
|
33
|
+
datachain/cli/commands/show.py,sha256=Cf8wBs12h-xtdOzjU5GTDy2C8rF5HJSF0hDJYER1zH8,1606
|
|
34
|
+
datachain/cli/parser/__init__.py,sha256=sjCIcosAtZqa0m50GMQHqmCkZSYxKyZNwQ29XwRQlP0,15913
|
|
35
|
+
datachain/cli/parser/job.py,sha256=dpRY6KQgooCXhQGQiebPuNuGouKk5jclkpafpQ2TDvQ,4373
|
|
35
36
|
datachain/cli/parser/studio.py,sha256=Y-1OlQGecLVi9QofvWUfSlPd2ISyaESf7QFGZqGsrdw,3609
|
|
36
37
|
datachain/cli/parser/utils.py,sha256=rETdD-9Hq9A4OolgfT7jQw4aoawtbfmkdtH6E7nkhpI,2888
|
|
37
38
|
datachain/client/__init__.py,sha256=1kDpCPoibMXi1gExR4lTLc5pi-k6M5TANiwtXkPoLhU,49
|
|
@@ -45,11 +46,11 @@ datachain/client/s3.py,sha256=YCtDhKVO_jGsMPeyqe3xk5QsF5lqMabqkt0tPFWUHOM,7286
|
|
|
45
46
|
datachain/data_storage/__init__.py,sha256=9Wit-oe5P46V7CJQTD0BJ5MhOa2Y9h3ddJ4VWTe-Lec,273
|
|
46
47
|
datachain/data_storage/db_engine.py,sha256=n8ojCbvVMPY2e3SG8fUaaD0b9GkVfpl_Naa_6EiHfWg,3788
|
|
47
48
|
datachain/data_storage/job.py,sha256=9r0OGwh22bHNIvLHqg8_-eJSP1YYB-BN5HOla5TdCxw,402
|
|
48
|
-
datachain/data_storage/metastore.py,sha256=
|
|
49
|
+
datachain/data_storage/metastore.py,sha256=vo2ab-U_-BKfeFYTmvpbCoMyMZEVxrVqM9DjjTg4UPk,38309
|
|
49
50
|
datachain/data_storage/schema.py,sha256=asZYz1cg_WKfe2Q-k5W51E2z2CzHU5B4QEDZDMFr8yo,9346
|
|
50
51
|
datachain/data_storage/serializer.py,sha256=6G2YtOFqqDzJf1KbvZraKGXl2XHZyVml2krunWUum5o,927
|
|
51
|
-
datachain/data_storage/sqlite.py,sha256=
|
|
52
|
-
datachain/data_storage/warehouse.py,sha256=
|
|
52
|
+
datachain/data_storage/sqlite.py,sha256=bwZAB_NUMT2WMv5tPQnnLFA0P-PiQtxzSaQ1q6xDxOU,24590
|
|
53
|
+
datachain/data_storage/warehouse.py,sha256=3MFurg3Gm24xalWI03e_uHkznPxfhzTXjX7AhrKMiXQ,31516
|
|
53
54
|
datachain/diff/__init__.py,sha256=YkGdiDbZIMhAZ2SJ4eSe00HU67VP1P6SL2L_t0ODYMs,9425
|
|
54
55
|
datachain/fs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
56
|
datachain/fs/reference.py,sha256=A8McpXF0CqbXPqanXuvpKu50YLB3a2ZXA3YAPxtBXSM,914
|
|
@@ -69,7 +70,7 @@ datachain/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
69
70
|
datachain/lib/arrow.py,sha256=mFO_6wRqzpEzBhXf7Xn1aeLUvaiHcC6XQ-8as9sbcgY,10253
|
|
70
71
|
datachain/lib/clip.py,sha256=lm5CzVi4Cj1jVLEKvERKArb-egb9j1Ls-fwTItT6vlI,6150
|
|
71
72
|
datachain/lib/data_model.py,sha256=ZwBXELtqROEdLL4DmxTipnwUZmhQvMz_UVDzyf7nQ9Y,2899
|
|
72
|
-
datachain/lib/dataset_info.py,sha256=
|
|
73
|
+
datachain/lib/dataset_info.py,sha256=d-jz6zeDU5DEgYtyeSF5nK0MU-40FV5km_iOCh4pXzo,3179
|
|
73
74
|
datachain/lib/file.py,sha256=HLQXS_WULm7Y-fkHMy0WpibVAcrkLPRS6CrZy6rwFe0,30450
|
|
74
75
|
datachain/lib/hf.py,sha256=gjxuStZBlKtNk3-4yYSlWZDv9zBGblOdvEy_Lwap5hA,5882
|
|
75
76
|
datachain/lib/image.py,sha256=butvUY_33PVEYPKX2nVCPeJjJVcBaptZwsE9REQsTS8,3247
|
|
@@ -77,7 +78,7 @@ datachain/lib/listing.py,sha256=lFG1Ms6jwm_uqlOcsBUpkmyeSO9TZdtNd820PEpAHP4,7077
|
|
|
77
78
|
datachain/lib/listing_info.py,sha256=9ua40Hw0aiQByUw3oAEeNzMavJYfW0Uhe8YdCTK-m_g,1110
|
|
78
79
|
datachain/lib/meta_formats.py,sha256=Epydbdch1g4CojK8wd_ePzmwmljC4fVWlJtZ16jsX-A,6349
|
|
79
80
|
datachain/lib/model_store.py,sha256=DNIv8Y6Jtk1_idNLzIpsThOsdW2BMAudyUCbPUcgcxk,2515
|
|
80
|
-
datachain/lib/pytorch.py,sha256=
|
|
81
|
+
datachain/lib/pytorch.py,sha256=elrmJ4YUDC2LZ9yXM1KwImVBOYIBJf6k0ZR7eSe6Aao,7712
|
|
81
82
|
datachain/lib/settings.py,sha256=ZELRCTLbi5vzRPiDX6cQ9LLg9TefJ_A05gIGni0lll8,2535
|
|
82
83
|
datachain/lib/signal_schema.py,sha256=uIBHYXtu_XpLbOUVC-kq-GduEOCfz9hQORi9ZG3JFqo,35820
|
|
83
84
|
datachain/lib/tar.py,sha256=3WIzao6yD5fbLqXLTt9GhPGNonbFIs_fDRu-9vgLgsA,1038
|
|
@@ -97,17 +98,17 @@ datachain/lib/convert/values_to_tuples.py,sha256=j5yZMrVUH6W7b-7yUvdCTGI7JCUAYUO
|
|
|
97
98
|
datachain/lib/dc/__init__.py,sha256=HD0NYrdy44u6kkpvgGjJcvGz-UGTHui2azghcT8ZUg0,838
|
|
98
99
|
datachain/lib/dc/csv.py,sha256=q6a9BpapGwP6nwy6c5cklxQumep2fUp9l2LAjtTJr6s,4411
|
|
99
100
|
datachain/lib/dc/database.py,sha256=g5M6NjYR1T0vKte-abV-3Ejnm-HqxTIMir5cRi_SziE,6051
|
|
100
|
-
datachain/lib/dc/datachain.py,sha256=
|
|
101
|
-
datachain/lib/dc/datasets.py,sha256=
|
|
101
|
+
datachain/lib/dc/datachain.py,sha256=bshGTACAiTQP8dNvLKqhivLdK_rTa-Fx8OaOy3l3jSY,77550
|
|
102
|
+
datachain/lib/dc/datasets.py,sha256=iDZj_wt0Wi3gsI6TqmiwU1xUVFYNXQ7xbw4MPxQfu8o,8044
|
|
102
103
|
datachain/lib/dc/hf.py,sha256=PJl2wiLjdRsMz0SYbLT-6H8b-D5i2WjeH7li8HHOk_0,2145
|
|
103
104
|
datachain/lib/dc/json.py,sha256=ZUThPDAaP2gBFIL5vsQTwKBcuN_dhvC_O44wdDv0jEc,2683
|
|
104
105
|
datachain/lib/dc/listings.py,sha256=2na9v63xO1vPUNaoBSzA-TSN49V7zQAb-4iS1wOPLFE,1029
|
|
105
106
|
datachain/lib/dc/pandas.py,sha256=ObueUXDUFKJGu380GmazdG02ARpKAHPhSaymfmOH13E,1489
|
|
106
107
|
datachain/lib/dc/parquet.py,sha256=zYcSgrWwyEDW9UxGUSVdIVsCu15IGEf0xL8KfWQqK94,1782
|
|
107
108
|
datachain/lib/dc/records.py,sha256=J1I69J2gFIBjRTGr2LG-5qn_rTVzRLcr2y3tVDrmHdg,3068
|
|
108
|
-
datachain/lib/dc/storage.py,sha256=
|
|
109
|
+
datachain/lib/dc/storage.py,sha256=Z0rqBNoss8RVHo8I3Bpc5hJBLTJfmJHRbV0SA_tR5LI,5635
|
|
109
110
|
datachain/lib/dc/utils.py,sha256=VawOAlJSvAtZbsMg33s5tJe21TRx1Km3QggI1nN6tnw,3984
|
|
110
|
-
datachain/lib/dc/values.py,sha256=
|
|
111
|
+
datachain/lib/dc/values.py,sha256=7l1n352xWrEdql2NhBcZ3hj8xyPglWiY4qHjFPjn6iw,1428
|
|
111
112
|
datachain/model/__init__.py,sha256=R9faX5OHV1xh2EW-g2MPedwbtEqt3LodJRyluB-QylI,189
|
|
112
113
|
datachain/model/bbox.py,sha256=cQNHuQuVsh6bW3n3Hj40F2Cc20cExQ9Lg_q7R2jxUMI,9324
|
|
113
114
|
datachain/model/pose.py,sha256=rjquA6M-I-Y30Xm6YSkGv1OY52hJZmR2AuxbIpE5uD0,3865
|
|
@@ -119,17 +120,17 @@ datachain/model/ultralytics/pose.py,sha256=gXAWfAk4OWZl93hKcQPKZvqJa3nIrECB4RM8K
|
|
|
119
120
|
datachain/model/ultralytics/segment.py,sha256=koq1HASo29isf0in6oSlzmU4IzsmOXe87F1ajQQVfh4,2911
|
|
120
121
|
datachain/query/__init__.py,sha256=7DhEIjAA8uZJfejruAVMZVcGFmvUpffuZJwgRqNwe-c,263
|
|
121
122
|
datachain/query/batch.py,sha256=-goxLpE0EUvaDHu66rstj53UnfHpYfBUGux8GSpJ93k,4306
|
|
122
|
-
datachain/query/dataset.py,sha256=
|
|
123
|
-
datachain/query/dispatch.py,sha256=
|
|
123
|
+
datachain/query/dataset.py,sha256=v9xVYyft06KNvsPrA-j59krZXwRAunKvyYyJsINZpxM,59114
|
|
124
|
+
datachain/query/dispatch.py,sha256=15M3zlTUFKM6D2ijITX4o5QxCkRe2klkODsIDi3aQOg,15544
|
|
124
125
|
datachain/query/metrics.py,sha256=DOK5HdNVaRugYPjl8qnBONvTkwjMloLqAr7Mi3TjCO0,858
|
|
125
126
|
datachain/query/params.py,sha256=O_j89mjYRLOwWNhYZl-z7mi-rkdP7WyFmaDufsdTryE,863
|
|
126
127
|
datachain/query/queue.py,sha256=v0UeK4ilmdiRoJ5OdjB5qpnHTYDxRP4vhVp5Iw_toaI,3512
|
|
127
128
|
datachain/query/schema.py,sha256=b_KnVy6B26Ol4nYG0LqNNpeQ1QYPk95YRGUjXfdaQWs,6606
|
|
128
|
-
datachain/query/session.py,sha256=
|
|
129
|
+
datachain/query/session.py,sha256=3nyOvPmLiA86IdHc3BL6Dt_himtHVvaDz_I1h3hZ_gI,6512
|
|
129
130
|
datachain/query/udf.py,sha256=e753bDJzTNjGFQn1WGTvOAWSwjDbrFI1-_DDWkWN2ls,1343
|
|
130
131
|
datachain/query/utils.py,sha256=HaSDNH_XGvp_NIcXjcB7j4vJRPi4_tbztDWclYelHY4,1208
|
|
131
132
|
datachain/remote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
132
|
-
datachain/remote/studio.py,sha256=
|
|
133
|
+
datachain/remote/studio.py,sha256=4oypHea2NYB7br_BJTYPAmh3FH8KV835mq01Pwexrrg,13524
|
|
133
134
|
datachain/sql/__init__.py,sha256=6SQRdbljO3d2hx3EAVXEZrHQKv5jth0Jh98PogT59No,262
|
|
134
135
|
datachain/sql/selectable.py,sha256=cTc60qVoAwqqss0Vop8Lt5Z-ROnM1XrQmL_GLjRxhXs,1765
|
|
135
136
|
datachain/sql/types.py,sha256=ASSPkmM5EzdRindqj2O7WHLXq8VHAgFYedG8lYfGvVI,14045
|
|
@@ -151,9 +152,9 @@ datachain/sql/sqlite/vector.py,sha256=ncW4eu2FlJhrP_CIpsvtkUabZlQdl2D5Lgwy_cbfqR
|
|
|
151
152
|
datachain/toolkit/__init__.py,sha256=eQ58Q5Yf_Fgv1ZG0IO5dpB4jmP90rk8YxUWmPc1M2Bo,68
|
|
152
153
|
datachain/toolkit/split.py,sha256=ktGWzY4kyzjWyR86dhvzw-Zhl0lVk_LOX3NciTac6qo,2914
|
|
153
154
|
datachain/torch/__init__.py,sha256=gIS74PoEPy4TB3X6vx9nLO0Y3sLJzsA8ckn8pRWihJM,579
|
|
154
|
-
datachain-0.
|
|
155
|
-
datachain-0.
|
|
156
|
-
datachain-0.
|
|
157
|
-
datachain-0.
|
|
158
|
-
datachain-0.
|
|
159
|
-
datachain-0.
|
|
155
|
+
datachain-0.17.1.dist-info/licenses/LICENSE,sha256=8DnqK5yoPI_E50bEg_zsHKZHY2HqPy4rYN338BHQaRA,11344
|
|
156
|
+
datachain-0.17.1.dist-info/METADATA,sha256=AsvQrTzywEMuvPD8NPPwUc7wsCL2W7SGbpi5i1YMMYY,11336
|
|
157
|
+
datachain-0.17.1.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
|
|
158
|
+
datachain-0.17.1.dist-info/entry_points.txt,sha256=0GMJS6B_KWq0m3VT98vQI2YZodAMkn4uReZ_okga9R4,49
|
|
159
|
+
datachain-0.17.1.dist-info/top_level.txt,sha256=lZPpdU_2jJABLNIg2kvEOBi8PtsYikbN1OdMLHk8bTg,10
|
|
160
|
+
datachain-0.17.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|