datachain 0.26.0__py3-none-any.whl → 0.26.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/loader.py +4 -0
- datachain/func/__init__.py +2 -1
- datachain/func/conditional.py +34 -0
- datachain/lib/dc/datachain.py +102 -44
- datachain/lib/pytorch.py +4 -1
- datachain/lib/signal_schema.py +9 -4
- datachain/query/dataset.py +22 -0
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/METADATA +1 -1
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/RECORD +13 -13
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/WHEEL +0 -0
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/entry_points.txt +0 -0
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/licenses/LICENSE +0 -0
- {datachain-0.26.0.dist-info → datachain-0.26.1.dist-info}/top_level.txt +0 -0
datachain/catalog/loader.py
CHANGED
|
@@ -18,6 +18,7 @@ WAREHOUSE_IMPORT_PATH = "DATACHAIN_WAREHOUSE"
|
|
|
18
18
|
WAREHOUSE_ARG_PREFIX = "DATACHAIN_WAREHOUSE_ARG_"
|
|
19
19
|
DISTRIBUTED_IMPORT_PYTHONPATH = "DATACHAIN_DISTRIBUTED_PYTHONPATH"
|
|
20
20
|
DISTRIBUTED_IMPORT_PATH = "DATACHAIN_DISTRIBUTED"
|
|
21
|
+
DISTRIBUTED_DISABLED = "DATACHAIN_DISTRIBUTED_DISABLED"
|
|
21
22
|
|
|
22
23
|
IN_MEMORY_ERROR_MESSAGE = "In-memory is only supported on SQLite"
|
|
23
24
|
|
|
@@ -103,6 +104,9 @@ def get_warehouse(in_memory: bool = False) -> "AbstractWarehouse":
|
|
|
103
104
|
|
|
104
105
|
|
|
105
106
|
def get_udf_distributor_class() -> Optional[type["AbstractUDFDistributor"]]:
|
|
107
|
+
if os.environ.get(DISTRIBUTED_DISABLED) == "True":
|
|
108
|
+
return None
|
|
109
|
+
|
|
106
110
|
if not (distributed_import_path := os.environ.get(DISTRIBUTED_IMPORT_PATH)):
|
|
107
111
|
return None
|
|
108
112
|
|
datachain/func/__init__.py
CHANGED
|
@@ -16,7 +16,7 @@ from .aggregate import (
|
|
|
16
16
|
sum,
|
|
17
17
|
)
|
|
18
18
|
from .array import contains, cosine_distance, euclidean_distance, length, sip_hash_64
|
|
19
|
-
from .conditional import and_, case, greatest, ifelse, isnone, least, or_
|
|
19
|
+
from .conditional import and_, case, greatest, ifelse, isnone, least, not_, or_
|
|
20
20
|
from .numeric import bit_and, bit_hamming_distance, bit_or, bit_xor, int_hash_64
|
|
21
21
|
from .path import file_ext, file_stem, name, parent
|
|
22
22
|
from .random import rand
|
|
@@ -54,6 +54,7 @@ __all__ = [
|
|
|
54
54
|
"max",
|
|
55
55
|
"min",
|
|
56
56
|
"name",
|
|
57
|
+
"not_",
|
|
57
58
|
"or_",
|
|
58
59
|
"parent",
|
|
59
60
|
"path",
|
datachain/func/conditional.py
CHANGED
|
@@ -3,6 +3,7 @@ from typing import Optional, Union
|
|
|
3
3
|
from sqlalchemy import ColumnElement
|
|
4
4
|
from sqlalchemy import and_ as sql_and
|
|
5
5
|
from sqlalchemy import case as sql_case
|
|
6
|
+
from sqlalchemy import not_ as sql_not
|
|
6
7
|
from sqlalchemy import or_ as sql_or
|
|
7
8
|
|
|
8
9
|
from datachain.lib.utils import DataChainParamsError
|
|
@@ -288,3 +289,36 @@ def and_(*args: Union[ColumnElement, Func]) -> Func:
|
|
|
288
289
|
func_args.append(arg)
|
|
289
290
|
|
|
290
291
|
return Func("and", inner=sql_and, cols=cols, args=func_args, result_type=bool)
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
def not_(arg: Union[ColumnElement, Func]) -> Func:
|
|
295
|
+
"""
|
|
296
|
+
Returns the function that produces NOT of the given expressions.
|
|
297
|
+
|
|
298
|
+
Args:
|
|
299
|
+
arg (ColumnElement | Func): The expression for NOT statement.
|
|
300
|
+
If a string is provided, it is assumed to be the name of the column.
|
|
301
|
+
If a Column is provided, it is assumed to be a column in the dataset.
|
|
302
|
+
If a Func is provided, it is assumed to be a function returning a value.
|
|
303
|
+
|
|
304
|
+
Returns:
|
|
305
|
+
Func: A `Func` object that represents the NOT function.
|
|
306
|
+
|
|
307
|
+
Example:
|
|
308
|
+
```py
|
|
309
|
+
dc.mutate(
|
|
310
|
+
test=not_(C("value") == 5)
|
|
311
|
+
)
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
Notes:
|
|
315
|
+
- The result column will always be of type bool.
|
|
316
|
+
"""
|
|
317
|
+
cols, func_args = [], []
|
|
318
|
+
|
|
319
|
+
if isinstance(arg, (str, Func)):
|
|
320
|
+
cols.append(arg)
|
|
321
|
+
else:
|
|
322
|
+
func_args.append(arg)
|
|
323
|
+
|
|
324
|
+
return Func("not", inner=sql_not, cols=cols, args=func_args, result_type=bool)
|
datachain/lib/dc/datachain.py
CHANGED
|
@@ -33,7 +33,13 @@ from datachain.func import literal
|
|
|
33
33
|
from datachain.func.base import Function
|
|
34
34
|
from datachain.func.func import Func
|
|
35
35
|
from datachain.lib.convert.python_to_sql import python_to_sql
|
|
36
|
-
from datachain.lib.data_model import
|
|
36
|
+
from datachain.lib.data_model import (
|
|
37
|
+
DataModel,
|
|
38
|
+
DataType,
|
|
39
|
+
DataValue,
|
|
40
|
+
StandardType,
|
|
41
|
+
dict_to_data_model,
|
|
42
|
+
)
|
|
37
43
|
from datachain.lib.file import (
|
|
38
44
|
EXPORT_FILES_MAX_THREADS,
|
|
39
45
|
ArrowRow,
|
|
@@ -360,14 +366,6 @@ class DataChain:
|
|
|
360
366
|
self._settings = settings if settings else Settings()
|
|
361
367
|
return self
|
|
362
368
|
|
|
363
|
-
def reset_schema(self, signals_schema: SignalSchema) -> "Self":
|
|
364
|
-
self.signals_schema = signals_schema
|
|
365
|
-
return self
|
|
366
|
-
|
|
367
|
-
def add_schema(self, signals_schema: SignalSchema) -> "Self":
|
|
368
|
-
self.signals_schema |= signals_schema
|
|
369
|
-
return self
|
|
370
|
-
|
|
371
369
|
@classmethod
|
|
372
370
|
def from_storage(
|
|
373
371
|
cls,
|
|
@@ -958,7 +956,7 @@ class DataChain:
|
|
|
958
956
|
query_func = getattr(self._query, method_name)
|
|
959
957
|
|
|
960
958
|
new_schema = self.signals_schema.resolve(*args)
|
|
961
|
-
columns =
|
|
959
|
+
columns = new_schema.db_signals(as_columns=True)
|
|
962
960
|
return query_func(*columns, **kwargs)
|
|
963
961
|
|
|
964
962
|
@resolve_columns
|
|
@@ -1445,10 +1443,6 @@ class DataChain:
|
|
|
1445
1443
|
remove_prefetched=remove_prefetched,
|
|
1446
1444
|
)
|
|
1447
1445
|
|
|
1448
|
-
def remove_file_signals(self) -> "Self":
|
|
1449
|
-
schema = self.signals_schema.clone_without_file_signals()
|
|
1450
|
-
return self.select(*schema.values.keys())
|
|
1451
|
-
|
|
1452
1446
|
@delta_disabled
|
|
1453
1447
|
def merge(
|
|
1454
1448
|
self,
|
|
@@ -1803,12 +1797,19 @@ class DataChain:
|
|
|
1803
1797
|
)
|
|
1804
1798
|
return read_pandas(*args, **kwargs)
|
|
1805
1799
|
|
|
1806
|
-
def to_pandas(
|
|
1800
|
+
def to_pandas(
|
|
1801
|
+
self,
|
|
1802
|
+
flatten: bool = False,
|
|
1803
|
+
include_hidden: bool = True,
|
|
1804
|
+
) -> "pd.DataFrame":
|
|
1807
1805
|
"""Return a pandas DataFrame from the chain.
|
|
1808
1806
|
|
|
1809
1807
|
Parameters:
|
|
1810
|
-
flatten
|
|
1811
|
-
include_hidden
|
|
1808
|
+
flatten: Whether to use a multiindex or flatten column names.
|
|
1809
|
+
include_hidden: Whether to include hidden columns.
|
|
1810
|
+
|
|
1811
|
+
Returns:
|
|
1812
|
+
pd.DataFrame: A pandas DataFrame representation of the chain.
|
|
1812
1813
|
"""
|
|
1813
1814
|
import pandas as pd
|
|
1814
1815
|
|
|
@@ -1826,19 +1827,19 @@ class DataChain:
|
|
|
1826
1827
|
def show(
|
|
1827
1828
|
self,
|
|
1828
1829
|
limit: int = 20,
|
|
1829
|
-
flatten=False,
|
|
1830
|
-
transpose=False,
|
|
1831
|
-
truncate=True,
|
|
1832
|
-
include_hidden=False,
|
|
1830
|
+
flatten: bool = False,
|
|
1831
|
+
transpose: bool = False,
|
|
1832
|
+
truncate: bool = True,
|
|
1833
|
+
include_hidden: bool = False,
|
|
1833
1834
|
) -> None:
|
|
1834
1835
|
"""Show a preview of the chain results.
|
|
1835
1836
|
|
|
1836
1837
|
Parameters:
|
|
1837
|
-
limit
|
|
1838
|
-
flatten
|
|
1839
|
-
transpose
|
|
1840
|
-
truncate
|
|
1841
|
-
include_hidden
|
|
1838
|
+
limit: How many rows to show.
|
|
1839
|
+
flatten: Whether to use a multiindex or flatten column names.
|
|
1840
|
+
transpose: Whether to transpose rows and columns.
|
|
1841
|
+
truncate: Whether or not to truncate the contents of columns.
|
|
1842
|
+
include_hidden: Whether to include hidden columns.
|
|
1842
1843
|
"""
|
|
1843
1844
|
import pandas as pd
|
|
1844
1845
|
|
|
@@ -2268,21 +2269,73 @@ class DataChain:
|
|
|
2268
2269
|
)
|
|
2269
2270
|
return read_records(*args, **kwargs)
|
|
2270
2271
|
|
|
2271
|
-
def sum(self,
|
|
2272
|
-
"""Compute the sum of a column.
|
|
2273
|
-
|
|
2272
|
+
def sum(self, col: str) -> StandardType: # type: ignore[override]
|
|
2273
|
+
"""Compute the sum of a column.
|
|
2274
|
+
|
|
2275
|
+
Parameters:
|
|
2276
|
+
col: The column to compute the sum for.
|
|
2277
|
+
|
|
2278
|
+
Returns:
|
|
2279
|
+
The sum of the column values.
|
|
2280
|
+
|
|
2281
|
+
Example:
|
|
2282
|
+
```py
|
|
2283
|
+
total_size = chain.sum("file.size")
|
|
2284
|
+
print(f"Total size: {total_size}")
|
|
2285
|
+
```
|
|
2286
|
+
"""
|
|
2287
|
+
return self._extend_to_data_model("sum", col)
|
|
2288
|
+
|
|
2289
|
+
def avg(self, col: str) -> StandardType: # type: ignore[override]
|
|
2290
|
+
"""Compute the average of a column.
|
|
2291
|
+
|
|
2292
|
+
Parameters:
|
|
2293
|
+
col: The column to compute the average for.
|
|
2294
|
+
|
|
2295
|
+
Returns:
|
|
2296
|
+
The average of the column values.
|
|
2297
|
+
|
|
2298
|
+
Example:
|
|
2299
|
+
```py
|
|
2300
|
+
average_size = chain.avg("file.size")
|
|
2301
|
+
print(f"Average size: {average_size}")
|
|
2302
|
+
```
|
|
2303
|
+
"""
|
|
2304
|
+
return self._extend_to_data_model("avg", col)
|
|
2305
|
+
|
|
2306
|
+
def min(self, col: str) -> StandardType: # type: ignore[override]
|
|
2307
|
+
"""Compute the minimum of a column.
|
|
2308
|
+
|
|
2309
|
+
Parameters:
|
|
2310
|
+
col: The column to compute the minimum for.
|
|
2311
|
+
|
|
2312
|
+
Returns:
|
|
2313
|
+
The minimum value in the column.
|
|
2314
|
+
|
|
2315
|
+
Example:
|
|
2316
|
+
```py
|
|
2317
|
+
min_size = chain.min("file.size")
|
|
2318
|
+
print(f"Minimum size: {min_size}")
|
|
2319
|
+
```
|
|
2320
|
+
"""
|
|
2321
|
+
return self._extend_to_data_model("min", col)
|
|
2322
|
+
|
|
2323
|
+
def max(self, col: str) -> StandardType: # type: ignore[override]
|
|
2324
|
+
"""Compute the maximum of a column.
|
|
2274
2325
|
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
return self._extend_to_data_model("avg", fr)
|
|
2326
|
+
Parameters:
|
|
2327
|
+
col: The column to compute the maximum for.
|
|
2278
2328
|
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
return self._extend_to_data_model("min", fr)
|
|
2329
|
+
Returns:
|
|
2330
|
+
The maximum value in the column.
|
|
2282
2331
|
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2332
|
+
Example:
|
|
2333
|
+
```py
|
|
2334
|
+
max_size = chain.max("file.size")
|
|
2335
|
+
print(f"Maximum size: {max_size}")
|
|
2336
|
+
```
|
|
2337
|
+
"""
|
|
2338
|
+
return self._extend_to_data_model("max", col)
|
|
2286
2339
|
|
|
2287
2340
|
def setup(self, **kwargs) -> "Self":
|
|
2288
2341
|
"""Setup variables to pass to UDF functions.
|
|
@@ -2393,14 +2446,15 @@ class DataChain:
|
|
|
2393
2446
|
"""Shuffle the rows of the chain deterministically."""
|
|
2394
2447
|
return self.order_by("sys.rand")
|
|
2395
2448
|
|
|
2396
|
-
def sample(self, n) -> "Self":
|
|
2449
|
+
def sample(self, n: int) -> "Self":
|
|
2397
2450
|
"""Return a random sample from the chain.
|
|
2398
2451
|
|
|
2399
2452
|
Parameters:
|
|
2400
|
-
n
|
|
2453
|
+
n: Number of samples to draw.
|
|
2401
2454
|
|
|
2402
|
-
|
|
2403
|
-
|
|
2455
|
+
Note:
|
|
2456
|
+
Samples are not deterministic, and streamed/paginated queries or
|
|
2457
|
+
multiple workers will draw samples with replacement.
|
|
2404
2458
|
"""
|
|
2405
2459
|
return self._evolve(query=self._query.sample(n))
|
|
2406
2460
|
|
|
@@ -2507,6 +2561,10 @@ class DataChain:
|
|
|
2507
2561
|
def chunk(self, index: int, total: int) -> "Self":
|
|
2508
2562
|
"""Split a chain into smaller chunks for e.g. parallelization.
|
|
2509
2563
|
|
|
2564
|
+
Parameters:
|
|
2565
|
+
index: The index of the chunk (0-indexed).
|
|
2566
|
+
total: The total number of chunks.
|
|
2567
|
+
|
|
2510
2568
|
Example:
|
|
2511
2569
|
```py
|
|
2512
2570
|
import datachain as dc
|
|
@@ -2526,7 +2584,7 @@ class DataChain:
|
|
|
2526
2584
|
"""Returns a list of rows of values, optionally limited to the specified
|
|
2527
2585
|
columns.
|
|
2528
2586
|
|
|
2529
|
-
|
|
2587
|
+
Parameters:
|
|
2530
2588
|
*cols: Limit to the specified columns. By default, all columns are selected.
|
|
2531
2589
|
|
|
2532
2590
|
Returns:
|
|
@@ -2556,7 +2614,7 @@ class DataChain:
|
|
|
2556
2614
|
def to_values(self, col: str) -> list[DataValue]:
|
|
2557
2615
|
"""Returns a flat list of values from a single column.
|
|
2558
2616
|
|
|
2559
|
-
|
|
2617
|
+
Parameters:
|
|
2560
2618
|
col: The name of the column to extract values from.
|
|
2561
2619
|
|
|
2562
2620
|
Returns:
|
datachain/lib/pytorch.py
CHANGED
|
@@ -125,7 +125,10 @@ class PytorchDataset(IterableDataset):
|
|
|
125
125
|
ds = read_dataset(
|
|
126
126
|
name=self.name, version=self.version, session=session
|
|
127
127
|
).settings(cache=self.cache, prefetch=self.prefetch)
|
|
128
|
-
|
|
128
|
+
|
|
129
|
+
# remove file signals from dataset
|
|
130
|
+
schema = ds.signals_schema.clone_without_file_signals()
|
|
131
|
+
ds = ds.select(*schema.values.keys())
|
|
129
132
|
|
|
130
133
|
if self.num_samples > 0:
|
|
131
134
|
ds = ds.sample(self.num_samples)
|
datachain/lib/signal_schema.py
CHANGED
|
@@ -610,20 +610,25 @@ class SignalSchema:
|
|
|
610
610
|
return SignalSchema(schema)
|
|
611
611
|
|
|
612
612
|
def _find_in_tree(self, path: list[str]) -> DataType:
|
|
613
|
+
if val := self.tree.get(".".join(path)):
|
|
614
|
+
# If the path is a single string, we can directly access it
|
|
615
|
+
# without traversing the tree.
|
|
616
|
+
return val[0]
|
|
617
|
+
|
|
613
618
|
curr_tree = self.tree
|
|
614
619
|
curr_type = None
|
|
615
620
|
i = 0
|
|
616
621
|
while curr_tree is not None and i < len(path):
|
|
617
622
|
if val := curr_tree.get(path[i]):
|
|
618
623
|
curr_type, curr_tree = val
|
|
619
|
-
elif i == 0 and len(path) > 1 and (val := curr_tree.get(".".join(path))):
|
|
620
|
-
curr_type, curr_tree = val
|
|
621
|
-
break
|
|
622
624
|
else:
|
|
623
625
|
curr_type = None
|
|
626
|
+
break
|
|
624
627
|
i += 1
|
|
625
628
|
|
|
626
|
-
if curr_type is None:
|
|
629
|
+
if curr_type is None or i < len(path):
|
|
630
|
+
# If we reached the end of the path and didn't find a type,
|
|
631
|
+
# or if we didn't traverse the entire path, raise an error.
|
|
627
632
|
raise SignalResolvingError(path, "is not found")
|
|
628
633
|
|
|
629
634
|
return curr_type
|
datachain/query/dataset.py
CHANGED
|
@@ -559,7 +559,13 @@ class UDFStep(Step, ABC):
|
|
|
559
559
|
"""
|
|
560
560
|
Create temporary table with group by partitions.
|
|
561
561
|
"""
|
|
562
|
+
# Check if partition_by is set, we need it to create partitions.
|
|
562
563
|
assert self.partition_by is not None
|
|
564
|
+
# Check if sys__id is in the query, we need it to be able to join
|
|
565
|
+
# the partition table with the udf table later.
|
|
566
|
+
assert any(c.name == "sys__id" for c in query.selected_columns), (
|
|
567
|
+
"Query must have sys__id column to use partitioning."
|
|
568
|
+
)
|
|
563
569
|
|
|
564
570
|
if isinstance(self.partition_by, (list, tuple, GeneratorType)):
|
|
565
571
|
list_partition_by = list(self.partition_by)
|
|
@@ -606,6 +612,22 @@ class UDFStep(Step, ABC):
|
|
|
606
612
|
|
|
607
613
|
# Apply partitioning if needed.
|
|
608
614
|
if self.partition_by is not None:
|
|
615
|
+
if not any(c.name == "sys__id" for c in query.selected_columns):
|
|
616
|
+
# If sys__id is not in the query, we need to create a temp table
|
|
617
|
+
# to hold the query results, so we can join it with the
|
|
618
|
+
# partition table later.
|
|
619
|
+
columns = [
|
|
620
|
+
c if isinstance(c, Column) else Column(c.name, c.type)
|
|
621
|
+
for c in query.subquery().columns
|
|
622
|
+
]
|
|
623
|
+
temp_table = self.catalog.warehouse.create_dataset_rows_table(
|
|
624
|
+
self.catalog.warehouse.temp_table_name(),
|
|
625
|
+
columns=columns,
|
|
626
|
+
)
|
|
627
|
+
temp_tables.append(temp_table.name)
|
|
628
|
+
self.catalog.warehouse.copy_table(temp_table, query)
|
|
629
|
+
_query = query = temp_table.select()
|
|
630
|
+
|
|
609
631
|
partition_tbl = self.create_partitions_table(query)
|
|
610
632
|
temp_tables.append(partition_tbl.name)
|
|
611
633
|
query = query.outerjoin(
|
|
@@ -23,7 +23,7 @@ datachain/utils.py,sha256=DNqOi-Ydb7InyWvD9m7_yailxz6-YGpZzh00biQaHNo,15305
|
|
|
23
23
|
datachain/catalog/__init__.py,sha256=cMZzSz3VoUi-6qXSVaHYN-agxQuAcz2XSqnEPZ55crE,353
|
|
24
24
|
datachain/catalog/catalog.py,sha256=QTWCXy75iWo-0MCXyfV_WbsKeZ1fpLpvL8d60rxn1ws,65528
|
|
25
25
|
datachain/catalog/datasource.py,sha256=IkGMh0Ttg6Q-9DWfU_H05WUnZepbGa28HYleECi6K7I,1353
|
|
26
|
-
datachain/catalog/loader.py,sha256=
|
|
26
|
+
datachain/catalog/loader.py,sha256=B2cps5coFE4MBttM-j8cs7JgNVPjnHKF4Gx1s2fJrxw,6119
|
|
27
27
|
datachain/cli/__init__.py,sha256=WvBqnwjG8Wp9xGCn-4eqfoZ3n7Sj1HJemCi4MayJh_c,8221
|
|
28
28
|
datachain/cli/utils.py,sha256=wrLnAh7Wx8O_ojZE8AE4Lxn5WoxHbOj7as8NWlLAA74,3036
|
|
29
29
|
datachain/cli/commands/__init__.py,sha256=zp3bYIioO60x_X04A4-IpZqSYVnpwOa1AdERQaRlIhI,493
|
|
@@ -58,11 +58,11 @@ datachain/diff/__init__.py,sha256=-OFZzgOplqO84iWgGY7kfe60NXaWR9JRIh9T-uJboAM,96
|
|
|
58
58
|
datachain/fs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
59
59
|
datachain/fs/reference.py,sha256=A8McpXF0CqbXPqanXuvpKu50YLB3a2ZXA3YAPxtBXSM,914
|
|
60
60
|
datachain/fs/utils.py,sha256=s-FkTOCGBk-b6TT3toQH51s9608pofoFjUSTc1yy7oE,825
|
|
61
|
-
datachain/func/__init__.py,sha256=
|
|
61
|
+
datachain/func/__init__.py,sha256=9K2MEC1NclY_zWuqevfEUOcrSE26cXDVnGqhNTj4lF8,1288
|
|
62
62
|
datachain/func/aggregate.py,sha256=fmVEKf3MUR29dEgllGdtl6nG7Lwz-SiyA5X1EyRRNUk,12456
|
|
63
63
|
datachain/func/array.py,sha256=fz5NUIPkp_KZ7tadCqJQSSJwWMYXEfYn60QkG2epC3k,13627
|
|
64
64
|
datachain/func/base.py,sha256=wA0sBQAVyN9LPxoo7Ox83peS0zUVnyuKxukwAcjGLfY,534
|
|
65
|
-
datachain/func/conditional.py,sha256=
|
|
65
|
+
datachain/func/conditional.py,sha256=9YYurD_PBMyf5rR9dj2gLv-Lo7UhYfHW6EtrUErVpz8,10165
|
|
66
66
|
datachain/func/func.py,sha256=fpslnn4edr0dH3mD8BSTndRFJiiVZvbJoBJV6HkHMqw,17400
|
|
67
67
|
datachain/func/numeric.py,sha256=J6FgzuIAcS6B02Cm1qPnJdB6ut21jyBDVXSBrkZNZaQ,6978
|
|
68
68
|
datachain/func/path.py,sha256=9Jas35QhEtRai4l54hMqVvuJsqxHvOx88oo4vym1H_I,4077
|
|
@@ -84,9 +84,9 @@ datachain/lib/meta_formats.py,sha256=zdyg6XLk3QIsSk3I7s0Ez5kaCJSlE3uq7JiGxf7UwtU
|
|
|
84
84
|
datachain/lib/model_store.py,sha256=dkL2rcT5ag-kbgkhQPL_byEs-TCYr29qvdltroL5NxM,2734
|
|
85
85
|
datachain/lib/namespaces.py,sha256=it52UbbwB8dzhesO2pMs_nThXiPQ1Ph9sD9I3GQkg5s,2099
|
|
86
86
|
datachain/lib/projects.py,sha256=8lN0qV8czX1LGtWURCUvRlSJk-RpO9w9Rra_pOZus6g,2595
|
|
87
|
-
datachain/lib/pytorch.py,sha256=
|
|
87
|
+
datachain/lib/pytorch.py,sha256=S-st2SAczYut13KMf6eSqP_OQ8otWI5TRmzhK5fN3k0,7828
|
|
88
88
|
datachain/lib/settings.py,sha256=9wi0FoHxRxNiyn99pR28IYsMkoo47jQxeXuObQr2Ar0,2929
|
|
89
|
-
datachain/lib/signal_schema.py,sha256=
|
|
89
|
+
datachain/lib/signal_schema.py,sha256=tOWcWEG0ZwiU0qxywEYs3qkTexQQHmzg28wZ1CJGyEI,38552
|
|
90
90
|
datachain/lib/tar.py,sha256=MLcVjzIgBqRuJacCNpZ6kwSZNq1i2tLyROc8PVprHsA,999
|
|
91
91
|
datachain/lib/text.py,sha256=UNHm8fhidk7wdrWqacEWaA6I9ykfYqarQ2URby7jc7M,1261
|
|
92
92
|
datachain/lib/udf.py,sha256=nkcB3HNtSteUspwsGmOKyy3mH2F-Sfo6iW64-Ep47-I,17299
|
|
@@ -104,7 +104,7 @@ datachain/lib/convert/values_to_tuples.py,sha256=j5yZMrVUH6W7b-7yUvdCTGI7JCUAYUO
|
|
|
104
104
|
datachain/lib/dc/__init__.py,sha256=TFci5HTvYGjBesNUxDAnXaX36PnzPEUSn5a6JxB9o0U,872
|
|
105
105
|
datachain/lib/dc/csv.py,sha256=q6a9BpapGwP6nwy6c5cklxQumep2fUp9l2LAjtTJr6s,4411
|
|
106
106
|
datachain/lib/dc/database.py,sha256=g5M6NjYR1T0vKte-abV-3Ejnm-HqxTIMir5cRi_SziE,6051
|
|
107
|
-
datachain/lib/dc/datachain.py,sha256=
|
|
107
|
+
datachain/lib/dc/datachain.py,sha256=ap54lcuj71tvp0zX1jiFFiEWvA5UPeyYJRJkd2APmlI,92897
|
|
108
108
|
datachain/lib/dc/datasets.py,sha256=P6CIJizD2IYFwOQG5D3VbQRjDmUiRH0ysdtb551Xdm8,15098
|
|
109
109
|
datachain/lib/dc/hf.py,sha256=PJl2wiLjdRsMz0SYbLT-6H8b-D5i2WjeH7li8HHOk_0,2145
|
|
110
110
|
datachain/lib/dc/json.py,sha256=dNijfJ-H92vU3soyR7X1IiDrWhm6yZIGG3bSnZkPdAE,2733
|
|
@@ -126,7 +126,7 @@ datachain/model/ultralytics/pose.py,sha256=pBlmt63Qe68FKmexHimUGlNbNOoOlMHXG4fzX
|
|
|
126
126
|
datachain/model/ultralytics/segment.py,sha256=63bDCj43E6iZ0hFI5J6uQfksdCmjEp6sEm1XzVaE8pw,2986
|
|
127
127
|
datachain/query/__init__.py,sha256=7DhEIjAA8uZJfejruAVMZVcGFmvUpffuZJwgRqNwe-c,263
|
|
128
128
|
datachain/query/batch.py,sha256=-goxLpE0EUvaDHu66rstj53UnfHpYfBUGux8GSpJ93k,4306
|
|
129
|
-
datachain/query/dataset.py,sha256=
|
|
129
|
+
datachain/query/dataset.py,sha256=cYNrg1QyrZpO-oup3mqmSYHUvgEYBKe8RgkVbyQa6p0,62777
|
|
130
130
|
datachain/query/dispatch.py,sha256=A0nPxn6mEN5d9dDo6S8m16Ji_9IvJLXrgF2kqXdi4fs,15546
|
|
131
131
|
datachain/query/metrics.py,sha256=DOK5HdNVaRugYPjl8qnBONvTkwjMloLqAr7Mi3TjCO0,858
|
|
132
132
|
datachain/query/params.py,sha256=O_j89mjYRLOwWNhYZl-z7mi-rkdP7WyFmaDufsdTryE,863
|
|
@@ -158,9 +158,9 @@ datachain/sql/sqlite/vector.py,sha256=ncW4eu2FlJhrP_CIpsvtkUabZlQdl2D5Lgwy_cbfqR
|
|
|
158
158
|
datachain/toolkit/__init__.py,sha256=eQ58Q5Yf_Fgv1ZG0IO5dpB4jmP90rk8YxUWmPc1M2Bo,68
|
|
159
159
|
datachain/toolkit/split.py,sha256=ktGWzY4kyzjWyR86dhvzw-Zhl0lVk_LOX3NciTac6qo,2914
|
|
160
160
|
datachain/torch/__init__.py,sha256=gIS74PoEPy4TB3X6vx9nLO0Y3sLJzsA8ckn8pRWihJM,579
|
|
161
|
-
datachain-0.26.
|
|
162
|
-
datachain-0.26.
|
|
163
|
-
datachain-0.26.
|
|
164
|
-
datachain-0.26.
|
|
165
|
-
datachain-0.26.
|
|
166
|
-
datachain-0.26.
|
|
161
|
+
datachain-0.26.1.dist-info/licenses/LICENSE,sha256=8DnqK5yoPI_E50bEg_zsHKZHY2HqPy4rYN338BHQaRA,11344
|
|
162
|
+
datachain-0.26.1.dist-info/METADATA,sha256=C0Pb9d9IcJ6oOPXihcyEhTc_Rf7Fe4pP_anKhC3JfeU,13543
|
|
163
|
+
datachain-0.26.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
164
|
+
datachain-0.26.1.dist-info/entry_points.txt,sha256=0GMJS6B_KWq0m3VT98vQI2YZodAMkn4uReZ_okga9R4,49
|
|
165
|
+
datachain-0.26.1.dist-info/top_level.txt,sha256=lZPpdU_2jJABLNIg2kvEOBi8PtsYikbN1OdMLHk8bTg,10
|
|
166
|
+
datachain-0.26.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|