datachain 0.18.4__py3-none-any.whl → 0.18.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.
Potentially problematic release.
This version of datachain might be problematic. Click here for more details.
- datachain/catalog/catalog.py +2 -10
- datachain/client/azure.py +1 -1
- datachain/client/gcs.py +1 -1
- datachain/client/s3.py +5 -3
- datachain/data_storage/metastore.py +87 -42
- datachain/func/aggregate.py +64 -38
- datachain/func/array.py +102 -73
- datachain/func/conditional.py +71 -51
- datachain/func/func.py +1 -1
- datachain/func/numeric.py +55 -36
- datachain/func/path.py +32 -20
- datachain/func/random.py +2 -2
- datachain/func/string.py +59 -37
- datachain/func/window.py +7 -8
- datachain/lib/dc/datachain.py +9 -0
- datachain/model/ultralytics/bbox.py +6 -4
- datachain/model/ultralytics/pose.py +6 -4
- datachain/model/ultralytics/segment.py +6 -4
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/METADATA +3 -3
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/RECORD +24 -24
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/WHEEL +1 -1
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/entry_points.txt +0 -0
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/licenses/LICENSE +0 -0
- {datachain-0.18.4.dist-info → datachain-0.18.5.dist-info}/top_level.txt +0 -0
datachain/func/string.py
CHANGED
|
@@ -1,64 +1,68 @@
|
|
|
1
|
-
from typing import Optional,
|
|
1
|
+
from typing import Optional, get_origin
|
|
2
2
|
|
|
3
3
|
from sqlalchemy import literal
|
|
4
4
|
|
|
5
5
|
from datachain.sql.functions import string
|
|
6
6
|
|
|
7
|
-
from .func import Func
|
|
7
|
+
from .func import ColT, Func
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
def length(col:
|
|
10
|
+
def length(col: ColT) -> Func:
|
|
11
11
|
"""
|
|
12
12
|
Returns the length of the string.
|
|
13
13
|
|
|
14
14
|
Args:
|
|
15
|
-
col (str |
|
|
15
|
+
col (str | Column | Func | literal): String to compute the length of.
|
|
16
16
|
If a string is provided, it is assumed to be the name of the column.
|
|
17
|
-
If a
|
|
17
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
18
18
|
If a Func is provided, it is assumed to be a function returning a string.
|
|
19
|
+
If a literal is provided, it is assumed to be a string literal.
|
|
19
20
|
|
|
20
21
|
Returns:
|
|
21
|
-
Func: A Func object that represents the string length function.
|
|
22
|
+
Func: A `Func` object that represents the string length function.
|
|
22
23
|
|
|
23
24
|
Example:
|
|
24
25
|
```py
|
|
25
26
|
dc.mutate(
|
|
26
27
|
len1=func.string.length("file.path"),
|
|
27
|
-
len2=func.string.length("
|
|
28
|
+
len2=func.string.length(dc.C("file.path")),
|
|
29
|
+
len3=func.string.length(dc.func.literal("Random string")),
|
|
28
30
|
)
|
|
29
31
|
```
|
|
30
32
|
|
|
31
|
-
|
|
32
|
-
-
|
|
33
|
+
Notes:
|
|
34
|
+
- The result column will always be of type int.
|
|
33
35
|
"""
|
|
34
36
|
return Func("length", inner=string.length, cols=[col], result_type=int)
|
|
35
37
|
|
|
36
38
|
|
|
37
|
-
def split(col:
|
|
39
|
+
def split(col: ColT, sep: str, limit: Optional[int] = None) -> Func:
|
|
38
40
|
"""
|
|
39
41
|
Takes a column and split character and returns an array of the parts.
|
|
40
42
|
|
|
41
43
|
Args:
|
|
42
|
-
col (str | literal): Column to split.
|
|
44
|
+
col (str | Column | Func | literal): Column to split.
|
|
43
45
|
If a string is provided, it is assumed to be the name of the column.
|
|
44
|
-
If a
|
|
46
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
45
47
|
If a Func is provided, it is assumed to be a function returning a string.
|
|
48
|
+
If a literal is provided, it is assumed to be a string literal.
|
|
46
49
|
sep (str): Separator to split the string.
|
|
47
50
|
limit (int, optional): Maximum number of splits to perform.
|
|
48
51
|
|
|
49
52
|
Returns:
|
|
50
|
-
Func: A Func object that represents the split function.
|
|
53
|
+
Func: A `Func` object that represents the split function.
|
|
51
54
|
|
|
52
55
|
Example:
|
|
53
56
|
```py
|
|
54
57
|
dc.mutate(
|
|
55
58
|
path_parts=func.string.split("file.path", "/"),
|
|
56
|
-
|
|
59
|
+
signal_values=func.string.split(dc.C("signal.value"), ","),
|
|
60
|
+
str_words=func.string.split(dc.func.literal("Random string"), " "),
|
|
57
61
|
)
|
|
58
62
|
```
|
|
59
63
|
|
|
60
|
-
|
|
61
|
-
-
|
|
64
|
+
Notes:
|
|
65
|
+
- The result column will always be of type array of strings.
|
|
62
66
|
"""
|
|
63
67
|
|
|
64
68
|
def inner(arg):
|
|
@@ -76,30 +80,33 @@ def split(col: Union[str, Func], sep: str, limit: Optional[int] = None) -> Func:
|
|
|
76
80
|
return Func("split", inner=inner, cols=cols, args=args, result_type=list[str])
|
|
77
81
|
|
|
78
82
|
|
|
79
|
-
def replace(col:
|
|
83
|
+
def replace(col: ColT, pattern: str, replacement: str) -> Func:
|
|
80
84
|
"""
|
|
81
85
|
Replaces substring with another string.
|
|
82
86
|
|
|
83
87
|
Args:
|
|
84
|
-
col (str | literal): Column to
|
|
88
|
+
col (str | Column | Func | literal): Column to perform replacement on.
|
|
85
89
|
If a string is provided, it is assumed to be the name of the column.
|
|
86
|
-
If a
|
|
90
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
87
91
|
If a Func is provided, it is assumed to be a function returning a string.
|
|
92
|
+
If a literal is provided, it is assumed to be a string literal.
|
|
88
93
|
pattern (str): Pattern to replace.
|
|
89
94
|
replacement (str): Replacement string.
|
|
90
95
|
|
|
91
96
|
Returns:
|
|
92
|
-
Func: A Func object that represents the replace function.
|
|
97
|
+
Func: A `Func` object that represents the replace function.
|
|
93
98
|
|
|
94
99
|
Example:
|
|
95
100
|
```py
|
|
96
101
|
dc.mutate(
|
|
97
|
-
|
|
102
|
+
s1=func.string.replace("signal.name", "pattern", "replacement"),
|
|
103
|
+
s2=func.string.replace(dc.C("signal.name"), "pattern", "replacement"),
|
|
104
|
+
s3=func.string.replace(dc.func.literal("Random string"), "Random", "New"),
|
|
98
105
|
)
|
|
99
106
|
```
|
|
100
107
|
|
|
101
|
-
|
|
102
|
-
-
|
|
108
|
+
Notes:
|
|
109
|
+
- The result column will always be of type string.
|
|
103
110
|
"""
|
|
104
111
|
|
|
105
112
|
def inner(arg):
|
|
@@ -115,30 +122,37 @@ def replace(col: Union[str, Func], pattern: str, replacement: str) -> Func:
|
|
|
115
122
|
return Func("replace", inner=inner, cols=cols, args=args, result_type=str)
|
|
116
123
|
|
|
117
124
|
|
|
118
|
-
def regexp_replace(col:
|
|
125
|
+
def regexp_replace(col: ColT, regex: str, replacement: str) -> Func:
|
|
119
126
|
r"""
|
|
120
127
|
Replaces substring that match a regular expression.
|
|
121
128
|
|
|
122
129
|
Args:
|
|
123
|
-
col (str | literal): Column to
|
|
130
|
+
col (str | Column | Func | literal): Column to perform replacement on.
|
|
124
131
|
If a string is provided, it is assumed to be the name of the column.
|
|
125
|
-
If a
|
|
132
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
126
133
|
If a Func is provided, it is assumed to be a function returning a string.
|
|
134
|
+
If a literal is provided, it is assumed to be a string literal.
|
|
127
135
|
regex (str): Regular expression pattern to replace.
|
|
128
136
|
replacement (str): Replacement string.
|
|
129
137
|
|
|
130
138
|
Returns:
|
|
131
|
-
Func: A Func object that represents the regexp_replace function.
|
|
139
|
+
Func: A `Func` object that represents the regexp_replace function.
|
|
132
140
|
|
|
133
141
|
Example:
|
|
134
142
|
```py
|
|
135
143
|
dc.mutate(
|
|
136
|
-
|
|
144
|
+
s1=func.string.regexp_replace("signal.name", r"\d+", "X"),
|
|
145
|
+
s2=func.string.regexp_replace(dc.C("signal.name"), r"\d+", "X"),
|
|
146
|
+
s3=func.string.regexp_replace(
|
|
147
|
+
dc.func.literal("Random string"),
|
|
148
|
+
r"\s+",
|
|
149
|
+
"_",
|
|
150
|
+
),
|
|
137
151
|
)
|
|
138
152
|
```
|
|
139
153
|
|
|
140
|
-
|
|
141
|
-
-
|
|
154
|
+
Notes:
|
|
155
|
+
- The result column will always be of type string.
|
|
142
156
|
"""
|
|
143
157
|
|
|
144
158
|
def inner(arg):
|
|
@@ -154,7 +168,7 @@ def regexp_replace(col: Union[str, Func], regex: str, replacement: str) -> Func:
|
|
|
154
168
|
return Func("regexp_replace", inner=inner, cols=cols, args=args, result_type=str)
|
|
155
169
|
|
|
156
170
|
|
|
157
|
-
def byte_hamming_distance(*args:
|
|
171
|
+
def byte_hamming_distance(*args: ColT) -> Func:
|
|
158
172
|
"""
|
|
159
173
|
Computes the Hamming distance between two strings.
|
|
160
174
|
|
|
@@ -164,22 +178,30 @@ def byte_hamming_distance(*args: Union[str, Func]) -> Func:
|
|
|
164
178
|
of the strings indicate higher dissimilarity.
|
|
165
179
|
|
|
166
180
|
Args:
|
|
167
|
-
args (str | literal): Two strings to compute
|
|
168
|
-
|
|
169
|
-
If a
|
|
181
|
+
args (str | Column | Func | literal): Two strings to compute
|
|
182
|
+
the Hamming distance between.
|
|
183
|
+
If a string is provided, it is assumed to be the name of the column.
|
|
184
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
185
|
+
If a Func is provided, it is assumed to be a function returning a string.
|
|
186
|
+
If a literal is provided, it is assumed to be a string literal.
|
|
170
187
|
|
|
171
188
|
Returns:
|
|
172
|
-
Func: A Func object that represents the Hamming distance function.
|
|
189
|
+
Func: A `Func` object that represents the Hamming distance function.
|
|
173
190
|
|
|
174
191
|
Example:
|
|
175
192
|
```py
|
|
176
193
|
dc.mutate(
|
|
177
|
-
|
|
194
|
+
hd1=func.byte_hamming_distance("file.phash", literal("hello")),
|
|
195
|
+
hd2=func.byte_hamming_distance(dc.C("file.phash"), "hello"),
|
|
196
|
+
hd3=func.byte_hamming_distance(
|
|
197
|
+
dc.func.literal("hi"),
|
|
198
|
+
dc.func.literal("hello"),
|
|
199
|
+
),
|
|
178
200
|
)
|
|
179
201
|
```
|
|
180
202
|
|
|
181
203
|
Notes:
|
|
182
|
-
-
|
|
204
|
+
- The result column will always be of type int.
|
|
183
205
|
"""
|
|
184
206
|
cols, func_args = [], []
|
|
185
207
|
for arg in args:
|
datachain/func/window.py
CHANGED
|
@@ -22,17 +22,16 @@ def window(partition_by: str, order_by: str, desc: bool = False) -> Window:
|
|
|
22
22
|
|
|
23
23
|
Args:
|
|
24
24
|
partition_by (str): The column name by which to partition the result set.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
order_by (str): The column name by which to order the rows
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
Rows with the same value in the partition column will be grouped together
|
|
26
|
+
for the window function.
|
|
27
|
+
order_by (str): The column name by which to order the rows within
|
|
28
|
+
each partition. This determines the sequence in which the window function
|
|
29
|
+
is applied.
|
|
30
30
|
desc (bool, optional): If True, the rows will be ordered in descending order.
|
|
31
|
-
|
|
32
|
-
in ascending order.
|
|
31
|
+
Defaults to False, which orders the rows in ascending order.
|
|
33
32
|
|
|
34
33
|
Returns:
|
|
35
|
-
Window: A Window object representing the window specification.
|
|
34
|
+
Window: A `Window` object representing the window specification.
|
|
36
35
|
|
|
37
36
|
Example:
|
|
38
37
|
```py
|
datachain/lib/dc/datachain.py
CHANGED
|
@@ -2082,6 +2082,11 @@ class DataChain:
|
|
|
2082
2082
|
Use before running map/gen/agg/batch_map to save an object and pass it as an
|
|
2083
2083
|
argument to the UDF.
|
|
2084
2084
|
|
|
2085
|
+
The value must be a callable (a `lambda: <value>` syntax can be used to quickly
|
|
2086
|
+
create one) that returns the object to be passed to the UDF. It is evaluated
|
|
2087
|
+
lazily when UDF is running, in case of multiple machines the callable is run on
|
|
2088
|
+
a worker machine.
|
|
2089
|
+
|
|
2085
2090
|
Example:
|
|
2086
2091
|
```py
|
|
2087
2092
|
import anthropic
|
|
@@ -2091,7 +2096,11 @@ class DataChain:
|
|
|
2091
2096
|
(
|
|
2092
2097
|
dc.read_storage(DATA, type="text")
|
|
2093
2098
|
.settings(parallel=4, cache=True)
|
|
2099
|
+
|
|
2100
|
+
# Setup Anthropic client and pass it to the UDF below automatically
|
|
2101
|
+
# The value is callable (see the note above)
|
|
2094
2102
|
.setup(client=lambda: anthropic.Anthropic(api_key=API_KEY))
|
|
2103
|
+
|
|
2095
2104
|
.map(
|
|
2096
2105
|
claude=lambda client, file: client.messages.create(
|
|
2097
2106
|
model=MODEL,
|
|
@@ -33,7 +33,7 @@ class YoloBBox(DataModel):
|
|
|
33
33
|
name = summary[0].get("name", "")
|
|
34
34
|
box = (
|
|
35
35
|
BBox.from_dict(summary[0]["box"], title=name)
|
|
36
|
-
if
|
|
36
|
+
if summary[0].get("box")
|
|
37
37
|
else BBox()
|
|
38
38
|
)
|
|
39
39
|
return YoloBBox(
|
|
@@ -69,7 +69,8 @@ class YoloBBoxes(DataModel):
|
|
|
69
69
|
cls.append(s["class"])
|
|
70
70
|
names.append(name)
|
|
71
71
|
confidence.append(s["confidence"])
|
|
72
|
-
|
|
72
|
+
if s.get("box"):
|
|
73
|
+
box.append(BBox.from_dict(s.get("box"), title=name))
|
|
73
74
|
return YoloBBoxes(
|
|
74
75
|
cls=cls,
|
|
75
76
|
name=names,
|
|
@@ -102,7 +103,7 @@ class YoloOBBox(DataModel):
|
|
|
102
103
|
name = summary[0].get("name", "")
|
|
103
104
|
box = (
|
|
104
105
|
OBBox.from_dict(summary[0]["box"], title=name)
|
|
105
|
-
if
|
|
106
|
+
if summary[0].get("box")
|
|
106
107
|
else OBBox()
|
|
107
108
|
)
|
|
108
109
|
return YoloOBBox(
|
|
@@ -138,7 +139,8 @@ class YoloOBBoxes(DataModel):
|
|
|
138
139
|
cls.append(s["class"])
|
|
139
140
|
names.append(name)
|
|
140
141
|
confidence.append(s["confidence"])
|
|
141
|
-
|
|
142
|
+
if s.get("box"):
|
|
143
|
+
box.append(OBBox.from_dict(s.get("box"), title=name))
|
|
142
144
|
return YoloOBBoxes(
|
|
143
145
|
cls=cls,
|
|
144
146
|
name=names,
|
|
@@ -58,12 +58,12 @@ class YoloPose(DataModel):
|
|
|
58
58
|
name = summary[0].get("name", "")
|
|
59
59
|
box = (
|
|
60
60
|
BBox.from_dict(summary[0]["box"], title=name)
|
|
61
|
-
if
|
|
61
|
+
if summary[0].get("box")
|
|
62
62
|
else BBox()
|
|
63
63
|
)
|
|
64
64
|
pose = (
|
|
65
65
|
Pose3D.from_dict(summary[0]["keypoints"])
|
|
66
|
-
if
|
|
66
|
+
if summary[0].get("keypoints")
|
|
67
67
|
else Pose3D()
|
|
68
68
|
)
|
|
69
69
|
return YoloPose(
|
|
@@ -102,8 +102,10 @@ class YoloPoses(DataModel):
|
|
|
102
102
|
cls.append(s["class"])
|
|
103
103
|
names.append(name)
|
|
104
104
|
confidence.append(s["confidence"])
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
if s.get("box"):
|
|
106
|
+
box.append(BBox.from_dict(s.get("box"), title=name))
|
|
107
|
+
if s.get("keypoints"):
|
|
108
|
+
pose.append(Pose3D.from_dict(s.get("keypoints")))
|
|
107
109
|
return YoloPoses(
|
|
108
110
|
cls=cls,
|
|
109
111
|
name=names,
|
|
@@ -36,12 +36,12 @@ class YoloSegment(DataModel):
|
|
|
36
36
|
name = summary[0].get("name", "")
|
|
37
37
|
box = (
|
|
38
38
|
BBox.from_dict(summary[0]["box"], title=name)
|
|
39
|
-
if
|
|
39
|
+
if summary[0].get("box")
|
|
40
40
|
else BBox()
|
|
41
41
|
)
|
|
42
42
|
segment = (
|
|
43
43
|
Segment.from_dict(summary[0]["segments"], title=name)
|
|
44
|
-
if
|
|
44
|
+
if summary[0].get("segments")
|
|
45
45
|
else Segment()
|
|
46
46
|
)
|
|
47
47
|
return YoloSegment(
|
|
@@ -80,8 +80,10 @@ class YoloSegments(DataModel):
|
|
|
80
80
|
cls.append(s["class"])
|
|
81
81
|
names.append(name)
|
|
82
82
|
confidence.append(s["confidence"])
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
if s.get("box"):
|
|
84
|
+
box.append(BBox.from_dict(s.get("box"), title=name))
|
|
85
|
+
if s.get("segments"):
|
|
86
|
+
segment.append(Segment.from_dict(s.get("segments"), title=name))
|
|
85
87
|
return YoloSegments(
|
|
86
88
|
cls=cls,
|
|
87
89
|
name=names,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: datachain
|
|
3
|
-
Version: 0.18.
|
|
3
|
+
Version: 0.18.5
|
|
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
|
|
@@ -23,7 +23,7 @@ Requires-Dist: tqdm
|
|
|
23
23
|
Requires-Dist: numpy<3,>=1
|
|
24
24
|
Requires-Dist: pandas>=2.0.0
|
|
25
25
|
Requires-Dist: packaging
|
|
26
|
-
Requires-Dist: pyarrow
|
|
26
|
+
Requires-Dist: pyarrow
|
|
27
27
|
Requires-Dist: typing-extensions
|
|
28
28
|
Requires-Dist: python-dateutil>=2
|
|
29
29
|
Requires-Dist: attrs>=21.3.0
|
|
@@ -38,7 +38,7 @@ Requires-Dist: sqlalchemy>=2
|
|
|
38
38
|
Requires-Dist: multiprocess==0.70.16
|
|
39
39
|
Requires-Dist: cloudpickle
|
|
40
40
|
Requires-Dist: orjson>=3.10.5
|
|
41
|
-
Requires-Dist: pydantic
|
|
41
|
+
Requires-Dist: pydantic
|
|
42
42
|
Requires-Dist: jmespath>=1.0
|
|
43
43
|
Requires-Dist: datamodel-code-generator>=0.25
|
|
44
44
|
Requires-Dist: Pillow<12,>=10.0.0
|
|
@@ -19,7 +19,7 @@ datachain/studio.py,sha256=1J2ANFVVA1ysPxBuLibQSnSXt0U9Vfgz9ZNGikYtWdk,11038
|
|
|
19
19
|
datachain/telemetry.py,sha256=0A4IOPPp9VlP5pyW9eBfaTK3YhHGzHl7dQudQjUAx9A,994
|
|
20
20
|
datachain/utils.py,sha256=DNqOi-Ydb7InyWvD9m7_yailxz6-YGpZzh00biQaHNo,15305
|
|
21
21
|
datachain/catalog/__init__.py,sha256=cMZzSz3VoUi-6qXSVaHYN-agxQuAcz2XSqnEPZ55crE,353
|
|
22
|
-
datachain/catalog/catalog.py,sha256=
|
|
22
|
+
datachain/catalog/catalog.py,sha256=J1MKOuoMSl5B0_XYGF5EjDPm7KCvOvllz8PXxt316Og,59352
|
|
23
23
|
datachain/catalog/datasource.py,sha256=IkGMh0Ttg6Q-9DWfU_H05WUnZepbGa28HYleECi6K7I,1353
|
|
24
24
|
datachain/catalog/loader.py,sha256=UXjYD6BNRoupPvkiz3-b04jepXhtLHCA4gzKFnXxOtQ,5987
|
|
25
25
|
datachain/cli/__init__.py,sha256=eKCyqT05OMESHXCC93iQdqzusBdk1ptqZbBeaEghkgo,8344
|
|
@@ -37,17 +37,17 @@ datachain/cli/parser/job.py,sha256=acdVYuTsqluRDI_FYhZ1ohjQcVtBj-taUm8y9tGb0_0,4
|
|
|
37
37
|
datachain/cli/parser/studio.py,sha256=Y-1OlQGecLVi9QofvWUfSlPd2ISyaESf7QFGZqGsrdw,3609
|
|
38
38
|
datachain/cli/parser/utils.py,sha256=rETdD-9Hq9A4OolgfT7jQw4aoawtbfmkdtH6E7nkhpI,2888
|
|
39
39
|
datachain/client/__init__.py,sha256=1kDpCPoibMXi1gExR4lTLc5pi-k6M5TANiwtXkPoLhU,49
|
|
40
|
-
datachain/client/azure.py,sha256=
|
|
40
|
+
datachain/client/azure.py,sha256=dM9rGHHmi40iT3FOcLP5iNo_1nS2exjmJH9U4PElW5A,3232
|
|
41
41
|
datachain/client/fileslice.py,sha256=bT7TYco1Qe3bqoc8aUkUZcPdPofJDHlryL5BsTn9xsY,3021
|
|
42
42
|
datachain/client/fsspec.py,sha256=UJ7PDq1F11gf7OMjfXYqzrS1GHL3FZctOwXI0S_LU74,13852
|
|
43
|
-
datachain/client/gcs.py,sha256=
|
|
43
|
+
datachain/client/gcs.py,sha256=ckdP7utmBfSDkj0GOhV_34itw5pN3DOD74hrWNKIcQg,5127
|
|
44
44
|
datachain/client/hf.py,sha256=posnI5WOKOMG1yY_ZiV9Orcd24QsUPKZlOXgJVLxxrM,1558
|
|
45
45
|
datachain/client/local.py,sha256=cGoCYflribzexiOe-Y1qbaE2fJRh-_EgQrfCSa0yK_E,4568
|
|
46
|
-
datachain/client/s3.py,sha256=
|
|
46
|
+
datachain/client/s3.py,sha256=bhlQGOVi0smKmLkkyO-Y1YR95u-aPim4bdkEj4wyhzU,7343
|
|
47
47
|
datachain/data_storage/__init__.py,sha256=9Wit-oe5P46V7CJQTD0BJ5MhOa2Y9h3ddJ4VWTe-Lec,273
|
|
48
48
|
datachain/data_storage/db_engine.py,sha256=n8ojCbvVMPY2e3SG8fUaaD0b9GkVfpl_Naa_6EiHfWg,3788
|
|
49
49
|
datachain/data_storage/job.py,sha256=9r0OGwh22bHNIvLHqg8_-eJSP1YYB-BN5HOla5TdCxw,402
|
|
50
|
-
datachain/data_storage/metastore.py,sha256=
|
|
50
|
+
datachain/data_storage/metastore.py,sha256=1PaRTQbL7kjcU1BVjiLjXJLrrLzQtUvpqLmm0pwc1rU,39882
|
|
51
51
|
datachain/data_storage/schema.py,sha256=asZYz1cg_WKfe2Q-k5W51E2z2CzHU5B4QEDZDMFr8yo,9346
|
|
52
52
|
datachain/data_storage/serializer.py,sha256=6G2YtOFqqDzJf1KbvZraKGXl2XHZyVml2krunWUum5o,927
|
|
53
53
|
datachain/data_storage/sqlite.py,sha256=bwZAB_NUMT2WMv5tPQnnLFA0P-PiQtxzSaQ1q6xDxOU,24590
|
|
@@ -57,16 +57,16 @@ datachain/fs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
57
57
|
datachain/fs/reference.py,sha256=A8McpXF0CqbXPqanXuvpKu50YLB3a2ZXA3YAPxtBXSM,914
|
|
58
58
|
datachain/fs/utils.py,sha256=s-FkTOCGBk-b6TT3toQH51s9608pofoFjUSTc1yy7oE,825
|
|
59
59
|
datachain/func/__init__.py,sha256=CjNLHfJkepdXdRZ6HjJBjNSIjOeFMuMkwPDaPUrM75g,1270
|
|
60
|
-
datachain/func/aggregate.py,sha256=
|
|
61
|
-
datachain/func/array.py,sha256=
|
|
60
|
+
datachain/func/aggregate.py,sha256=fmVEKf3MUR29dEgllGdtl6nG7Lwz-SiyA5X1EyRRNUk,12456
|
|
61
|
+
datachain/func/array.py,sha256=fz5NUIPkp_KZ7tadCqJQSSJwWMYXEfYn60QkG2epC3k,13627
|
|
62
62
|
datachain/func/base.py,sha256=wA0sBQAVyN9LPxoo7Ox83peS0zUVnyuKxukwAcjGLfY,534
|
|
63
|
-
datachain/func/conditional.py,sha256=
|
|
64
|
-
datachain/func/func.py,sha256=
|
|
65
|
-
datachain/func/numeric.py,sha256=
|
|
66
|
-
datachain/func/path.py,sha256=
|
|
67
|
-
datachain/func/random.py,sha256=
|
|
68
|
-
datachain/func/string.py,sha256=
|
|
69
|
-
datachain/func/window.py,sha256=
|
|
63
|
+
datachain/func/conditional.py,sha256=bzIZRSpVpe-lrHoWPTCA7bzZ-AHtR44BVM82hqD1pY0,9188
|
|
64
|
+
datachain/func/func.py,sha256=ARU6ifniVWR5a3vXynNDD42AATOBnuMIq66fQnDyTJc,17383
|
|
65
|
+
datachain/func/numeric.py,sha256=J6FgzuIAcS6B02Cm1qPnJdB6ut21jyBDVXSBrkZNZaQ,6978
|
|
66
|
+
datachain/func/path.py,sha256=9Jas35QhEtRai4l54hMqVvuJsqxHvOx88oo4vym1H_I,4077
|
|
67
|
+
datachain/func/random.py,sha256=t7jwXsI8-hy0qAdvjAntgzy-AHtTAfozlZ1CpKR-QZE,458
|
|
68
|
+
datachain/func/string.py,sha256=X9u4ip97U63RCaKRhMddoze7HgPiY3LbPRn9G06UWWo,7311
|
|
69
|
+
datachain/func/window.py,sha256=ImyRpc1QI8QUSPO7KdD60e_DPVo7Ja0G5kcm6BlyMcw,1584
|
|
70
70
|
datachain/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
71
|
datachain/lib/arrow.py,sha256=mFO_6wRqzpEzBhXf7Xn1aeLUvaiHcC6XQ-8as9sbcgY,10253
|
|
72
72
|
datachain/lib/clip.py,sha256=lm5CzVi4Cj1jVLEKvERKArb-egb9j1Ls-fwTItT6vlI,6150
|
|
@@ -99,7 +99,7 @@ datachain/lib/convert/values_to_tuples.py,sha256=j5yZMrVUH6W7b-7yUvdCTGI7JCUAYUO
|
|
|
99
99
|
datachain/lib/dc/__init__.py,sha256=HD0NYrdy44u6kkpvgGjJcvGz-UGTHui2azghcT8ZUg0,838
|
|
100
100
|
datachain/lib/dc/csv.py,sha256=q6a9BpapGwP6nwy6c5cklxQumep2fUp9l2LAjtTJr6s,4411
|
|
101
101
|
datachain/lib/dc/database.py,sha256=g5M6NjYR1T0vKte-abV-3Ejnm-HqxTIMir5cRi_SziE,6051
|
|
102
|
-
datachain/lib/dc/datachain.py,sha256=
|
|
102
|
+
datachain/lib/dc/datachain.py,sha256=5rR_QqG4vesq-x545ZTSFJDSb6Oc5CW4-ziQYD6DpW4,80993
|
|
103
103
|
datachain/lib/dc/datasets.py,sha256=G65leCuo_3bItmvjoV1wK0pzj7a2IQqe3xRsflpF3xM,10794
|
|
104
104
|
datachain/lib/dc/hf.py,sha256=PJl2wiLjdRsMz0SYbLT-6H8b-D5i2WjeH7li8HHOk_0,2145
|
|
105
105
|
datachain/lib/dc/json.py,sha256=ZUThPDAaP2gBFIL5vsQTwKBcuN_dhvC_O44wdDv0jEc,2683
|
|
@@ -116,9 +116,9 @@ datachain/model/pose.py,sha256=rjquA6M-I-Y30Xm6YSkGv1OY52hJZmR2AuxbIpE5uD0,3865
|
|
|
116
116
|
datachain/model/segment.py,sha256=NhcEYB_KVa0aLQYiZ4jEwkylH9QBLd8fZhmg6PVnx1Y,1967
|
|
117
117
|
datachain/model/utils.py,sha256=5elwCKleOO6CZM0IuWjFykPekrhc5m7V4jSIOcgGMms,6733
|
|
118
118
|
datachain/model/ultralytics/__init__.py,sha256=EvcNX9qUyxKXXlKCPpsXeRrabyXk5E9EkN-tyiYkfS4,750
|
|
119
|
-
datachain/model/ultralytics/bbox.py,sha256=
|
|
120
|
-
datachain/model/ultralytics/pose.py,sha256=
|
|
121
|
-
datachain/model/ultralytics/segment.py,sha256=
|
|
119
|
+
datachain/model/ultralytics/bbox.py,sha256=vxrqu7poIgPD0V2iuy26F74YCKr3s-CFKibPOAbGS40,4570
|
|
120
|
+
datachain/model/ultralytics/pose.py,sha256=pBlmt63Qe68FKmexHimUGlNbNOoOlMHXG4fzXZ9edh8,3185
|
|
121
|
+
datachain/model/ultralytics/segment.py,sha256=63bDCj43E6iZ0hFI5J6uQfksdCmjEp6sEm1XzVaE8pw,2986
|
|
122
122
|
datachain/query/__init__.py,sha256=7DhEIjAA8uZJfejruAVMZVcGFmvUpffuZJwgRqNwe-c,263
|
|
123
123
|
datachain/query/batch.py,sha256=-goxLpE0EUvaDHu66rstj53UnfHpYfBUGux8GSpJ93k,4306
|
|
124
124
|
datachain/query/dataset.py,sha256=3c3MAiIl7ZnCii_0dZA-Om73ornNMSKkna32JX3H05E,60587
|
|
@@ -153,9 +153,9 @@ datachain/sql/sqlite/vector.py,sha256=ncW4eu2FlJhrP_CIpsvtkUabZlQdl2D5Lgwy_cbfqR
|
|
|
153
153
|
datachain/toolkit/__init__.py,sha256=eQ58Q5Yf_Fgv1ZG0IO5dpB4jmP90rk8YxUWmPc1M2Bo,68
|
|
154
154
|
datachain/toolkit/split.py,sha256=ktGWzY4kyzjWyR86dhvzw-Zhl0lVk_LOX3NciTac6qo,2914
|
|
155
155
|
datachain/torch/__init__.py,sha256=gIS74PoEPy4TB3X6vx9nLO0Y3sLJzsA8ckn8pRWihJM,579
|
|
156
|
-
datachain-0.18.
|
|
157
|
-
datachain-0.18.
|
|
158
|
-
datachain-0.18.
|
|
159
|
-
datachain-0.18.
|
|
160
|
-
datachain-0.18.
|
|
161
|
-
datachain-0.18.
|
|
156
|
+
datachain-0.18.5.dist-info/licenses/LICENSE,sha256=8DnqK5yoPI_E50bEg_zsHKZHY2HqPy4rYN338BHQaRA,11344
|
|
157
|
+
datachain-0.18.5.dist-info/METADATA,sha256=nRjXtvxIMAGDnI5sLMewoVcqsRbn9jGWCZnmu2wzk1I,11319
|
|
158
|
+
datachain-0.18.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
159
|
+
datachain-0.18.5.dist-info/entry_points.txt,sha256=0GMJS6B_KWq0m3VT98vQI2YZodAMkn4uReZ_okga9R4,49
|
|
160
|
+
datachain-0.18.5.dist-info/top_level.txt,sha256=lZPpdU_2jJABLNIg2kvEOBi8PtsYikbN1OdMLHk8bTg,10
|
|
161
|
+
datachain-0.18.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|