corvic-engine 0.3.0rc81__cp38-abi3-win_amd64.whl → 0.3.0rc83__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.
- corvic/{model → emodel}/__init__.py +40 -37
- corvic/emodel/_base_model.py +161 -0
- corvic/{model → emodel}/_completion_model.py +10 -8
- corvic/{model → emodel}/_feature_type.py +1 -1
- corvic/{model → emodel}/_feature_view.py +9 -7
- corvic/{model → emodel}/_pipeline.py +5 -5
- corvic/{model → emodel}/_proto_orm_convert.py +56 -54
- corvic/{model → emodel}/_resource.py +4 -4
- corvic/{model → emodel}/_room.py +4 -4
- corvic/{model → emodel}/_source.py +7 -7
- corvic/{model → emodel}/_space.py +9 -9
- corvic/engine/_native.pyd +0 -0
- corvic/op_graph/ops.py +6 -2
- corvic/system/__init__.py +10 -6
- corvic/system/_embedder.py +3 -0
- corvic/system/_image_embedder.py +50 -20
- corvic/system/in_memory_executor.py +6 -1
- corvic/transfer/__init__.py +43 -0
- corvic/transfer/_common_transformations.py +37 -0
- corvic/{model/_base_model.py → transfer/_orm_backed_proto.py} +116 -109
- corvic/transfer/py.typed +0 -0
- {corvic_engine-0.3.0rc81.dist-info → corvic_engine-0.3.0rc83.dist-info}/METADATA +2 -2
- {corvic_engine-0.3.0rc81.dist-info → corvic_engine-0.3.0rc83.dist-info}/RECORD +30 -26
- {corvic_engine-0.3.0rc81.dist-info → corvic_engine-0.3.0rc83.dist-info}/WHEEL +1 -1
- corvic_generated/orm/v1/agent_pb2.py +8 -8
- corvic_generated/orm/v1/agent_pb2.pyi +8 -4
- /corvic/{model → emodel}/_defaults.py +0 -0
- /corvic/{model → emodel}/_errors.py +0 -0
- /corvic/{model → emodel}/py.typed +0 -0
- {corvic_engine-0.3.0rc81.dist-info → corvic_engine-0.3.0rc83.dist-info}/licenses/LICENSE +0 -0
@@ -3,66 +3,59 @@ import contextlib
|
|
3
3
|
import copy
|
4
4
|
import datetime
|
5
5
|
import functools
|
6
|
-
import uuid
|
7
6
|
from collections.abc import Callable, Iterable, Iterator, Sequence
|
8
|
-
from typing import Final, Generic, Self
|
7
|
+
from typing import Any, Final, Generic, Protocol, Self, TypeVar
|
9
8
|
|
10
9
|
import sqlalchemy as sa
|
11
10
|
import sqlalchemy.orm as sa_orm
|
12
11
|
import structlog
|
13
12
|
from google.protobuf import timestamp_pb2
|
14
13
|
|
15
|
-
from corvic import
|
16
|
-
from corvic.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
OrmObj,
|
22
|
-
ProtoBelongsToOrgObj,
|
23
|
-
ProtoBelongsToRoomObj,
|
24
|
-
ProtoObj,
|
25
|
-
)
|
26
|
-
from corvic.result import (
|
27
|
-
InvalidArgumentError,
|
28
|
-
NotFoundError,
|
29
|
-
Ok,
|
30
|
-
UnavailableError,
|
14
|
+
from corvic import orm, system
|
15
|
+
from corvic.result import InvalidArgumentError, NotFoundError, Ok, UnavailableError
|
16
|
+
from corvic.transfer._common_transformations import (
|
17
|
+
OrmIdT,
|
18
|
+
generate_uncommitted_id_str,
|
19
|
+
non_empty_timestamp_to_datetime,
|
31
20
|
)
|
32
21
|
|
33
22
|
_logger = structlog.get_logger()
|
34
23
|
|
35
|
-
_EMPTY_PROTO_TIMESTAMP = timestamp_pb2.Timestamp(seconds=0, nanos=0)
|
36
24
|
|
25
|
+
class OrmModel(Protocol):
|
26
|
+
@sa.ext.hybrid.hybrid_property
|
27
|
+
def created_at(self) -> datetime.datetime | None: ...
|
28
|
+
|
29
|
+
@created_at.inplace.expression
|
30
|
+
@classmethod
|
31
|
+
def _created_at_expression(cls): ...
|
32
|
+
|
33
|
+
|
34
|
+
class OrmHasIdModel(OrmModel, Protocol[OrmIdT]):
|
35
|
+
id: sa_orm.Mapped[OrmIdT | None]
|
37
36
|
|
38
|
-
def non_empty_timestamp_to_datetime(
|
39
|
-
timestamp: timestamp_pb2.Timestamp,
|
40
|
-
) -> datetime.datetime | None:
|
41
|
-
if timestamp != _EMPTY_PROTO_TIMESTAMP:
|
42
|
-
return timestamp.ToDatetime(tzinfo=datetime.UTC)
|
43
|
-
return None
|
44
37
|
|
38
|
+
OrmT = TypeVar("OrmT", bound=OrmModel)
|
39
|
+
OrmHasIdT = TypeVar("OrmHasIdT", bound=OrmHasIdModel[Any])
|
45
40
|
|
46
|
-
def _generate_uncommitted_id_str():
|
47
|
-
return f"{UNCOMMITTED_ID_PREFIX}{uuid.uuid4()}"
|
48
41
|
|
42
|
+
class ProtoModel(Protocol):
|
43
|
+
created_at: timestamp_pb2.Timestamp
|
49
44
|
|
50
|
-
@contextlib.contextmanager
|
51
|
-
def _create_or_join_session(
|
52
|
-
client: system.Client, existing_session: sa_orm.Session | None
|
53
|
-
) -> Iterator[sa_orm.Session]:
|
54
|
-
if existing_session:
|
55
|
-
yield existing_session
|
56
|
-
else:
|
57
|
-
with eorm.Session(client.sa_engine) as session:
|
58
|
-
yield session
|
59
45
|
|
46
|
+
class ProtoHasIdModel(ProtoModel, Protocol):
|
47
|
+
id: str
|
60
48
|
|
61
|
-
|
49
|
+
|
50
|
+
ProtoT = TypeVar("ProtoT", bound=ProtoModel)
|
51
|
+
ProtoHasIdT = TypeVar("ProtoHasIdT", bound=ProtoHasIdModel)
|
52
|
+
|
53
|
+
|
54
|
+
class HasProtoSelf(Generic[ProtoT], abc.ABC):
|
62
55
|
client: Final[system.Client]
|
63
|
-
proto_self: Final[
|
56
|
+
proto_self: Final[ProtoT]
|
64
57
|
|
65
|
-
def __init__(self, client: system.Client, proto_self:
|
58
|
+
def __init__(self, client: system.Client, proto_self: ProtoT):
|
66
59
|
self.proto_self = proto_self
|
67
60
|
self.client = client
|
68
61
|
|
@@ -71,22 +64,22 @@ class HasProtoSelf(Generic[ProtoObj], abc.ABC):
|
|
71
64
|
return non_empty_timestamp_to_datetime(self.proto_self.created_at)
|
72
65
|
|
73
66
|
|
74
|
-
class UsesOrmID(Generic[
|
75
|
-
def __init__(self, client: system.Client, proto_self:
|
67
|
+
class UsesOrmID(Generic[OrmIdT, ProtoHasIdT], HasProtoSelf[ProtoHasIdT]):
|
68
|
+
def __init__(self, client: system.Client, proto_self: ProtoHasIdT):
|
76
69
|
if not proto_self.id:
|
77
|
-
proto_self.id =
|
70
|
+
proto_self.id = generate_uncommitted_id_str()
|
78
71
|
super().__init__(client, proto_self)
|
79
72
|
|
80
73
|
@classmethod
|
81
74
|
@abc.abstractmethod
|
82
|
-
def id_class(cls) -> type[
|
75
|
+
def id_class(cls) -> type[OrmIdT]: ...
|
83
76
|
|
84
77
|
@functools.cached_property
|
85
|
-
def id(self) ->
|
78
|
+
def id(self) -> OrmIdT:
|
86
79
|
return self.id_class().from_str(self.proto_self.id)
|
87
80
|
|
88
81
|
|
89
|
-
class
|
82
|
+
class OrmBackedProto(Generic[ProtoT, OrmT], HasProtoSelf[ProtoT]):
|
90
83
|
"""Base for orm wrappers providing a unified update mechanism."""
|
91
84
|
|
92
85
|
@property
|
@@ -95,51 +88,29 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
95
88
|
|
96
89
|
@classmethod
|
97
90
|
@abc.abstractmethod
|
98
|
-
def orm_class(cls) -> type[
|
91
|
+
def orm_class(cls) -> type[OrmT]: ...
|
99
92
|
|
100
93
|
@classmethod
|
101
94
|
@abc.abstractmethod
|
102
|
-
def orm_to_proto(cls, orm_obj:
|
95
|
+
def orm_to_proto(cls, orm_obj: OrmT) -> ProtoT: ...
|
103
96
|
|
104
97
|
@classmethod
|
105
98
|
@abc.abstractmethod
|
106
99
|
def proto_to_orm(
|
107
|
-
cls, proto_obj:
|
108
|
-
) -> Ok[
|
109
|
-
|
110
|
-
@classmethod
|
111
|
-
@abc.abstractmethod
|
112
|
-
def delete_by_ids(
|
113
|
-
cls, ids: Sequence[IdType], session: eorm.Session
|
114
|
-
) -> Ok[None] | InvalidArgumentError: ...
|
115
|
-
|
116
|
-
@classmethod
|
117
|
-
def load_proto_for(
|
118
|
-
cls,
|
119
|
-
obj_id: IdType,
|
120
|
-
client: system.Client,
|
121
|
-
existing_session: sa_orm.Session | None = None,
|
122
|
-
) -> Ok[ProtoObj] | NotFoundError:
|
123
|
-
"""Create a model object by loading it from the database."""
|
124
|
-
with _create_or_join_session(client, existing_session) as session:
|
125
|
-
orm_self = session.get(cls.orm_class(), obj_id)
|
126
|
-
if orm_self is None:
|
127
|
-
return NotFoundError("object with given id does not exist", id=obj_id)
|
128
|
-
proto_self = cls.orm_to_proto(orm_self)
|
129
|
-
return Ok(proto_self)
|
100
|
+
cls, proto_obj: ProtoT, session: orm.Session
|
101
|
+
) -> Ok[OrmT] | InvalidArgumentError: ...
|
130
102
|
|
131
103
|
@classmethod
|
132
104
|
def _generate_query_results(
|
133
|
-
cls, query: sa.Select[tuple[
|
134
|
-
) -> Iterator[
|
105
|
+
cls, query: sa.Select[tuple[OrmT]], session: sa_orm.Session
|
106
|
+
) -> Iterator[OrmT]:
|
135
107
|
it = iter(session.scalars(query))
|
136
108
|
while True:
|
137
109
|
try:
|
138
110
|
yield from it
|
139
111
|
except Exception:
|
140
112
|
_logger.exception(
|
141
|
-
"omitting
|
142
|
-
+ "failed to parse source from database entry",
|
113
|
+
"omitting model from list: " + "failed to parse database entry",
|
143
114
|
)
|
144
115
|
else:
|
145
116
|
break
|
@@ -155,31 +126,27 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
155
126
|
client: system.Client,
|
156
127
|
*,
|
157
128
|
limit: int | None = None,
|
158
|
-
room_id: eorm.RoomID | None = None,
|
159
129
|
created_before: datetime.datetime | None = None,
|
160
|
-
ids: Iterable[IdType] | None = None,
|
161
130
|
additional_query_transform: Callable[
|
162
|
-
[sa.Select[tuple[
|
131
|
+
[sa.Select[tuple[OrmT]]], sa.Select[tuple[OrmT]]
|
163
132
|
]
|
164
133
|
| None = None,
|
165
134
|
existing_session: sa_orm.Session | None = None,
|
166
|
-
) -> Ok[list[
|
135
|
+
) -> Ok[list[ProtoT]] | NotFoundError | InvalidArgumentError:
|
167
136
|
"""List sources that exist in storage."""
|
168
137
|
orm_class = cls.orm_class()
|
169
|
-
with
|
138
|
+
with (
|
139
|
+
contextlib.nullcontext(existing_session)
|
140
|
+
if existing_session
|
141
|
+
else orm.Session(client.sa_engine) as session
|
142
|
+
):
|
170
143
|
query = sa.select(orm_class).order_by(sa.desc(orm_class.created_at))
|
171
144
|
if limit is not None:
|
172
145
|
if limit < 0:
|
173
146
|
return InvalidArgumentError("limit cannot be negative")
|
174
147
|
query = query.limit(limit)
|
175
|
-
if room_id:
|
176
|
-
if session.get(eorm.Room, room_id) is None:
|
177
|
-
return NotFoundError("room not found", room_id=room_id)
|
178
|
-
query = query.filter_by(room_id=room_id)
|
179
148
|
if created_before:
|
180
149
|
query = query.filter(orm_class.created_at < created_before)
|
181
|
-
if ids is not None:
|
182
|
-
query = query.filter(orm_class.id.in_(ids))
|
183
150
|
if additional_query_transform:
|
184
151
|
query = additional_query_transform(query)
|
185
152
|
extra_orm_loaders = cls.orm_load_options()
|
@@ -198,7 +165,7 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
198
165
|
This overwrites the entry at id in the database so that future readers will see
|
199
166
|
this object. One of `id` or `derived_from_id` cannot be empty or None.
|
200
167
|
"""
|
201
|
-
with
|
168
|
+
with orm.Session(self.client.sa_engine) as session:
|
202
169
|
try:
|
203
170
|
new_orm_self = self.proto_to_orm(
|
204
171
|
self.proto_self, session
|
@@ -230,7 +197,7 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
230
197
|
return InvalidArgumentError.from_(err)
|
231
198
|
|
232
199
|
def add_to_session(
|
233
|
-
self, session:
|
200
|
+
self, session: orm.Session
|
234
201
|
) -> Ok[None] | InvalidArgumentError | UnavailableError:
|
235
202
|
"""Like commit, but just calls session.flush to check for database errors.
|
236
203
|
|
@@ -246,8 +213,39 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
246
213
|
return self._dbapi_error_to_result(err)
|
247
214
|
return Ok(None)
|
248
215
|
|
216
|
+
|
217
|
+
class HasIdOrmBackedProto(
|
218
|
+
Generic[OrmIdT, ProtoHasIdT, OrmHasIdT],
|
219
|
+
UsesOrmID[OrmIdT, ProtoHasIdT],
|
220
|
+
OrmBackedProto[ProtoHasIdT, OrmHasIdT],
|
221
|
+
):
|
222
|
+
@classmethod
|
223
|
+
@abc.abstractmethod
|
224
|
+
def delete_by_ids(
|
225
|
+
cls, ids: Sequence[OrmIdT], session: orm.Session
|
226
|
+
) -> Ok[None] | InvalidArgumentError: ...
|
227
|
+
|
228
|
+
@classmethod
|
229
|
+
def load_proto_for(
|
230
|
+
cls,
|
231
|
+
obj_id: OrmIdT,
|
232
|
+
client: system.Client,
|
233
|
+
existing_session: sa_orm.Session | None = None,
|
234
|
+
) -> Ok[ProtoHasIdT] | NotFoundError:
|
235
|
+
"""Create a model object by loading it from the database."""
|
236
|
+
with (
|
237
|
+
contextlib.nullcontext(existing_session)
|
238
|
+
if existing_session
|
239
|
+
else orm.Session(client.sa_engine) as session
|
240
|
+
):
|
241
|
+
orm_self = session.get(cls.orm_class(), obj_id)
|
242
|
+
if orm_self is None:
|
243
|
+
return NotFoundError("object with given id does not exist", id=obj_id)
|
244
|
+
proto_self = cls.orm_to_proto(orm_self)
|
245
|
+
return Ok(proto_self)
|
246
|
+
|
249
247
|
def delete(self) -> Ok[Self] | NotFoundError | InvalidArgumentError:
|
250
|
-
with
|
248
|
+
with orm.Session(
|
251
249
|
self.client.sa_engine, expire_on_commit=False, autoflush=False
|
252
250
|
) as session:
|
253
251
|
try:
|
@@ -270,24 +268,33 @@ class BaseModel(Generic[IdType, ProtoObj, OrmObj], UsesOrmID[IdType, ProtoObj]):
|
|
270
268
|
)
|
271
269
|
)
|
272
270
|
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
271
|
+
@classmethod
|
272
|
+
def list_as_proto(
|
273
|
+
cls,
|
274
|
+
client: system.Client,
|
275
|
+
*,
|
276
|
+
limit: int | None = None,
|
277
|
+
created_before: datetime.datetime | None = None,
|
278
|
+
ids: Iterable[OrmIdT] | None = None,
|
279
|
+
additional_query_transform: Callable[
|
280
|
+
[sa.Select[tuple[OrmHasIdT]]], sa.Select[tuple[OrmHasIdT]]
|
281
|
+
]
|
282
|
+
| None = None,
|
283
|
+
existing_session: sa_orm.Session | None = None,
|
284
|
+
) -> Ok[list[ProtoHasIdT]] | NotFoundError | InvalidArgumentError:
|
285
|
+
def query_transform(
|
286
|
+
query: sa.Select[tuple[OrmHasIdT]],
|
287
|
+
) -> sa.Select[tuple[OrmHasIdT]]:
|
288
|
+
if ids:
|
289
|
+
query = query.where(cls.orm_class().id.in_(ids))
|
290
|
+
if additional_query_transform:
|
291
|
+
query = additional_query_transform(query)
|
292
|
+
return query
|
293
|
+
|
294
|
+
return super().list_as_proto(
|
295
|
+
client,
|
296
|
+
limit=limit,
|
297
|
+
created_before=created_before,
|
298
|
+
additional_query_transform=query_transform,
|
299
|
+
existing_session=existing_session,
|
300
|
+
)
|
corvic/transfer/py.typed
ADDED
File without changes
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: corvic-engine
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.0rc83
|
4
4
|
Classifier: Environment :: Console
|
5
5
|
Classifier: License :: Other/Proprietary License
|
6
6
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
@@ -22,11 +22,11 @@ Requires-Dist: sqlalchemy>=2
|
|
22
22
|
Requires-Dist: sqlglot>=25.6.0,<26
|
23
23
|
Requires-Dist: structlog>=24
|
24
24
|
Requires-Dist: tqdm
|
25
|
-
Requires-Dist: typing-extensions>=4.9
|
26
25
|
Requires-Dist: umap-learn>=0.5.5 ; extra == 'ml'
|
27
26
|
Requires-Dist: pillow>=10.0.0 ; extra == 'ml'
|
28
27
|
Requires-Dist: scikit-learn>=1.4.0 ; extra == 'ml'
|
29
28
|
Requires-Dist: transformers[torch]>=4.45.0 ; extra == 'ml'
|
29
|
+
Requires-Dist: sentencepiece>=0.2.0 ; extra == 'ml'
|
30
30
|
Requires-Dist: opentelemetry-api>=1.20.0 ; extra == 'telemetry'
|
31
31
|
Requires-Dist: opentelemetry-sdk>=1.20.0 ; extra == 'telemetry'
|
32
32
|
Provides-Extra: ml
|
@@ -10,25 +10,25 @@ corvic/embed/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
10
|
corvic/embedding_metric/__init__.py,sha256=8a-QKSQNbiksueHk5LdkugjZr6wasP4ff8A-Jsn5gUI,536
|
11
11
|
corvic/embedding_metric/embeddings.py,sha256=XCiMzoGdRSmCOJnBDnxm3xlU0L_vrXwUxEjwdMv1FMI,14036
|
12
12
|
corvic/embedding_metric/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
13
|
+
corvic/emodel/__init__.py,sha256=x2uEl19O_mVqph3QhHq9FZIkFs-Q74gZ_dfNspGY6Q0,3377
|
14
|
+
corvic/emodel/_base_model.py,sha256=jjjZCpGYcV6Hnaztdis8HpyifuyRZ9rnp2hujYa6TRI,5131
|
15
|
+
corvic/emodel/_completion_model.py,sha256=dKxv4GxVoSFkO34FgtecQPb8axZNArUctYrXelc7HWw,7672
|
16
|
+
corvic/emodel/_defaults.py,sha256=OnROutSYhCuNuIvJbWdp4NZyamYtWRjwc4BE2ZqNAm8,1529
|
17
|
+
corvic/emodel/_errors.py,sha256=Ctlq04SDwHzJPvLaL1rzqzwVqf2b50EILfW3cH4vnh8,261
|
18
|
+
corvic/emodel/_feature_type.py,sha256=39nnwfbHyKqHKiH6Y6N-W7muSvA4qmZsSB680ZMPrzs,918
|
19
|
+
corvic/emodel/_feature_view.py,sha256=uFv9D0PNNC-MUzdYbTWCaa9ossgwEl6kBK3qeB6QAa4,49725
|
20
|
+
corvic/emodel/_pipeline.py,sha256=jpMIY8u-LaC-GvTrtAttCGB3NUNFweGhIpvd-m0ACKw,18791
|
21
|
+
corvic/emodel/_proto_orm_convert.py,sha256=nhyTxuwYk7rjxl8t89RIC_nsZmi9PfeMeDf9XVAfguo,24147
|
22
|
+
corvic/emodel/_resource.py,sha256=7K4LcHrC72HGdTi5UT2TGimVfMfFQ7p8QXQTLtPB2BY,8512
|
23
|
+
corvic/emodel/_room.py,sha256=D5V9YSo9Xcfnng-dACWAmpEBgUAOUVFS7Jj2bCsSXtM,2877
|
24
|
+
corvic/emodel/_source.py,sha256=yWZeYHX_jFIwqRZ1eUHIMN9Gu8EIYEZ8fmXDO6QpfyQ,9799
|
25
|
+
corvic/emodel/_space.py,sha256=ewAGHHVY4tkoMRjyKwAvLq_3Zky8Zaa7k3DEbhkhM7E,38549
|
26
|
+
corvic/emodel/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
13
27
|
corvic/engine/__init__.py,sha256=XL4Vg7rNcBi29ccVelpeFizR9oJtGYXDn84W9zok9d4,975
|
14
|
-
corvic/engine/_native.pyd,sha256=
|
28
|
+
corvic/engine/_native.pyd,sha256=uHSk2hJH4b8Rxhbj3lb8hLPBsEYqvMsPtjfI18kIMSY,438272
|
15
29
|
corvic/engine/_native.pyi,sha256=KYMPtvXqHZ-jMgZohLf4se3rr-rBpCihmjANcr6s8ag,1390
|
16
30
|
corvic/engine/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
31
|
corvic/eorm/__init__.py,sha256=b4dFnu4fW7wj3Y0SMNVXOp8KoKOp_HAL4GyDN-S8fOY,13704
|
18
|
-
corvic/model/__init__.py,sha256=umu7rhilpzsKgeGHfNnq1bFf3vRk5gECSOSNkRVfdfc,3215
|
19
|
-
corvic/model/_base_model.py,sha256=BBcpX792AC8zb1_Jq_aFQ7KwB3H5Mn4z1NE9sAoReqA,10328
|
20
|
-
corvic/model/_completion_model.py,sha256=e6vGrON3NTc9vXweunJ4hp9byMvMd-igMzaul-genK4,7643
|
21
|
-
corvic/model/_defaults.py,sha256=OnROutSYhCuNuIvJbWdp4NZyamYtWRjwc4BE2ZqNAm8,1529
|
22
|
-
corvic/model/_errors.py,sha256=Ctlq04SDwHzJPvLaL1rzqzwVqf2b50EILfW3cH4vnh8,261
|
23
|
-
corvic/model/_feature_type.py,sha256=Y-_-wa9fv7XaCAkxfjjoCLxxK2Ftfba-PMefD7bNXzs,917
|
24
|
-
corvic/model/_feature_view.py,sha256=3-MK8i6bVPp2wU24LHsjTLA7HnVJZ9MU4BrcmkDB_wI,49715
|
25
|
-
corvic/model/_pipeline.py,sha256=LlKUbz4ZaWugfdGbHpL5flfrXizS7Bsyh_npesGyU38,18797
|
26
|
-
corvic/model/_proto_orm_convert.py,sha256=czEE6qYjg4s73IMSA_mGYAyh9s2FKc2ofjE6YV2FMKc,24072
|
27
|
-
corvic/model/_resource.py,sha256=3eeYJf8M8063Go0QVOM03QqRAshyChInqqdpSxRx8mQ,8519
|
28
|
-
corvic/model/_room.py,sha256=OqceFrRZVt4OcHHbhAgCj0s77ErmIcaXRsf8Lv0nfrM,2868
|
29
|
-
corvic/model/_source.py,sha256=f62oLSv3qdOmfVhEjqL5ie55YiDdGDq0IhSAfFvrkBw,9803
|
30
|
-
corvic/model/_space.py,sha256=uBBi6H5VIg1z-r4DXOPqYb4DUznGkv2a8_YGr6wx3zo,38505
|
31
|
-
corvic/model/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
32
|
corvic/op_graph/__init__.py,sha256=1DMrQfuuS3FkLa9DXYDjSDLurdxxpG5H1jB2ctaa9xo,1444
|
33
33
|
corvic/op_graph/_schema.py,sha256=rDZt6xAFpvhBZlp54uvXlqTqOxO8uFtTtukBGSUylqA,5688
|
34
34
|
corvic/op_graph/_transformations.py,sha256=tROo0uR0km06LAsx4CSrR0OWPhFbvToFEowGcuAuRAs,9606
|
@@ -36,7 +36,7 @@ corvic/op_graph/aggregation.py,sha256=8X6vqXD7dLHrhYJU0BqmhUsWGbzD1zSP5Db5VHdIru
|
|
36
36
|
corvic/op_graph/encoders.py,sha256=93wYoBCn_us5lRCkqvjaP0LTg3LBB3yEfhzICv06bB0,10460
|
37
37
|
corvic/op_graph/errors.py,sha256=I4NE5053d0deGm5xx5EmyP4f98qx42xnIsW1IA-2hy4,163
|
38
38
|
corvic/op_graph/feature_types.py,sha256=YVbPzvMnHHmUfR5QAMSvQ6hjQcOrIjqR-su0VypYWFA,9627
|
39
|
-
corvic/op_graph/ops.py,sha256=
|
39
|
+
corvic/op_graph/ops.py,sha256=aNXcBwrwSyX7seCYqhn0vmlcP-YblphP1ZnRwS3MHl0,112105
|
40
40
|
corvic/op_graph/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
41
41
|
corvic/op_graph/row_filters/__init__.py,sha256=1sibH_kLw7t_9bpRccnEGWqdCiN0VaUh9LMMIMCRyL8,575
|
42
42
|
corvic/op_graph/row_filters/_jsonlogic.py,sha256=0UdwOZmIGp4yuExHM3qqAnJYmcGv7iuc3vLub3GD-9Y,7685
|
@@ -68,15 +68,15 @@ corvic/result/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
68
|
corvic/sql/__init__.py,sha256=kZ1a39KVZ08P8Bg6XuXDLD_dTQX0k620u4nwxZF4SnY,303
|
69
69
|
corvic/sql/parse_ops.py,sha256=5jm2CHycTqzdu9apXTgcvwwyBVpjf7n5waqKfIa84JA,29940
|
70
70
|
corvic/sql/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
71
|
-
corvic/system/__init__.py,sha256=
|
71
|
+
corvic/system/__init__.py,sha256=PlsjTRklExrPA83n-PM5CqVmNcIQdIRhFHn3tZ0qh1Q,2765
|
72
72
|
corvic/system/_column_encoding.py,sha256=feSWIv4vKstVq-aavWPk53YucUiq7rZvuyofqTicXBE,7574
|
73
73
|
corvic/system/_dimension_reduction.py,sha256=2tg5SIHY4P480DJQj6PSjW1VgAJCAVJAH8D3BY-ZYXA,2964
|
74
|
-
corvic/system/_embedder.py,sha256=
|
75
|
-
corvic/system/_image_embedder.py,sha256=
|
74
|
+
corvic/system/_embedder.py,sha256=3TJayoEKMOaooY3M2CZml0znwjPCguD-pbrGOXwamIg,6921
|
75
|
+
corvic/system/_image_embedder.py,sha256=SiyoITnMfHXoLmtROdNJ1JlY6sBhA_kTxvbKYvZnRqY,12760
|
76
76
|
corvic/system/_planner.py,sha256=ecL-HW8PVz5eWJ1Ktf-RAD2IdZkHu3GuBtXdqElo4ts,8210
|
77
77
|
corvic/system/_text_embedder.py,sha256=NDi--3_tzwIWVImjhFWmp8dHmydGGXNu6GYH8qODsIc,4000
|
78
78
|
corvic/system/client.py,sha256=JcA-fPraqDkl9f8BiClS0qeGY6wzKcEDPymutWrJo54,812
|
79
|
-
corvic/system/in_memory_executor.py,sha256=
|
79
|
+
corvic/system/in_memory_executor.py,sha256=H51fob98zZ8weZtyaWd5TpZHv5KPIW3buTixYqCsOqU,66454
|
80
80
|
corvic/system/op_graph_executor.py,sha256=tSKro-yb_y1_sgajZluM-6FCvDqO1oUPsiWw2DRxyMQ,3641
|
81
81
|
corvic/system/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
82
82
|
corvic/system/staging.py,sha256=K5P5moiuAMfPx7lxK4mArxeURBwKoyB6x9HGu9JJ16E,1846
|
@@ -90,13 +90,17 @@ corvic/system_sqlite/staging.py,sha256=9WjXT_XT3wGCFgx9dieOGjHcuu2ZEaFWMChQaISME
|
|
90
90
|
corvic/table/__init__.py,sha256=Gj0IR8BQF5PZK92Us7PP0ZigMsVyrfWJupzH8TgzRQk,588
|
91
91
|
corvic/table/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
92
92
|
corvic/table/table.py,sha256=fvt6G20Jz1Cfhf9zrmYIDPjUR4lGAWKjlx4eWKvoqtk,25815
|
93
|
+
corvic/transfer/__init__.py,sha256=NqxDZSYj08fdVU3L2ZGw0m3MveREqgxYr0vkPEVyUh0,936
|
94
|
+
corvic/transfer/_common_transformations.py,sha256=kJ0HxrPqzuB0V3jURfGiLsXGVm26qBkVivJgsosLrn4,1007
|
95
|
+
corvic/transfer/_orm_backed_proto.py,sha256=tjyAL7IxpmECo2n-rIx2npDtuWgG4k5y4pWT8kvxEMg,10426
|
96
|
+
corvic/transfer/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
93
97
|
corvic/version/__init__.py,sha256=JlkRLvKXsu3zIxhdynO_0Ub5NfQOvGjfwCRkNnaOu9U,1125
|
94
98
|
corvic/version/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
95
99
|
corvic/well_known_types/__init__.py,sha256=Btbeqieik2AcmijeOXeqBptzueBpgNitvH9J5VNm12w,1289
|
96
100
|
corvic/well_known_types/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
97
|
-
corvic_engine-0.3.
|
98
|
-
corvic_engine-0.3.
|
99
|
-
corvic_engine-0.3.
|
101
|
+
corvic_engine-0.3.0rc83.dist-info/METADATA,sha256=--8vmdHNbuoemxu-cAytJy-VzCMw1avbGlbtNlA0eY4,1828
|
102
|
+
corvic_engine-0.3.0rc83.dist-info/WHEEL,sha256=U8GAVPGuk_i_fNfXAys1dgH7mS1u7uA5UI-r13T9uEs,94
|
103
|
+
corvic_engine-0.3.0rc83.dist-info/licenses/LICENSE,sha256=DSS1OD0oIgssKOmAzkMRBv5jvvVuZQbrIv8lpl9DXY8,1035
|
100
104
|
corvic_generated/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
101
105
|
corvic_generated/algorithm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
102
106
|
corvic_generated/algorithm/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -169,8 +173,8 @@ corvic_generated/model/v1alpha/models_pb2_grpc.py,sha256=_bXoS025FcWrXR1E_3Mh4GH
|
|
169
173
|
corvic_generated/model/v1alpha/models_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
|
170
174
|
corvic_generated/orm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
171
175
|
corvic_generated/orm/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
172
|
-
corvic_generated/orm/v1/agent_pb2.py,sha256=
|
173
|
-
corvic_generated/orm/v1/agent_pb2.pyi,sha256=
|
176
|
+
corvic_generated/orm/v1/agent_pb2.py,sha256=vYQnRmeYHZvh8X6jLOljXj30Ibro30XP4k6jjobMmfA,4290
|
177
|
+
corvic_generated/orm/v1/agent_pb2.pyi,sha256=OW1SIqovfM4uxH4w8e-MMUDFfvw908Jop-HXPiIUPUw,5373
|
174
178
|
corvic_generated/orm/v1/agent_pb2_grpc.py,sha256=_bXoS025FcWrXR1E_3Mh4GHB1RMvgz8lIpit-Awnf-s,163
|
175
179
|
corvic_generated/orm/v1/agent_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
|
176
180
|
corvic_generated/orm/v1/common_pb2.py,sha256=pu1Rto4Pm8ntdB12Rgb_qnz3qOalxlOnrLuKE1fCETs,3490
|
@@ -207,4 +211,4 @@ corvic_generated/status/v1/service_pb2.py,sha256=CKXPX2ahq8O4cFhPpt6wo6l--6VZcgj
|
|
207
211
|
corvic_generated/status/v1/service_pb2.pyi,sha256=iXLR2FOKQJpBgvBzpD2kVwcYOCksP2aRwK4JYaI9CBw,558
|
208
212
|
corvic_generated/status/v1/service_pb2_grpc.py,sha256=y-a5ldrphWlNJW-yKswyjNmXokK4-5bbEEfczjagJHo,2736
|
209
213
|
corvic_generated/status/v1/service_pb2_grpc.pyi,sha256=OoAnaZ64FD0UTzPoRhYvQU8ecoilhHj3ySjSfHbVDaU,1501
|
210
|
-
corvic_engine-0.3.
|
214
|
+
corvic_engine-0.3.0rc83.dist-info/RECORD,,
|
@@ -14,7 +14,7 @@ _sym_db = _symbol_database.Default()
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x63orvic/orm/v1/agent.proto\x12\rcorvic.orm.v1\"\xf3\x01\n\x12\x45xecutorParameters\x12L\n\x15\x63ompletion_model_type\x18\x01 \x01(\x0e\x32\x18.corvic.orm.v1.ModelTypeR\x13\x63ompletionModelType\x12\x42\n\x1d\x63ompletion_system_instruction\x18\x02 \x01(\tR\x1b\x63ompletionSystemInstruction\x12\x33\n\x13\x63ompletion_model_id\x18\x03 \x01(\tH\x00R\x11\x63ompletionModelId\x88\x01\x01\x42\x16\n\x14_completion_model_id\"V\n\x10SpaceInstruction\x12 \n\x0binstruction\x18\x01 \x01(\tR\x0binstruction\x12 \n\x0cspace_run_id\x18\x02 \x01(\tR\nspaceRunId\"\
|
17
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x63orvic/orm/v1/agent.proto\x12\rcorvic.orm.v1\"\xf3\x01\n\x12\x45xecutorParameters\x12L\n\x15\x63ompletion_model_type\x18\x01 \x01(\x0e\x32\x18.corvic.orm.v1.ModelTypeR\x13\x63ompletionModelType\x12\x42\n\x1d\x63ompletion_system_instruction\x18\x02 \x01(\tR\x1b\x63ompletionSystemInstruction\x12\x33\n\x13\x63ompletion_model_id\x18\x03 \x01(\tH\x00R\x11\x63ompletionModelId\x88\x01\x01\x42\x16\n\x14_completion_model_id\"V\n\x10SpaceInstruction\x12 \n\x0binstruction\x18\x01 \x01(\tR\x0binstruction\x12 \n\x0cspace_run_id\x18\x02 \x01(\tR\nspaceRunId\"\xbc\x02\n\x16OrchestratorParameters\x12\x1b\n\tspace_ids\x18\x01 \x03(\tR\x08spaceIds\x12k\n\x12space_instructions\x18\x02 \x03(\x0b\x32<.corvic.orm.v1.OrchestratorParameters.SpaceInstructionsEntryR\x11spaceInstructions\x12\x31\n\x14workflow_instruction\x18\x03 \x01(\tR\x13workflowInstruction\x1a\x65\n\x16SpaceInstructionsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.corvic.orm.v1.SpaceInstructionR\x05value:\x02\x38\x01\"\xf6\x01\n\x0f\x41gentParameters\x12R\n\x13\x65xecutor_parameters\x18\x01 \x01(\x0b\x32!.corvic.orm.v1.ExecutorParametersR\x12\x65xecutorParameters\x12^\n\x17orchestrator_parameters\x18\x02 \x01(\x0b\x32%.corvic.orm.v1.OrchestratorParametersR\x16orchestratorParameters\x12/\n\x13persona_instruction\x18\x03 \x01(\tR\x12personaInstruction*\x80\x06\n\tModelType\x12\x1a\n\x16MODEL_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19MODEL_TYPE_GEMINI_1_5_PRO\x10\x01\x12%\n!MODEL_TYPE_GEMINI_1_5_PRO_PREVIEW\x10\x02\x12\x1f\n\x1bMODEL_TYPE_GEMINI_1_5_FLASH\x10\x03\x12\'\n#MODEL_TYPE_GEMINI_1_5_FLASH_PREVIEW\x10\x04\x12\'\n#MODEL_TYPE_GEMINI_2_0_FLASH_PREVIEW\x10\r\x12\x30\n,MODEL_TYPE_GEMINI_2_0_FLASH_THINKING_PREVIEW\x10\x10\x12\x1f\n\x1bMODEL_TYPE_GEMINI_2_0_FLASH\x10\x13\x12\x1b\n\x17MODEL_TYPE_GPT_4_O_MINI\x10\x05\x12\x16\n\x12MODEL_TYPE_GPT_4_O\x10\x06\x12\x1c\n\x18MODEL_TYPE_GPT_3_5_TURBO\x10\x07\x12\x12\n\x0eMODEL_TYPE_O_1\x10\x0e\x12\x17\n\x13MODEL_TYPE_O_1_MINI\x10\x0f\x12\x12\n\x0eMODEL_TYPE_O_3\x10\x17\x12\x17\n\x13MODEL_TYPE_O_3_MINI\x10\x12\x12\x17\n\x13MODEL_TYPE_O_4_MINI\x10\x18\x12\x16\n\x12MODEL_TYPE_GPT_4_1\x10\x14\x12\x1b\n\x17MODEL_TYPE_GPT_4_1_MINI\x10\x15\x12\x1b\n\x17MODEL_TYPE_GPT_4_1_NANO\x10\x16\x12 \n\x1cMODEL_TYPE_CLAUDE_3_5_SONNET\x10\x08\x12\x1d\n\x19MODEL_TYPE_CLAUDE_3_HAIKU\x10\t\x12\x1c\n\x18MODEL_TYPE_MISTRAL_LARGE\x10\n\x12\x1b\n\x17MODEL_TYPE_MISTRAL_NEMO\x10\x0b\x12 \n\x1cMODEL_TYPE_MISTRAL_CODESTRAL\x10\x0c\x12\x15\n\x11MODEL_TYPE_CUSTOM\x10\x11\x62\x06proto3')
|
18
18
|
|
19
19
|
_globals = globals()
|
20
20
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -23,16 +23,16 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
23
23
|
DESCRIPTOR._options = None
|
24
24
|
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._options = None
|
25
25
|
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._serialized_options = b'8\001'
|
26
|
-
_globals['_MODELTYPE']._serialized_start=
|
27
|
-
_globals['_MODELTYPE']._serialized_end=
|
26
|
+
_globals['_MODELTYPE']._serialized_start=947
|
27
|
+
_globals['_MODELTYPE']._serialized_end=1715
|
28
28
|
_globals['_EXECUTORPARAMETERS']._serialized_start=45
|
29
29
|
_globals['_EXECUTORPARAMETERS']._serialized_end=288
|
30
30
|
_globals['_SPACEINSTRUCTION']._serialized_start=290
|
31
31
|
_globals['_SPACEINSTRUCTION']._serialized_end=376
|
32
32
|
_globals['_ORCHESTRATORPARAMETERS']._serialized_start=379
|
33
|
-
_globals['_ORCHESTRATORPARAMETERS']._serialized_end=
|
34
|
-
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._serialized_start=
|
35
|
-
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._serialized_end=
|
36
|
-
_globals['_AGENTPARAMETERS']._serialized_start=
|
37
|
-
_globals['_AGENTPARAMETERS']._serialized_end=
|
33
|
+
_globals['_ORCHESTRATORPARAMETERS']._serialized_end=695
|
34
|
+
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._serialized_start=594
|
35
|
+
_globals['_ORCHESTRATORPARAMETERS_SPACEINSTRUCTIONSENTRY']._serialized_end=695
|
36
|
+
_globals['_AGENTPARAMETERS']._serialized_start=698
|
37
|
+
_globals['_AGENTPARAMETERS']._serialized_end=944
|
38
38
|
# @@protoc_insertion_point(module_scope)
|
@@ -78,7 +78,7 @@ class SpaceInstruction(_message.Message):
|
|
78
78
|
def __init__(self, instruction: _Optional[str] = ..., space_run_id: _Optional[str] = ...) -> None: ...
|
79
79
|
|
80
80
|
class OrchestratorParameters(_message.Message):
|
81
|
-
__slots__ = ("space_ids", "space_instructions")
|
81
|
+
__slots__ = ("space_ids", "space_instructions", "workflow_instruction")
|
82
82
|
class SpaceInstructionsEntry(_message.Message):
|
83
83
|
__slots__ = ("key", "value")
|
84
84
|
KEY_FIELD_NUMBER: _ClassVar[int]
|
@@ -88,14 +88,18 @@ class OrchestratorParameters(_message.Message):
|
|
88
88
|
def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[SpaceInstruction, _Mapping]] = ...) -> None: ...
|
89
89
|
SPACE_IDS_FIELD_NUMBER: _ClassVar[int]
|
90
90
|
SPACE_INSTRUCTIONS_FIELD_NUMBER: _ClassVar[int]
|
91
|
+
WORKFLOW_INSTRUCTION_FIELD_NUMBER: _ClassVar[int]
|
91
92
|
space_ids: _containers.RepeatedScalarFieldContainer[str]
|
92
93
|
space_instructions: _containers.MessageMap[str, SpaceInstruction]
|
93
|
-
|
94
|
+
workflow_instruction: str
|
95
|
+
def __init__(self, space_ids: _Optional[_Iterable[str]] = ..., space_instructions: _Optional[_Mapping[str, SpaceInstruction]] = ..., workflow_instruction: _Optional[str] = ...) -> None: ...
|
94
96
|
|
95
97
|
class AgentParameters(_message.Message):
|
96
|
-
__slots__ = ("executor_parameters", "orchestrator_parameters")
|
98
|
+
__slots__ = ("executor_parameters", "orchestrator_parameters", "persona_instruction")
|
97
99
|
EXECUTOR_PARAMETERS_FIELD_NUMBER: _ClassVar[int]
|
98
100
|
ORCHESTRATOR_PARAMETERS_FIELD_NUMBER: _ClassVar[int]
|
101
|
+
PERSONA_INSTRUCTION_FIELD_NUMBER: _ClassVar[int]
|
99
102
|
executor_parameters: ExecutorParameters
|
100
103
|
orchestrator_parameters: OrchestratorParameters
|
101
|
-
|
104
|
+
persona_instruction: str
|
105
|
+
def __init__(self, executor_parameters: _Optional[_Union[ExecutorParameters, _Mapping]] = ..., orchestrator_parameters: _Optional[_Union[OrchestratorParameters, _Mapping]] = ..., persona_instruction: _Optional[str] = ...) -> None: ...
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|