datachain 0.8.7__py3-none-any.whl → 0.8.9__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/cache.py +3 -3
- datachain/catalog/catalog.py +1 -1
- datachain/cli/__init__.py +12 -4
- datachain/cli/commands/datasets.py +2 -3
- datachain/cli/parser/__init__.py +51 -69
- datachain/cli/parser/job.py +20 -25
- datachain/cli/parser/studio.py +22 -46
- datachain/cli/parser/utils.py +1 -1
- datachain/client/azure.py +1 -1
- datachain/client/fsspec.py +1 -1
- datachain/client/gcs.py +1 -1
- datachain/client/local.py +1 -1
- datachain/client/s3.py +1 -1
- datachain/data_storage/sqlite.py +1 -1
- datachain/data_storage/warehouse.py +1 -1
- datachain/lib/arrow.py +2 -2
- datachain/lib/convert/unflatten.py +1 -2
- datachain/lib/dc.py +38 -11
- datachain/lib/file.py +27 -4
- datachain/lib/hf.py +1 -1
- datachain/lib/listing.py +4 -4
- datachain/lib/pytorch.py +3 -1
- datachain/lib/udf.py +56 -20
- datachain/listing.py +1 -1
- datachain/model/bbox.py +9 -9
- datachain/model/pose.py +9 -9
- datachain/model/segment.py +6 -6
- datachain/progress.py +0 -133
- datachain/query/dataset.py +19 -12
- datachain/studio.py +15 -9
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/METADATA +4 -3
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/RECORD +36 -36
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/LICENSE +0 -0
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/WHEEL +0 -0
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/entry_points.txt +0 -0
- {datachain-0.8.7.dist-info → datachain-0.8.9.dist-info}/top_level.txt +0 -0
datachain/model/pose.py
CHANGED
|
@@ -22,9 +22,9 @@ class Pose(DataModel):
|
|
|
22
22
|
def from_list(points: list[list[float]]) -> "Pose":
|
|
23
23
|
assert len(points) == 2, "Pose must be a list of 2 lists: x and y coordinates."
|
|
24
24
|
points_x, points_y = points
|
|
25
|
-
assert (
|
|
26
|
-
|
|
27
|
-
)
|
|
25
|
+
assert len(points_x) == len(points_y) == 17, (
|
|
26
|
+
"Pose x and y coordinates must have the same length of 17."
|
|
27
|
+
)
|
|
28
28
|
assert all(
|
|
29
29
|
isinstance(value, (int, float)) for value in [*points_x, *points_y]
|
|
30
30
|
), "Pose coordinates must be floats or integers."
|
|
@@ -61,13 +61,13 @@ class Pose3D(DataModel):
|
|
|
61
61
|
|
|
62
62
|
@staticmethod
|
|
63
63
|
def from_list(points: list[list[float]]) -> "Pose3D":
|
|
64
|
-
assert (
|
|
65
|
-
|
|
66
|
-
)
|
|
64
|
+
assert len(points) == 3, (
|
|
65
|
+
"Pose3D must be a list of 3 lists: x, y coordinates and visible."
|
|
66
|
+
)
|
|
67
67
|
points_x, points_y, points_v = points
|
|
68
|
-
assert (
|
|
69
|
-
|
|
70
|
-
)
|
|
68
|
+
assert len(points_x) == len(points_y) == len(points_v) == 17, (
|
|
69
|
+
"Pose3D x, y coordinates and visible must have the same length of 17."
|
|
70
|
+
)
|
|
71
71
|
assert all(
|
|
72
72
|
isinstance(value, (int, float))
|
|
73
73
|
for value in [*points_x, *points_y, *points_v]
|
datachain/model/segment.py
CHANGED
|
@@ -22,13 +22,13 @@ class Segment(DataModel):
|
|
|
22
22
|
|
|
23
23
|
@staticmethod
|
|
24
24
|
def from_list(points: list[list[float]], title: str = "") -> "Segment":
|
|
25
|
-
assert (
|
|
26
|
-
|
|
27
|
-
)
|
|
25
|
+
assert len(points) == 2, (
|
|
26
|
+
"Segment must be a list of 2 lists: x and y coordinates."
|
|
27
|
+
)
|
|
28
28
|
points_x, points_y = points
|
|
29
|
-
assert len(points_x) == len(
|
|
30
|
-
|
|
31
|
-
)
|
|
29
|
+
assert len(points_x) == len(points_y), (
|
|
30
|
+
"Segment x and y coordinates must have the same length."
|
|
31
|
+
)
|
|
32
32
|
assert all(
|
|
33
33
|
isinstance(value, (int, float)) for value in [*points_x, *points_y]
|
|
34
34
|
), "Segment coordinates must be floats or integers."
|
datachain/progress.py
CHANGED
|
@@ -1,136 +1,5 @@
|
|
|
1
|
-
"""Manages progress bars."""
|
|
2
|
-
|
|
3
|
-
import logging
|
|
4
|
-
import sys
|
|
5
|
-
from threading import RLock
|
|
6
|
-
from typing import Any, ClassVar
|
|
7
|
-
|
|
8
1
|
from fsspec import Callback
|
|
9
2
|
from fsspec.callbacks import TqdmCallback
|
|
10
|
-
from tqdm import tqdm
|
|
11
|
-
|
|
12
|
-
from datachain.utils import env2bool
|
|
13
|
-
|
|
14
|
-
logger = logging.getLogger(__name__)
|
|
15
|
-
tqdm.set_lock(RLock())
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
class Tqdm(tqdm):
|
|
19
|
-
"""
|
|
20
|
-
maximum-compatibility tqdm-based progressbars
|
|
21
|
-
"""
|
|
22
|
-
|
|
23
|
-
BAR_FMT_DEFAULT = (
|
|
24
|
-
"{percentage:3.0f}% {desc}|{bar}|"
|
|
25
|
-
"{postfix[info]}{n_fmt}/{total_fmt}"
|
|
26
|
-
" [{elapsed}<{remaining}, {rate_fmt:>11}]"
|
|
27
|
-
)
|
|
28
|
-
# nested bars should have fixed bar widths to align nicely
|
|
29
|
-
BAR_FMT_DEFAULT_NESTED = (
|
|
30
|
-
"{percentage:3.0f}%|{bar:10}|{desc:{ncols_desc}.{ncols_desc}}"
|
|
31
|
-
"{postfix[info]}{n_fmt}/{total_fmt}"
|
|
32
|
-
" [{elapsed}<{remaining}, {rate_fmt:>11}]"
|
|
33
|
-
)
|
|
34
|
-
BAR_FMT_NOTOTAL = "{desc}{bar:b}|{postfix[info]}{n_fmt} [{elapsed}, {rate_fmt:>11}]"
|
|
35
|
-
BYTES_DEFAULTS: ClassVar[dict[str, Any]] = {
|
|
36
|
-
"unit": "B",
|
|
37
|
-
"unit_scale": True,
|
|
38
|
-
"unit_divisor": 1024,
|
|
39
|
-
"miniters": 1,
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
def __init__(
|
|
43
|
-
self,
|
|
44
|
-
iterable=None,
|
|
45
|
-
disable=None,
|
|
46
|
-
level=logging.ERROR,
|
|
47
|
-
desc=None,
|
|
48
|
-
leave=False,
|
|
49
|
-
bar_format=None,
|
|
50
|
-
bytes=False,
|
|
51
|
-
file=None,
|
|
52
|
-
total=None,
|
|
53
|
-
postfix=None,
|
|
54
|
-
**kwargs,
|
|
55
|
-
):
|
|
56
|
-
"""
|
|
57
|
-
bytes : shortcut for
|
|
58
|
-
`unit='B', unit_scale=True, unit_divisor=1024, miniters=1`
|
|
59
|
-
desc : persists after `close()`
|
|
60
|
-
level : effective logging level for determining `disable`;
|
|
61
|
-
used only if `disable` is unspecified
|
|
62
|
-
disable : If (default: None) or False,
|
|
63
|
-
will be determined by logging level.
|
|
64
|
-
May be overridden to `True` due to non-TTY status.
|
|
65
|
-
Skip override by specifying env var `DATACHAIN_IGNORE_ISATTY`.
|
|
66
|
-
kwargs : anything accepted by `tqdm.tqdm()`
|
|
67
|
-
"""
|
|
68
|
-
kwargs = kwargs.copy()
|
|
69
|
-
if bytes:
|
|
70
|
-
kwargs = self.BYTES_DEFAULTS | kwargs
|
|
71
|
-
else:
|
|
72
|
-
kwargs.setdefault("unit_scale", total > 999 if total else True)
|
|
73
|
-
if file is None:
|
|
74
|
-
file = sys.stderr
|
|
75
|
-
# auto-disable based on `logger.level`
|
|
76
|
-
if not disable:
|
|
77
|
-
disable = logger.getEffectiveLevel() > level
|
|
78
|
-
# auto-disable based on TTY
|
|
79
|
-
if (
|
|
80
|
-
not disable
|
|
81
|
-
and not env2bool("DATACHAIN_IGNORE_ISATTY")
|
|
82
|
-
and hasattr(file, "isatty")
|
|
83
|
-
):
|
|
84
|
-
disable = not file.isatty()
|
|
85
|
-
super().__init__(
|
|
86
|
-
iterable=iterable,
|
|
87
|
-
disable=disable,
|
|
88
|
-
leave=leave,
|
|
89
|
-
desc=desc,
|
|
90
|
-
bar_format="!",
|
|
91
|
-
lock_args=(False,),
|
|
92
|
-
total=total,
|
|
93
|
-
**kwargs,
|
|
94
|
-
)
|
|
95
|
-
self.postfix = postfix or {"info": ""}
|
|
96
|
-
if bar_format is None:
|
|
97
|
-
if self.__len__():
|
|
98
|
-
self.bar_format = (
|
|
99
|
-
self.BAR_FMT_DEFAULT_NESTED if self.pos else self.BAR_FMT_DEFAULT
|
|
100
|
-
)
|
|
101
|
-
else:
|
|
102
|
-
self.bar_format = self.BAR_FMT_NOTOTAL
|
|
103
|
-
else:
|
|
104
|
-
self.bar_format = bar_format
|
|
105
|
-
self.refresh()
|
|
106
|
-
|
|
107
|
-
def close(self):
|
|
108
|
-
self.postfix["info"] = ""
|
|
109
|
-
# remove ETA (either unknown or zero); remove completed bar
|
|
110
|
-
self.bar_format = self.bar_format.replace("<{remaining}", "").replace(
|
|
111
|
-
"|{bar:10}|", " "
|
|
112
|
-
)
|
|
113
|
-
super().close()
|
|
114
|
-
|
|
115
|
-
@property
|
|
116
|
-
def format_dict(self):
|
|
117
|
-
"""inject `ncols_desc` to fill the display width (`ncols`)"""
|
|
118
|
-
d = super().format_dict
|
|
119
|
-
ncols = d["ncols"] or 80
|
|
120
|
-
# assumes `bar_format` has max one of ("ncols_desc" & "ncols_info")
|
|
121
|
-
|
|
122
|
-
meter = self.format_meter( # type: ignore[call-arg]
|
|
123
|
-
ncols_desc=1, ncols_info=1, **d
|
|
124
|
-
)
|
|
125
|
-
ncols_left = ncols - len(meter) + 1
|
|
126
|
-
ncols_left = max(ncols_left, 0)
|
|
127
|
-
if ncols_left:
|
|
128
|
-
d["ncols_desc"] = d["ncols_info"] = ncols_left
|
|
129
|
-
else:
|
|
130
|
-
# work-around for zero-width description
|
|
131
|
-
d["ncols_desc"] = d["ncols_info"] = 1
|
|
132
|
-
d["prefix"] = ""
|
|
133
|
-
return d
|
|
134
3
|
|
|
135
4
|
|
|
136
5
|
class CombinedDownloadCallback(Callback):
|
|
@@ -146,8 +15,6 @@ class CombinedDownloadCallback(Callback):
|
|
|
146
15
|
class TqdmCombinedDownloadCallback(CombinedDownloadCallback, TqdmCallback):
|
|
147
16
|
def __init__(self, tqdm_kwargs=None, *args, **kwargs):
|
|
148
17
|
self.files_count = 0
|
|
149
|
-
tqdm_kwargs = tqdm_kwargs or {}
|
|
150
|
-
tqdm_kwargs.setdefault("postfix", {}).setdefault("files", self.files_count)
|
|
151
18
|
super().__init__(tqdm_kwargs, *args, **kwargs)
|
|
152
19
|
|
|
153
20
|
def increment_file_count(self, n: int = 1) -> None:
|
datachain/query/dataset.py
CHANGED
|
@@ -33,6 +33,7 @@ from sqlalchemy.sql.elements import ColumnClause, ColumnElement
|
|
|
33
33
|
from sqlalchemy.sql.expression import label
|
|
34
34
|
from sqlalchemy.sql.schema import TableClause
|
|
35
35
|
from sqlalchemy.sql.selectable import Select
|
|
36
|
+
from tqdm.auto import tqdm
|
|
36
37
|
|
|
37
38
|
from datachain.asyn import ASYNC_WORKERS, AsyncMapper, OrderedMapper
|
|
38
39
|
from datachain.catalog.catalog import clone_catalog_with_cache
|
|
@@ -335,15 +336,16 @@ def process_udf_outputs(
|
|
|
335
336
|
for udf_output in udf_results:
|
|
336
337
|
if not udf_output:
|
|
337
338
|
continue
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
len(rows)
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
339
|
+
with safe_closing(udf_output):
|
|
340
|
+
for row in udf_output:
|
|
341
|
+
cb.relative_update()
|
|
342
|
+
rows.append(adjust_outputs(warehouse, row, udf_col_types))
|
|
343
|
+
if len(rows) >= batch_size or (
|
|
344
|
+
len(rows) % 10 == 0 and psutil.virtual_memory().percent > 80
|
|
345
|
+
):
|
|
346
|
+
for row_chunk in batched(rows, batch_size):
|
|
347
|
+
warehouse.insert_rows(udf_table, row_chunk)
|
|
348
|
+
rows.clear()
|
|
347
349
|
|
|
348
350
|
if rows:
|
|
349
351
|
for row_chunk in batched(rows, batch_size):
|
|
@@ -354,7 +356,7 @@ def process_udf_outputs(
|
|
|
354
356
|
|
|
355
357
|
def get_download_callback(suffix: str = "", **kwargs) -> CombinedDownloadCallback:
|
|
356
358
|
return TqdmCombinedDownloadCallback(
|
|
357
|
-
{
|
|
359
|
+
tqdm_kwargs={
|
|
358
360
|
"desc": "Download" + suffix,
|
|
359
361
|
"unit": "B",
|
|
360
362
|
"unit_scale": True,
|
|
@@ -362,16 +364,21 @@ def get_download_callback(suffix: str = "", **kwargs) -> CombinedDownloadCallbac
|
|
|
362
364
|
"leave": False,
|
|
363
365
|
**kwargs,
|
|
364
366
|
},
|
|
367
|
+
tqdm_cls=tqdm,
|
|
365
368
|
)
|
|
366
369
|
|
|
367
370
|
|
|
368
371
|
def get_processed_callback() -> Callback:
|
|
369
|
-
return TqdmCallback(
|
|
372
|
+
return TqdmCallback(
|
|
373
|
+
{"desc": "Processed", "unit": " rows", "leave": False}, tqdm_cls=tqdm
|
|
374
|
+
)
|
|
370
375
|
|
|
371
376
|
|
|
372
377
|
def get_generated_callback(is_generator: bool = False) -> Callback:
|
|
373
378
|
if is_generator:
|
|
374
|
-
return TqdmCallback(
|
|
379
|
+
return TqdmCallback(
|
|
380
|
+
{"desc": "Generated", "unit": " rows", "leave": False}, tqdm_cls=tqdm
|
|
381
|
+
)
|
|
375
382
|
return DEFAULT_CALLBACK
|
|
376
383
|
|
|
377
384
|
|
datachain/studio.py
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import asyncio
|
|
2
2
|
import os
|
|
3
|
+
import sys
|
|
3
4
|
from typing import TYPE_CHECKING, Optional
|
|
4
5
|
|
|
5
|
-
from tabulate import tabulate
|
|
6
|
-
|
|
7
6
|
from datachain.catalog.catalog import raise_remote_error
|
|
8
7
|
from datachain.config import Config, ConfigLevel
|
|
9
8
|
from datachain.dataset import QUERY_DATASET_PREFIX
|
|
@@ -21,6 +20,13 @@ POST_LOGIN_MESSAGE = (
|
|
|
21
20
|
|
|
22
21
|
|
|
23
22
|
def process_jobs_args(args: "Namespace"):
|
|
23
|
+
if args.cmd is None:
|
|
24
|
+
print(
|
|
25
|
+
f"Use 'datachain {args.command} --help' to see available options",
|
|
26
|
+
file=sys.stderr,
|
|
27
|
+
)
|
|
28
|
+
return 1
|
|
29
|
+
|
|
24
30
|
if args.cmd == "run":
|
|
25
31
|
return create_job(
|
|
26
32
|
args.query_file,
|
|
@@ -42,19 +48,19 @@ def process_jobs_args(args: "Namespace"):
|
|
|
42
48
|
|
|
43
49
|
|
|
44
50
|
def process_studio_cli_args(args: "Namespace"):
|
|
51
|
+
if args.cmd is None:
|
|
52
|
+
print(
|
|
53
|
+
f"Use 'datachain {args.command} --help' to see available options",
|
|
54
|
+
file=sys.stderr,
|
|
55
|
+
)
|
|
56
|
+
return 1
|
|
57
|
+
|
|
45
58
|
if args.cmd == "login":
|
|
46
59
|
return login(args)
|
|
47
60
|
if args.cmd == "logout":
|
|
48
61
|
return logout()
|
|
49
62
|
if args.cmd == "token":
|
|
50
63
|
return token()
|
|
51
|
-
if args.cmd == "dataset":
|
|
52
|
-
rows = [
|
|
53
|
-
{"Name": name, "Version": version}
|
|
54
|
-
for name, version in list_datasets(args.team)
|
|
55
|
-
]
|
|
56
|
-
print(tabulate(rows, headers="keys"))
|
|
57
|
-
return 0
|
|
58
64
|
|
|
59
65
|
if args.cmd == "team":
|
|
60
66
|
return set_team(args)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: datachain
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.9
|
|
4
4
|
Summary: Wrangle unstructured AI data at scale
|
|
5
5
|
Author-email: Dmitry Petrov <support@dvc.org>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -99,7 +99,7 @@ Requires-Dist: unstructured[pdf]<0.16.12; extra == "examples"
|
|
|
99
99
|
Requires-Dist: pdfplumber==0.11.5; extra == "examples"
|
|
100
100
|
Requires-Dist: huggingface_hub[hf_transfer]; extra == "examples"
|
|
101
101
|
Requires-Dist: onnx==1.16.1; extra == "examples"
|
|
102
|
-
Requires-Dist: ultralytics==8.3.
|
|
102
|
+
Requires-Dist: ultralytics==8.3.61; extra == "examples"
|
|
103
103
|
|
|
104
104
|
================
|
|
105
105
|
|logo| DataChain
|
|
@@ -189,13 +189,14 @@ Python code:
|
|
|
189
189
|
|
|
190
190
|
.. code:: py
|
|
191
191
|
|
|
192
|
+
import os
|
|
192
193
|
from mistralai import Mistral
|
|
193
194
|
from datachain import File, DataChain, Column
|
|
194
195
|
|
|
195
196
|
PROMPT = "Was this dialog successful? Answer in a single word: Success or Failure."
|
|
196
197
|
|
|
197
198
|
def eval_dialogue(file: File) -> bool:
|
|
198
|
-
client = Mistral()
|
|
199
|
+
client = Mistral(api_key = os.environ["MISTRAL_API_KEY"])
|
|
199
200
|
response = client.chat.complete(
|
|
200
201
|
model="open-mixtral-8x22b",
|
|
201
202
|
messages=[{"role": "system", "content": PROMPT},
|
|
@@ -1,54 +1,54 @@
|
|
|
1
1
|
datachain/__init__.py,sha256=ofPJ6B-d-ybSDRrE7J6wqF_ZRAB2W9U8l-eeuBtqPLg,865
|
|
2
2
|
datachain/__main__.py,sha256=hG3Y4ARGEqe1AWwNMd259rBlqtphx1Wk39YbueQ0yV8,91
|
|
3
3
|
datachain/asyn.py,sha256=RH_jFwJcTXxhEFomaI9yL6S3Onau6NZ6FSKfKFGtrJE,9689
|
|
4
|
-
datachain/cache.py,sha256=
|
|
4
|
+
datachain/cache.py,sha256=8BdTklwLOsDicVXUfriIXsheiYVLxgrC-ElkRhPoHxI,3659
|
|
5
5
|
datachain/config.py,sha256=g8qbNV0vW2VEKpX-dGZ9pAn0DAz6G2ZFcr7SAV3PoSM,4272
|
|
6
6
|
datachain/dataset.py,sha256=5HtqZBRaaToa_C74g62bACjBaCRf2Y6BDgIACLhK1ZA,19161
|
|
7
7
|
datachain/error.py,sha256=bxAAL32lSeMgzsQDEHbGTGORj-mPzzpCRvWDPueJNN4,1092
|
|
8
8
|
datachain/job.py,sha256=Jt4sNutMHJReaGsj3r3scueN5aESLGfhimAa8pUP7Is,1271
|
|
9
|
-
datachain/listing.py,sha256=
|
|
9
|
+
datachain/listing.py,sha256=kTjZq3XUBmReh_P3sBP2n87F87h30FJwGSRgs6S_0TE,7612
|
|
10
10
|
datachain/node.py,sha256=HSpjBUBQBWXUUpbUEq839dsSc5KR2O8ww1Udl4jQemY,6023
|
|
11
11
|
datachain/nodes_fetcher.py,sha256=ILMzUW5o4_6lUOVrLDC9gJPCXfcgKnMG68plrc7dAOA,1113
|
|
12
12
|
datachain/nodes_thread_pool.py,sha256=uPo-xl8zG5m9YgODjPFBpbcqqHjI-dcxH87yAbj_qco,3192
|
|
13
|
-
datachain/progress.py,sha256=
|
|
13
|
+
datachain/progress.py,sha256=lRzxoYP4Qv2XBwD78sOkmYRzHFpZ2ExVNJF8wAeICtY,770
|
|
14
14
|
datachain/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
-
datachain/studio.py,sha256=
|
|
15
|
+
datachain/studio.py,sha256=5LTzr7jNxapQk4aF4ob8ax9zNQ0ShZ26nQtOi4gKToc,9422
|
|
16
16
|
datachain/telemetry.py,sha256=0A4IOPPp9VlP5pyW9eBfaTK3YhHGzHl7dQudQjUAx9A,994
|
|
17
17
|
datachain/utils.py,sha256=LBeg-9n48saBTHSPk7u_j-kjJnPUAq5Oyps_peSaqlM,14128
|
|
18
18
|
datachain/catalog/__init__.py,sha256=g2iAAFx_gEIrqshXlhSEbrc8qDaEH11cjU40n3CHDz4,409
|
|
19
|
-
datachain/catalog/catalog.py,sha256=
|
|
19
|
+
datachain/catalog/catalog.py,sha256=1jtwHVxCRQWJSTz1GjP6qvB2bDo2AosBjouQh3neKaM,60516
|
|
20
20
|
datachain/catalog/datasource.py,sha256=IkGMh0Ttg6Q-9DWfU_H05WUnZepbGa28HYleECi6K7I,1353
|
|
21
21
|
datachain/catalog/loader.py,sha256=HA_mBC7q_My8j2WnSvIjUGuJpl6SIdg5vvy_lagxJlA,5733
|
|
22
|
-
datachain/cli/__init__.py,sha256=
|
|
22
|
+
datachain/cli/__init__.py,sha256=jnmSov-UIvgz3p-YclkKEhVpvawPVtsd8o5uq7hrRfc,8489
|
|
23
23
|
datachain/cli/utils.py,sha256=jEoqY0agU3AZ-VQBpyieDKIlk7j3sumtlHE3OgbAzdU,3038
|
|
24
24
|
datachain/cli/commands/__init__.py,sha256=uc77ggTRWrq-w1AVsH3Muy6v1ATkNsXUBPIRaOFgNus,533
|
|
25
|
-
datachain/cli/commands/datasets.py,sha256=
|
|
25
|
+
datachain/cli/commands/datasets.py,sha256=q1FkvFfeBCkuIuaA8pick0y51ZQuQK89ULUFse5xsu0,3583
|
|
26
26
|
datachain/cli/commands/du.py,sha256=9edEzDEs98K2VYk8Wf-ZMpUzALcgm9uD6YtoqbvtUGU,391
|
|
27
27
|
datachain/cli/commands/index.py,sha256=eglNaIe1yyIadUHHumjtNbgIjht6kme7SS7xE3YHR88,198
|
|
28
28
|
datachain/cli/commands/ls.py,sha256=Wb8hXyBwyhb62Zk6ZhNFPFrj2lJhdbRcnBQQkgL_qyw,5174
|
|
29
29
|
datachain/cli/commands/misc.py,sha256=c0DmkOLwcDI2YhA8ArOuLJk6aGzSMZCiKL_E2JGibVE,600
|
|
30
30
|
datachain/cli/commands/query.py,sha256=2S7hQxialt1fkbocxi6JXZI6jS5QnFrD1aOjKgZkzfI,1471
|
|
31
31
|
datachain/cli/commands/show.py,sha256=RVb_7Kjd1kzqTxRKYFvmD04LaJHOtrCc4FYMyc-ZEYw,1149
|
|
32
|
-
datachain/cli/parser/__init__.py,sha256=
|
|
33
|
-
datachain/cli/parser/job.py,sha256=
|
|
34
|
-
datachain/cli/parser/studio.py,sha256=
|
|
35
|
-
datachain/cli/parser/utils.py,sha256=
|
|
32
|
+
datachain/cli/parser/__init__.py,sha256=xBvS6FDkD-0TrME9t56C00jCFHD5Ly4SIQLe9JGHlpE,14881
|
|
33
|
+
datachain/cli/parser/job.py,sha256=m_w6DZBMvQu0pu5LHxBVnh9gENPf02jxhwtLqjfhEGU,3199
|
|
34
|
+
datachain/cli/parser/studio.py,sha256=AxCK8Oz5psj3jtl6XFSkGjDoSXuek3nBpPttvNFov9U,2977
|
|
35
|
+
datachain/cli/parser/utils.py,sha256=gDaRll8CugmdFdx9mhdSPVKW3oBoQOVlg6WmNeMgyd8,1597
|
|
36
36
|
datachain/client/__init__.py,sha256=1kDpCPoibMXi1gExR4lTLc5pi-k6M5TANiwtXkPoLhU,49
|
|
37
|
-
datachain/client/azure.py,sha256=
|
|
37
|
+
datachain/client/azure.py,sha256=ma6fJcnveG8wpNy1PSrN5hgvmRdCj8Sf3RKjfd3qCyM,3221
|
|
38
38
|
datachain/client/fileslice.py,sha256=bT7TYco1Qe3bqoc8aUkUZcPdPofJDHlryL5BsTn9xsY,3021
|
|
39
|
-
datachain/client/fsspec.py,sha256=
|
|
40
|
-
datachain/client/gcs.py,sha256
|
|
39
|
+
datachain/client/fsspec.py,sha256=7gysN8NjFXKEgu1-gy_PCiupByV-UGh3AEkz-jF1hVI,13912
|
|
40
|
+
datachain/client/gcs.py,sha256=TY5K5INORKknTnoWDYv0EUztVLmuY1hHmdf2wUB_9uE,5114
|
|
41
41
|
datachain/client/hf.py,sha256=XeVJVbiNViZCpn3sfb90Fr8SYO3BdLmfE3hOWMoqInE,951
|
|
42
|
-
datachain/client/local.py,sha256=
|
|
43
|
-
datachain/client/s3.py,sha256=
|
|
42
|
+
datachain/client/local.py,sha256=_twL9v9vM2q7hyWeETZ9qLJOlG4FhZ0cGg7RteEXHQA,4708
|
|
43
|
+
datachain/client/s3.py,sha256=l2A4J086ZROKKHNVXnoBky0OgYYKB0EAr8Y3lObo8GY,7284
|
|
44
44
|
datachain/data_storage/__init__.py,sha256=9Wit-oe5P46V7CJQTD0BJ5MhOa2Y9h3ddJ4VWTe-Lec,273
|
|
45
45
|
datachain/data_storage/db_engine.py,sha256=n8ojCbvVMPY2e3SG8fUaaD0b9GkVfpl_Naa_6EiHfWg,3788
|
|
46
46
|
datachain/data_storage/job.py,sha256=w-7spowjkOa1P5fUVtJou3OltT0L48P0RYWZ9rSJ9-s,383
|
|
47
47
|
datachain/data_storage/metastore.py,sha256=hfTITcesE9XlUTxcCcdDyWGGep-QSjJL9DUxko5QCeI,37524
|
|
48
48
|
datachain/data_storage/schema.py,sha256=8np_S6Ltq7WXfcqpoSeFPryPS7cipdbiSP6UnKJkAac,9516
|
|
49
49
|
datachain/data_storage/serializer.py,sha256=6G2YtOFqqDzJf1KbvZraKGXl2XHZyVml2krunWUum5o,927
|
|
50
|
-
datachain/data_storage/sqlite.py,sha256=
|
|
51
|
-
datachain/data_storage/warehouse.py,sha256=
|
|
50
|
+
datachain/data_storage/sqlite.py,sha256=kSUvChn3bugyh5qUN8cEE6Rvornwh_6fd94ZKKTxLpk,23181
|
|
51
|
+
datachain/data_storage/warehouse.py,sha256=ASKD0mMB8eTvXhMLoUroUypWpN1fVaynSB6k1NZX8lE,30828
|
|
52
52
|
datachain/diff/__init__.py,sha256=OapNRBsyGDOQHelefUEoXoFHRWCJuBnhvD0ibebKvBc,10486
|
|
53
53
|
datachain/func/__init__.py,sha256=8WWvzWYtOzXmAC1fOMegyoJ-rFnpAca_5UW4gy8BVsk,1077
|
|
54
54
|
datachain/func/aggregate.py,sha256=7_IPrIwb2XSs3zG4iOr1eTvzn6kNVe2mkzvNzjusDHk,10942
|
|
@@ -62,24 +62,24 @@ datachain/func/random.py,sha256=pENOLj9rSmWfGCnOsUIaCsVC5486zQb66qfQvXaz9Z4,452
|
|
|
62
62
|
datachain/func/string.py,sha256=8az3BTeezlaZt6NW-54GWX7WSosAOVMbTr6bXIYyJq4,5958
|
|
63
63
|
datachain/func/window.py,sha256=0MB1yjpVbwOrl_WNLZ8V3jkJz3o0XlYinpAcZQJuxiA,1688
|
|
64
64
|
datachain/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
|
-
datachain/lib/arrow.py,sha256=
|
|
65
|
+
datachain/lib/arrow.py,sha256=sU6cbjz2W1UuTfez6tCYPfVPJXlmfMDbnaVWPhMu0XU,9906
|
|
66
66
|
datachain/lib/clip.py,sha256=lm5CzVi4Cj1jVLEKvERKArb-egb9j1Ls-fwTItT6vlI,6150
|
|
67
67
|
datachain/lib/data_model.py,sha256=zS4lmXHVBXc9ntcyea2a1CRLXGSAN_0glXcF88CohgY,2685
|
|
68
68
|
datachain/lib/dataset_info.py,sha256=IjdF1E0TQNOq9YyynfWiCFTeZpbyGfyJvxgJY4YN810,2493
|
|
69
|
-
datachain/lib/dc.py,sha256=
|
|
70
|
-
datachain/lib/file.py,sha256=
|
|
71
|
-
datachain/lib/hf.py,sha256=
|
|
69
|
+
datachain/lib/dc.py,sha256=673Mu2Pqu63o7wrpdvujOmWJhJNbXfnyCSWLS93mJpw,92315
|
|
70
|
+
datachain/lib/file.py,sha256=7posvEFSb7gsLKAiid75dOJRyHTRKOmBAkmBw6RiZyg,16307
|
|
71
|
+
datachain/lib/hf.py,sha256=DvoI8fv-WkL3FDEuIT80T9WrRs6fXesjbU0bmIDDsNE,5882
|
|
72
72
|
datachain/lib/image.py,sha256=AMXYwQsmarZjRbPCZY3M1jDsM2WAB_b3cTY4uOIuXNU,2675
|
|
73
|
-
datachain/lib/listing.py,sha256=
|
|
73
|
+
datachain/lib/listing.py,sha256=MSr07Xn2yjIKazbAtRIyVamK8GImcxMeVMChDu2vXrA,6621
|
|
74
74
|
datachain/lib/listing_info.py,sha256=9ua40Hw0aiQByUw3oAEeNzMavJYfW0Uhe8YdCTK-m_g,1110
|
|
75
75
|
datachain/lib/meta_formats.py,sha256=hDPfEkcmiLZOjhBBXuareMdnq65Wj8vZvxjmum6cROM,6377
|
|
76
76
|
datachain/lib/model_store.py,sha256=DNIv8Y6Jtk1_idNLzIpsThOsdW2BMAudyUCbPUcgcxk,2515
|
|
77
|
-
datachain/lib/pytorch.py,sha256=
|
|
77
|
+
datachain/lib/pytorch.py,sha256=sIm8ITBSGzw08zJMV9mm4nIqDLqbwb4AAmqhuW4_bzU,7728
|
|
78
78
|
datachain/lib/settings.py,sha256=ZELRCTLbi5vzRPiDX6cQ9LLg9TefJ_A05gIGni0lll8,2535
|
|
79
79
|
datachain/lib/signal_schema.py,sha256=ps5od6zhWtdX3Khx2fwArl2xlGkK8SKi6vCQ6QmbaR0,27404
|
|
80
80
|
datachain/lib/tar.py,sha256=3WIzao6yD5fbLqXLTt9GhPGNonbFIs_fDRu-9vgLgsA,1038
|
|
81
81
|
datachain/lib/text.py,sha256=UNHm8fhidk7wdrWqacEWaA6I9ykfYqarQ2URby7jc7M,1261
|
|
82
|
-
datachain/lib/udf.py,sha256=
|
|
82
|
+
datachain/lib/udf.py,sha256=XYu0KN3vlreMcpfUDXuOT325fNwem3UHYPlbyEShdLw,16125
|
|
83
83
|
datachain/lib/udf_signature.py,sha256=GXw24A-Olna6DWCdgy2bC-gZh_gLGPQ-KvjuI6pUjC0,7281
|
|
84
84
|
datachain/lib/utils.py,sha256=QrjVs_oLRXEotOPUYurBJypBFi_ReTJmxcnJeH4j2Uk,1596
|
|
85
85
|
datachain/lib/vfile.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -89,19 +89,19 @@ datachain/lib/convert/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
|
89
89
|
datachain/lib/convert/flatten.py,sha256=IZFiUYbgXSxXhPSG5Cqf5IjnJ4ZDZKXMr4o_yCR1NY4,1505
|
|
90
90
|
datachain/lib/convert/python_to_sql.py,sha256=40SAOdoOgikZRhn8iomCPDRoxC3RFxjJLivEAA9MHDU,2880
|
|
91
91
|
datachain/lib/convert/sql_to_python.py,sha256=XXCBYDQFUXJIBNWkjEP944cnCfJ8GF2Tji0DLF3A_zQ,315
|
|
92
|
-
datachain/lib/convert/unflatten.py,sha256=
|
|
92
|
+
datachain/lib/convert/unflatten.py,sha256=ysMkstwJzPMWUlnxn-Z-tXJR3wmhjHeSN_P-sDcLS6s,2010
|
|
93
93
|
datachain/lib/convert/values_to_tuples.py,sha256=EFfIGBiVVltJQG8blzsQ1dGXneh4D3wdLfSUeoK10OI,3931
|
|
94
94
|
datachain/model/__init__.py,sha256=R9faX5OHV1xh2EW-g2MPedwbtEqt3LodJRyluB-QylI,189
|
|
95
|
-
datachain/model/bbox.py,sha256=
|
|
96
|
-
datachain/model/pose.py,sha256=
|
|
97
|
-
datachain/model/segment.py,sha256=
|
|
95
|
+
datachain/model/bbox.py,sha256=jCuOdcdY__4WMsVfZp5ZNxnmcHva0KUm9MfbL0AMMy4,3158
|
|
96
|
+
datachain/model/pose.py,sha256=NpxyDTcgPoB5LcoRVLwVXTKIHRxqZcdCX5c9soBIPb0,3078
|
|
97
|
+
datachain/model/segment.py,sha256=LEZ88H9mb7tXq3OAcOYiYF8Di7NWmkSe3x9WSewpKQk,1595
|
|
98
98
|
datachain/model/ultralytics/__init__.py,sha256=EvcNX9qUyxKXXlKCPpsXeRrabyXk5E9EkN-tyiYkfS4,750
|
|
99
99
|
datachain/model/ultralytics/bbox.py,sha256=OZ9XBdyMOYc401P-RhfSN9QaYvMpnx2Phu9ptaJgZBY,4316
|
|
100
100
|
datachain/model/ultralytics/pose.py,sha256=71KBTcoST2wcEtsyGXqLVpvUtqbp9gwZGA15pEPtX5A,2959
|
|
101
101
|
datachain/model/ultralytics/segment.py,sha256=Z1ab0tZRJubSYNH4KkFlzhYeGNTfAyC71KmkQcToHDQ,2760
|
|
102
102
|
datachain/query/__init__.py,sha256=7DhEIjAA8uZJfejruAVMZVcGFmvUpffuZJwgRqNwe-c,263
|
|
103
103
|
datachain/query/batch.py,sha256=6w8gzLTmLeylststu-gT5jIqEfi4-djS7_yTYyeo-fw,4190
|
|
104
|
-
datachain/query/dataset.py,sha256=
|
|
104
|
+
datachain/query/dataset.py,sha256=iupWhXBxbBDuihqyidztXWhTAD7wAli3FLFkf8_neUA,56351
|
|
105
105
|
datachain/query/dispatch.py,sha256=_1vjeQ1wjUoxlik55k0JkWqQCUfMjgVWmEOyWRkx0dU,12437
|
|
106
106
|
datachain/query/metrics.py,sha256=r5b0ygYhokbXp8Mg3kCH8iFSRw0jxzyeBe-C-J_bKFc,938
|
|
107
107
|
datachain/query/params.py,sha256=O_j89mjYRLOwWNhYZl-z7mi-rkdP7WyFmaDufsdTryE,863
|
|
@@ -133,9 +133,9 @@ datachain/sql/sqlite/vector.py,sha256=ncW4eu2FlJhrP_CIpsvtkUabZlQdl2D5Lgwy_cbfqR
|
|
|
133
133
|
datachain/toolkit/__init__.py,sha256=eQ58Q5Yf_Fgv1ZG0IO5dpB4jmP90rk8YxUWmPc1M2Bo,68
|
|
134
134
|
datachain/toolkit/split.py,sha256=z3zRJNzjWrpPuRw-zgFbCOBKInyYxJew8ygrYQRQLNc,2930
|
|
135
135
|
datachain/torch/__init__.py,sha256=gIS74PoEPy4TB3X6vx9nLO0Y3sLJzsA8ckn8pRWihJM,579
|
|
136
|
-
datachain-0.8.
|
|
137
|
-
datachain-0.8.
|
|
138
|
-
datachain-0.8.
|
|
139
|
-
datachain-0.8.
|
|
140
|
-
datachain-0.8.
|
|
141
|
-
datachain-0.8.
|
|
136
|
+
datachain-0.8.9.dist-info/LICENSE,sha256=8DnqK5yoPI_E50bEg_zsHKZHY2HqPy4rYN338BHQaRA,11344
|
|
137
|
+
datachain-0.8.9.dist-info/METADATA,sha256=fXC2bFkpYNoMmWo8a1m4NYgdCsH4HfLy9ufR89u0PHY,11117
|
|
138
|
+
datachain-0.8.9.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
139
|
+
datachain-0.8.9.dist-info/entry_points.txt,sha256=0GMJS6B_KWq0m3VT98vQI2YZodAMkn4uReZ_okga9R4,49
|
|
140
|
+
datachain-0.8.9.dist-info/top_level.txt,sha256=lZPpdU_2jJABLNIg2kvEOBi8PtsYikbN1OdMLHk8bTg,10
|
|
141
|
+
datachain-0.8.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|