corvic-engine 0.3.0rc67__cp38-abi3-win_amd64.whl → 0.3.0rc68__cp38-abi3-win_amd64.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.
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
 
5
5
  import dataclasses
6
6
  from collections.abc import Mapping, Sequence
7
+ from concurrent.futures import ThreadPoolExecutor
7
8
  from typing import Any, Protocol
8
9
 
9
10
  import pyarrow as pa
@@ -55,7 +56,6 @@ class ExecutionContext:
55
56
  """Description of the computation to be completed."""
56
57
 
57
58
  tables_to_compute: list[TableComputeContext]
58
- room_id: orm.RoomID
59
59
  """A list of tables that the caller wants in addition to table_to_compute.
60
60
 
61
61
  This has advantages over multiple invocations of OpGraphExecutor when those
@@ -63,6 +63,8 @@ class ExecutionContext:
63
63
  they are nodes in the tables_to_compute op graph.
64
64
  """
65
65
 
66
+ room_id: orm.RoomID
67
+
66
68
 
67
69
  class TableComputeResult(Protocol):
68
70
  """Opaque container for the results of computing an OpGraph."""
@@ -107,8 +109,10 @@ class ExecutionResult(Protocol):
107
109
  class OpGraphExecutor(Protocol):
108
110
  """Execute table op graphs."""
109
111
 
110
- def execute(
111
- self, context: ExecutionContext
112
+ async def execute(
113
+ self,
114
+ context: ExecutionContext,
115
+ worker_threads: ThreadPoolExecutor | None = None,
112
116
  ) -> (
113
117
  Ok[ExecutionResult]
114
118
  | InvalidArgumentError
corvic/system/storage.py CHANGED
@@ -5,9 +5,7 @@ from __future__ import annotations
5
5
  import contextlib
6
6
  import uuid
7
7
  from collections.abc import Iterator
8
- from typing import Any, BinaryIO, Final, Literal
9
-
10
- from typing_extensions import Protocol
8
+ from typing import Any, BinaryIO, Final, Literal, Protocol
11
9
 
12
10
  from corvic import orm
13
11
  from corvic.result import Error
corvic/table/table.py CHANGED
@@ -11,6 +11,7 @@ from typing import (
11
11
  Final,
12
12
  Literal,
13
13
  Protocol,
14
+ Self,
14
15
  TypeAlias,
15
16
  TypeVar,
16
17
  cast,
@@ -22,7 +23,6 @@ import pyarrow as pa
22
23
  import pyarrow.parquet as pq
23
24
  import structlog
24
25
  from google.protobuf import struct_pb2
25
- from typing_extensions import Self
26
26
 
27
27
  from corvic import op_graph, orm
28
28
  from corvic.op_graph import Encoder, Schema
@@ -378,7 +378,7 @@ class Table:
378
378
  def to_bytes(self):
379
379
  return self.op_graph.to_bytes()
380
380
 
381
- def to_polars(
381
+ async def to_polars(
382
382
  self, room_id: orm.RoomID, *, flatten_single_field: bool = False
383
383
  ) -> (
384
384
  Ok[Iterable[pl.DataFrame]]
@@ -387,7 +387,7 @@ class Table:
387
387
  | ResourceExhaustedError
388
388
  ):
389
389
  """Stream over the view as a series of Polars DataFrames."""
390
- match self.to_batches(room_id=room_id):
390
+ match await self.to_batches(room_id=room_id):
391
391
  case Ok(batch_reader):
392
392
  pass
393
393
  case err:
@@ -456,7 +456,7 @@ class Table:
456
456
  ).unwrap_or_raise(),
457
457
  )
458
458
 
459
- def to_batches(
459
+ async def to_batches(
460
460
  self, room_id: orm.RoomID
461
461
  ) -> (
462
462
  Ok[pa.RecordBatchReader]
@@ -477,7 +477,7 @@ class Table:
477
477
  )
478
478
  ],
479
479
  )
480
- return self.client.executor.execute(context).map(
480
+ return (await self.client.executor.execute(context)).map(
481
481
  lambda result: result.tables[0].to_batch_reader()
482
482
  )
483
483
 
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: corvic-engine
3
- Version: 0.3.0rc67
3
+ Version: 0.3.0rc68
4
4
  Classifier: Environment :: Console
5
5
  Classifier: License :: Other/Proprietary License
6
6
  Classifier: Programming Language :: Python :: Implementation :: CPython
7
7
  Classifier: Programming Language :: Python :: Implementation :: PyPy
8
- Classifier: Programming Language :: Python :: 3.10
9
8
  Classifier: Programming Language :: Python :: 3.11
10
9
  Classifier: Programming Language :: Python :: 3.12
11
10
  Classifier: Programming Language :: Python :: 3.13
@@ -35,8 +34,8 @@ Provides-Extra: telemetry
35
34
  License-File: LICENSE
36
35
  Summary: Seamless embedding generation and retrieval.
37
36
  Author-email: Corvic Team <contact@corvic.ai>
38
- Requires-Python: >=3.10
37
+ Requires-Python: >=3.11
39
38
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
40
39
 
41
- # Corvic Engine [![CI](https://github.com/corvicai/corvic-engine/actions/workflows/ci.yaml/badge.svg)](https://github.com/corvicai/corvic-engine/actions/workflows/ci.yaml) [![Python Version](https://img.shields.io/badge/python-3.10%20|%203.11%20|%203.12-blue)](https://www.python.org/downloads/release/python-3110/)
40
+ # Corvic Engine [![CI](https://github.com/corvicai/corvic-engine/actions/workflows/ci.yaml/badge.svg)](https://github.com/corvicai/corvic-engine/actions/workflows/ci.yaml) [![Python Version](https://img.shields.io/badge/python-3.11%20|%203.12-blue)](https://www.python.org/downloads/release/python-3110/)
42
41
 
@@ -1,6 +1,6 @@
1
- corvic_engine-0.3.0rc67.dist-info/METADATA,sha256=UOjVLRZTZZ-hf1vcX5RoaIb3BFBfUtFa0HNi65gwoQ0,1876
2
- corvic_engine-0.3.0rc67.dist-info/WHEEL,sha256=hKPP3BCTWtTwj6SFaSI--T5aOGqh_llYfbZ_BsqivwA,94
3
- corvic_engine-0.3.0rc67.dist-info/licenses/LICENSE,sha256=DSS1OD0oIgssKOmAzkMRBv5jvvVuZQbrIv8lpl9DXY8,1035
1
+ corvic_engine-0.3.0rc68.dist-info/METADATA,sha256=LqkQW9x8Hl08daRZPy-wd3FNjwbTGvR8ovJjeGkSdFs,1814
2
+ corvic_engine-0.3.0rc68.dist-info/WHEEL,sha256=hKPP3BCTWtTwj6SFaSI--T5aOGqh_llYfbZ_BsqivwA,94
3
+ corvic_engine-0.3.0rc68.dist-info/licenses/LICENSE,sha256=DSS1OD0oIgssKOmAzkMRBv5jvvVuZQbrIv8lpl9DXY8,1035
4
4
  corvic/context/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  corvic/context/__init__.py,sha256=zBnPiP-tStGSVMG_0-G_0ay6-yIX2aerW_oYRzAex74,1702
6
6
  corvic/embed/node2vec.py,sha256=Qep1lYMKN4nL4z6Ftylr0pj2aJ2LJmWRmnZV27xYJ-M,11251
@@ -13,18 +13,18 @@ corvic/engine/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  corvic/engine/_native.pyi,sha256=KYMPtvXqHZ-jMgZohLf4se3rr-rBpCihmjANcr6s8ag,1390
14
14
  corvic/engine/__init__.py,sha256=XL4Vg7rNcBi29ccVelpeFizR9oJtGYXDn84W9zok9d4,975
15
15
  corvic/model/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- corvic/model/_base_model.py,sha256=LDlHN-IrbKOjIG9AG5vBY-Dt_81uPCO7sxF3_96-q44,9137
17
- corvic/model/_completion_model.py,sha256=92zhXImWMCYymMUvtr0OtqqMlQBN7MGTUslMqRNcXxI,8001
16
+ corvic/model/_base_model.py,sha256=fpgzxwQ6XbIb8Kp-QbTsItOMAKy0HkE5E0xnLNxLjYc,9081
17
+ corvic/model/_completion_model.py,sha256=G7Li22A8mIs-g5FEF9Y0kGSie9j50hyKWuM3ejBm2VY,7951
18
18
  corvic/model/_defaults.py,sha256=yoKPPSmYJCE5YAD5jLTEmT4XNf_zXoggNK-uyG8MfVs,1524
19
19
  corvic/model/_errors.py,sha256=Ctlq04SDwHzJPvLaL1rzqzwVqf2b50EILfW3cH4vnh8,261
20
20
  corvic/model/_feature_type.py,sha256=Y-_-wa9fv7XaCAkxfjjoCLxxK2Ftfba-PMefD7bNXzs,917
21
- corvic/model/_feature_view.py,sha256=gdcXzsMuxpJ7vwbIGYgZlLYNxi2zvdZXvFsb36x6lKg,49694
22
- corvic/model/_pipeline.py,sha256=c16ap3yHQXqBmjG_2bMzz8hBYJCr14V2WxwlAYOw5Zw,16279
21
+ corvic/model/_feature_view.py,sha256=vRh9eVDlais8enZVymQtwPz8vd3QtwSRYR1CnlKtCnA,49698
22
+ corvic/model/_pipeline.py,sha256=rAhs3gawRORJnnOtjtyWMz6HkTBkVJlyWAP1jB45q4c,16249
23
23
  corvic/model/_proto_orm_convert.py,sha256=zsvA6DLQ2RGXhRW0zok-iyGyNkKzngmh8uSBXtQCZeU,23409
24
- corvic/model/_resource.py,sha256=w5m6mmD8KrHJ8efPTfRV0JKaCmkDRaxlGeuRMmVbw10,7773
24
+ corvic/model/_resource.py,sha256=5T0z0Bdy2_q2IgAT4kIHSVHF3e9uuh9no-Uwqc0cM2w,7743
25
25
  corvic/model/_room.py,sha256=36mXngZ38L4mr6_LgUm-QgsUUaoGMiYQRfvXLV_jd-4,2914
26
- corvic/model/_source.py,sha256=8AZQylOWuOuj-czSTLLbCZMkjFHAgwYQjNhxadRpvPI,9897
27
- corvic/model/_space.py,sha256=ZljalsBDrcnsx2sUOpJd6qQO2nFYDFttNoJMiLdGTBM,35922
26
+ corvic/model/_source.py,sha256=ss2JE0EMeWVdZUnp9xqeyzuoQn1VnR1HSNMK4agrd-8,9867
27
+ corvic/model/_space.py,sha256=5DW0t5Y5Xpegp6fIO7S9jhjqOildgr46pUBPWNb_HNQ,35892
28
28
  corvic/model/__init__.py,sha256=9xleS6S21RjQAHJwCGuAcwLIiBFmsmnld8xYAkim2gg,2997
29
29
  corvic/op_graph/aggregation.py,sha256=8X6vqXD7dLHrhYJU0BqmhUsWGbzD1zSP5Db5VHdIru4,6187
30
30
  corvic/op_graph/encoders.py,sha256=93wYoBCn_us5lRCkqvjaP0LTg3LBB3yEfhzICv06bB0,10460
@@ -39,21 +39,21 @@ corvic/op_graph/sample_strategy.py,sha256=DrbtJ3ORkIRfyIE_FdlOh_UMnCW_K9jL1LeonV
39
39
  corvic/op_graph/_schema.py,sha256=7Uuun9e6PRrtOeJLsFD8VzkwWeUpbnBcD37NpMKOcmQ,5685
40
40
  corvic/op_graph/_transformations.py,sha256=tROo0uR0km06LAsx4CSrR0OWPhFbvToFEowGcuAuRAs,9606
41
41
  corvic/op_graph/__init__.py,sha256=1DMrQfuuS3FkLa9DXYDjSDLurdxxpG5H1jB2ctaa9xo,1444
42
- corvic/orm/base.py,sha256=vPex2HUGQ-voMhl5CIcDyYBmVH7xBj0l7fZnaSRmMXA,8824
42
+ corvic/orm/base.py,sha256=R9t2zGZXID5RdzW7sDjcsIFjYjLxw--G2712rFTlW-o,8771
43
43
  corvic/orm/errors.py,sha256=uFhFXpVG6pby1lndJZHGHxv3Y0Fbt0RiaZ-CqDfuY1o,545
44
44
  corvic/orm/func/utc_func.py,sha256=-FC6w9wBWXejMv1AICT2Gg7tdkSo7gqL2dFT-YKPGQ4,4518
45
45
  corvic/orm/func/uuid_func.py,sha256=oXPjDGAl3mvlNtvcvBrLmRRHPJgtKffShIPbHm-EswA,1152
46
46
  corvic/orm/func/__init__.py,sha256=X47bbG7G-rDGmRkEGMq4Vn7mPKePdx724xQIwd_pUc0,471
47
- corvic/orm/ids.py,sha256=a_TXCG86qC42d2ENnOW3S3Ok38KR96DHCq3grHmUQeI,6788
47
+ corvic/orm/ids.py,sha256=L9v7toMmRh7aM8ZtDGLyKoQaidG5jQDFC3WlwrmSu7g,6758
48
48
  corvic/orm/keys.py,sha256=Ag6Xbpvxev-VByT1KJ8ChUn9vKVEzkkMXxrjvtADCtY,2182
49
- corvic/orm/mixins.py,sha256=PP35h1hyg2pB6YM49YMAitMhD166meGHGKN2HgOFTvU,18113
49
+ corvic/orm/mixins.py,sha256=tBsXLdP_7vuNmyVe70yCfIzrPz9oX7dM67IToChzPBs,17995
50
50
  corvic/orm/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
51
  corvic/orm/_proto_columns.py,sha256=tcOu92UjFJFYZLasS6sWJQBDRK26yrnmpTii_LDY4iw,913
52
52
  corvic/orm/__init__.py,sha256=nnppzLqUIdS1NEeoEyVhWjuajhceSiPLBrnVPDbkbO8,12318
53
53
  corvic/pa_scalar/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
54
  corvic/pa_scalar/_const.py,sha256=1nk6w3Y7crd3J5jSCq7DRVa1lcGk4H1RUr1l4NjnlzE,868
55
55
  corvic/pa_scalar/_from_value.py,sha256=fS3TNPcPI3jAKGmcUIhn8rdqdQEAwgTLEneVxFUeK6M,27531
56
- corvic/pa_scalar/_temporal.py,sha256=HPL1z5k4frIiGWM469YGj9j0hCPXNHtI_X1jk1y1c1Q,7842
56
+ corvic/pa_scalar/_temporal.py,sha256=HfkONq6cAk2oYK-4GRl6q_nFZWmCuybgHzhTxnBitzM,7833
57
57
  corvic/pa_scalar/_to_value.py,sha256=U8DoWDMSl58Yi35yd3JS5Gj773e5IOPa2UDfuZqTkjk,13307
58
58
  corvic/pa_scalar/_types.py,sha256=shbytO0ji-H2rBOX_1fooVOshb22wwkVU1W99VBKz1A,1131
59
59
  corvic/pa_scalar/__init__.py,sha256=1nfc0MFGpw78RQEI13VE5hpHuyw_DoE7sJbmzqx5pws,1063
@@ -62,21 +62,22 @@ corvic/proto_wrapper/_errors.py,sha256=0HFmBK9EGYi4lXJ3RFsktHoPZn2m3cMKroI0Eir0J
62
62
  corvic/proto_wrapper/_wrappers.py,sha256=tKVVJqVRBPoQl0wFnwGx7ye5AFMztz-ZUj3ar_DBthI,2104
63
63
  corvic/proto_wrapper/__init__.py,sha256=KfwiW9Tec3aCrhhEmdP3bhJ1ZLlKdI7QTM3xEIhpMcg,278
64
64
  corvic/result/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
- corvic/result/__init__.py,sha256=XKHQeq74V17fH2ZVYywxA-KcimqydNdPqzAXpfPzX6o,17176
65
+ corvic/result/__init__.py,sha256=AkGwfaMHQ_zYOefosqxOn1FluHO6Mi3ZeXdipFQF62s,17149
66
66
  corvic/sql/parse_ops.py,sha256=5jm2CHycTqzdu9apXTgcvwwyBVpjf7n5waqKfIa84JA,29940
67
67
  corvic/sql/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
68
  corvic/sql/__init__.py,sha256=kZ1a39KVZ08P8Bg6XuXDLD_dTQX0k620u4nwxZF4SnY,303
69
- corvic/system/client.py,sha256=hGhZX8RtHrFEOlOmJNlUHktOZrutOwNYUY_a1htQSrg,821
70
- corvic/system/in_memory_executor.py,sha256=Pe5gVXx3qHDNU1HUZUOqo0l76OVC2WhUei7FpDrADKk,68244
71
- corvic/system/op_graph_executor.py,sha256=GK9XGBysIYrl6S1qcgiJTVzmaZsbGsx_EeENOOy1XZM,3511
69
+ corvic/system/client.py,sha256=JcA-fPraqDkl9f8BiClS0qeGY6wzKcEDPymutWrJo54,812
70
+ corvic/system/in_memory_executor.py,sha256=bR1C0-OVdnPxoh3eZC4AHoLR5M1bWO7G--27ANOvygg,66402
71
+ corvic/system/op_graph_executor.py,sha256=dFxbM_kk5ybPxs3NwyuW3Xg-xCB031toWCFv8eEW8qE,3639
72
72
  corvic/system/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
73
  corvic/system/staging.py,sha256=K5P5moiuAMfPx7lxK4mArxeURBwKoyB6x9HGu9JJ16E,1846
74
- corvic/system/storage.py,sha256=PuGWC6hQOJXLShhtHNP4gRZDaT4IGk9QCrNF_ciEPzk,5583
74
+ corvic/system/storage.py,sha256=ypX6e9D3r4hzhrCgtpPi3ftEDxc8kdN-nByZc6_aCRI,5551
75
+ corvic/system/_column_encoding.py,sha256=feSWIv4vKstVq-aavWPk53YucUiq7rZvuyofqTicXBE,7574
75
76
  corvic/system/_dimension_reduction.py,sha256=vyD8wOs0vE-hlVnCrBTjStTowAPWYREqnQ_bVuGYvis,2907
76
- corvic/system/_embedder.py,sha256=V9Hv0vQHaAAJzt1udDlIsdWX2pNjpwCl8xvgnOZnpC4,4540
77
- corvic/system/_image_embedder.py,sha256=-72L6aVJXzCfKX9iwmBbw_7uuVBYLcO73RCFDkC6Z0U,9002
78
- corvic/system/_planner.py,sha256=0p0RNxgqQ3-JFhDjWqieiuCj0SlTD6dhYjT79hFyBXU,8062
79
- corvic/system/_text_embedder.py,sha256=LH79_4RxhvssySHpkeEoZFgM4Sa5XAYSjoytdsuwWK4,3269
77
+ corvic/system/_embedder.py,sha256=unPqwixqjiSRVbfqaOJ7M2HYoT4M9WHbM4P0Bt7whsY,5328
78
+ corvic/system/_image_embedder.py,sha256=uUE7h9rqVS-Eh3kWIM9DekLR0DlNQ-bVRV_l2sWUB6A,10401
79
+ corvic/system/_planner.py,sha256=ecL-HW8PVz5eWJ1Ktf-RAD2IdZkHu3GuBtXdqElo4ts,8210
80
+ corvic/system/_text_embedder.py,sha256=NDi--3_tzwIWVImjhFWmp8dHmydGGXNu6GYH8qODsIc,4000
80
81
  corvic/system/__init__.py,sha256=U28LyDwpirtG0WDXqE6dzkx8PipvY2rtZSex03C7xlY,2792
81
82
  corvic/system_sqlite/client.py,sha256=NNrcHxCoHPs8piR_-mGEA1KZ2m54OAhHg8DZvI9fWD0,7475
82
83
  corvic/system_sqlite/fs_blob_store.py,sha256=pYTMPiWYC6AUIdcgmRj8lvL7Chg82rf5dac6bKGaqL0,8461
@@ -85,7 +86,7 @@ corvic/system_sqlite/rdbms_blob_store.py,sha256=gTP_tQfTVb3wzZkzo8ys1zaz0rSrERzb
85
86
  corvic/system_sqlite/staging.py,sha256=8E6gyk3Mqp8JmntwiE6r9K8uvl1V-Rr-DrFrI5fUV4s,17385
86
87
  corvic/system_sqlite/__init__.py,sha256=F4UN9vFsXiDY2AKk1jYZPuWWJpSugKHS7ghXeZYlbZs,390
87
88
  corvic/table/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
- corvic/table/table.py,sha256=_wC3-BoUT178w3v-BweZ9vCL622-v475YZnJxWleVIA,25811
89
+ corvic/table/table.py,sha256=6LYDaPnLL5QVhQcjK3tP3YDWxMvJQsZYEVHbnzQXRB0,25812
89
90
  corvic/table/__init__.py,sha256=Gj0IR8BQF5PZK92Us7PP0ZigMsVyrfWJupzH8TgzRQk,588
90
91
  corvic/version/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
92
  corvic/version/__init__.py,sha256=JlkRLvKXsu3zIxhdynO_0Ub5NfQOvGjfwCRkNnaOu9U,1125
@@ -205,5 +206,5 @@ corvic_generated/status/v1/event_pb2.pyi,sha256=eU-ibrYpvEAJSIDlSa62-bC96AQU1ykF
205
206
  corvic_generated/status/v1/event_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
206
207
  corvic_generated/status/v1/service_pb2.pyi,sha256=iXLR2FOKQJpBgvBzpD2kVwcYOCksP2aRwK4JYaI9CBw,558
207
208
  corvic_generated/status/v1/service_pb2_grpc.pyi,sha256=OoAnaZ64FD0UTzPoRhYvQU8ecoilhHj3ySjSfHbVDaU,1501
208
- corvic/engine/_native.pyd,sha256=wESCdUX_Um3pcgTX_u7-wzIEbA53VDlJw_v_xaV8CAk,438272
209
- corvic_engine-0.3.0rc67.dist-info/RECORD,,
209
+ corvic/engine/_native.pyd,sha256=TtJ1uDy8UIXFMWrfokiDyOpYrTfHv-IO6JzbYBcDXEA,438272
210
+ corvic_engine-0.3.0rc68.dist-info/RECORD,,