corvic-engine 0.3.0rc45__cp38-abi3-win_amd64.whl → 0.3.0rc47__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/engine/_native.pyd CHANGED
Binary file
corvic/model/_agent.py CHANGED
@@ -3,7 +3,8 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import copy
6
- from collections.abc import Sequence
6
+ import datetime
7
+ from collections.abc import Iterable, Sequence
7
8
  from typing import TypeAlias
8
9
 
9
10
  from sqlalchemy import orm as sa_orm
@@ -95,6 +96,39 @@ class Agent(BaseModel[AgentID, models_pb2.Agent, orm.Agent]):
95
96
  ),
96
97
  )
97
98
 
99
+ @classmethod
100
+ def from_proto(
101
+ cls, proto: models_pb2.Agent, client: system.Client | None = None
102
+ ) -> Agent:
103
+ client = client or Defaults.get_default_client()
104
+ return cls(client, proto)
105
+
106
+ @classmethod
107
+ def list(
108
+ cls,
109
+ *,
110
+ limit: int | None = None,
111
+ room_id: RoomID | None = None,
112
+ created_before: datetime.datetime | None = None,
113
+ client: system.Client | None = None,
114
+ ids: Iterable[AgentID] | None = None,
115
+ existing_session: sa_orm.Session | None = None,
116
+ ) -> Ok[list[Agent]] | NotFoundError | InvalidArgumentError:
117
+ """List agent models."""
118
+ client = client or Defaults.get_default_client()
119
+ match cls.list_as_proto(
120
+ client,
121
+ limit=limit,
122
+ room_id=room_id,
123
+ created_before=created_before,
124
+ ids=ids,
125
+ existing_session=existing_session,
126
+ ):
127
+ case NotFoundError() | InvalidArgumentError() as err:
128
+ return err
129
+ case Ok(protos):
130
+ return Ok([cls.from_proto(proto, client) for proto in protos])
131
+
98
132
  @property
99
133
  def name(self) -> str:
100
134
  return self.proto_self.name
@@ -206,7 +206,8 @@ class BaseModel(Generic[ID, _ProtoObj, OrmObj], UsesOrmID[ID, _ProtoObj]):
206
206
  try:
207
207
  _ = self.proto_to_orm(self.proto_self, session).unwrap_or_raise()
208
208
  session.flush()
209
- except sa.exc.DatabaseError as err:
209
+ # TODO(thunt): Possibly separate out DatabaseError into a precondition error
210
+ except (sa.exc.DatabaseError, sa.exc.StatementError) as err:
210
211
  return InvalidArgumentError.from_(err)
211
212
  return Ok(None)
212
213
 
@@ -386,6 +386,37 @@ def source_proto_to_orm(
386
386
  return Ok(_add_orm_to_session(orm_obj, proto_obj.org_id, session))
387
387
 
388
388
 
389
+ def _update_agent_associations(
390
+ agent: orm.Agent,
391
+ session: sa_orm.Session,
392
+ ) -> list[orm.SpaceID]:
393
+ associated_space_ids = list[orm.SpaceID]()
394
+ agent_id = agent.id
395
+ agent_parameters = agent.parameters
396
+ if not agent_id or not agent_parameters:
397
+ return associated_space_ids
398
+ for (
399
+ raw_space_id,
400
+ instruction,
401
+ ) in agent_parameters.orchestrator_parameters.space_instructions.items():
402
+ space_id = orm.SpaceID(raw_space_id)
403
+ space_run_id = (
404
+ orm.SpaceRunID(instruction.space_run_id)
405
+ if instruction.space_run_id
406
+ else None
407
+ )
408
+ associated_space_ids.append(space_id)
409
+ session.merge(
410
+ orm.AgentSpaceAssociation(
411
+ room_id=agent.room_id,
412
+ agent_id=agent_id,
413
+ space_id=space_id,
414
+ space_run_id=space_run_id,
415
+ )
416
+ )
417
+ return associated_space_ids
418
+
419
+
389
420
  def agent_proto_to_orm(
390
421
  proto_obj: models_pb2.Agent, session: sa_orm.Session
391
422
  ) -> Ok[orm.Agent] | orm.InvalidORMIdentifierError | InvalidArgumentError:
@@ -403,7 +434,18 @@ def agent_proto_to_orm(
403
434
  parameters=proto_obj.agent_parameters,
404
435
  room_id=room_id,
405
436
  )
406
- return Ok(_add_orm_to_session(orm_obj, proto_obj.org_id, session))
437
+ agent = _add_orm_to_session(orm_obj, proto_obj.org_id, session)
438
+ session.flush()
439
+
440
+ if not agent.id:
441
+ return InvalidArgumentError("failed to add agent to session")
442
+ associated_space_ids = _update_agent_associations(agent, session)
443
+ session.execute(
444
+ sa.delete(orm.AgentSpaceAssociation)
445
+ .where(orm.AgentSpaceAssociation.agent_id == agent.id)
446
+ .where(orm.AgentSpaceAssociation.space_id.not_in(associated_space_ids))
447
+ )
448
+ return Ok(agent)
407
449
 
408
450
 
409
451
  def space_proto_to_orm(
@@ -650,6 +692,11 @@ def resource_delete_orms(
650
692
  def agent_delete_orms(
651
693
  ids: Sequence[orm.AgentID], session: orm.Session
652
694
  ) -> Ok[None] | InvalidArgumentError:
695
+ session.execute(
696
+ sa.delete(orm.AgentSpaceAssociation).where(
697
+ orm.AgentSpaceAssociation.agent_id.in_(ids)
698
+ )
699
+ )
653
700
  session.execute(sa.delete(orm.Agent).where(orm.Agent.id.in_(ids)))
654
701
  return Ok(None)
655
702
 
@@ -718,12 +765,14 @@ def room_delete_orms(
718
765
  ids: Sequence[orm.RoomID], session: orm.Session
719
766
  ) -> Ok[None] | InvalidArgumentError:
720
767
  source_refs = list(
721
- session.scalars(sa.select(orm.Source).where(orm.Source.room_id == ids).limit(1))
768
+ session.scalars(
769
+ sa.select(orm.Source).where(orm.Source.room_id.in_(ids)).limit(1)
770
+ )
722
771
  )
723
772
  if source_refs:
724
773
  return InvalidArgumentError("cannot delete a room that still has sources")
725
774
 
726
- session.execute(sa.delete(orm.Room).where(orm.Room.id == ids))
775
+ session.execute(sa.delete(orm.Room).where(orm.Room.id.in_(ids)))
727
776
  return Ok(None)
728
777
 
729
778
 
corvic/orm/__init__.py CHANGED
@@ -4,7 +4,6 @@ from __future__ import annotations
4
4
 
5
5
  import sqlalchemy as sa
6
6
  from sqlalchemy import orm as sa_orm
7
- from sqlalchemy.orm.collections import attribute_mapped_collection
8
7
 
9
8
  from corvic.orm._proto_columns import ProtoMessageDecorator
10
9
  from corvic.orm.base import Base, OrgBase
@@ -287,14 +286,6 @@ class Space(BelongsToOrgMixin, BelongsToRoomMixin, Base):
287
286
  viewonly=True,
288
287
  )
289
288
 
290
- agent_associations: sa_orm.Mapped[list[AgentSpaceAssociation]] = (
291
- sa_orm.relationship(
292
- init=False,
293
- viewonly=True,
294
- default_factory=list,
295
- )
296
- )
297
-
298
289
  @property
299
290
  def space_key(self):
300
291
  return self.name
@@ -351,12 +342,6 @@ class Agent(SoftDeleteMixin, BelongsToOrgMixin, BelongsToRoomMixin, Base):
351
342
  parameters: sa_orm.Mapped[agent_pb2.AgentParameters | None] = sa_orm.mapped_column(
352
343
  default=None
353
344
  )
354
- messages: sa_orm.Mapped[dict[str, MessageEntry]] = sa_orm.relationship(
355
- collection_class=attribute_mapped_collection("entry_id"),
356
- default_factory=dict,
357
- init=False,
358
- viewonly=True,
359
- )
360
345
 
361
346
  space_associations: sa_orm.Mapped[list[AgentSpaceAssociation]] = (
362
347
  sa_orm.relationship(default_factory=list, init=False, viewonly=True)
@@ -366,91 +351,15 @@ class Agent(SoftDeleteMixin, BelongsToOrgMixin, BelongsToRoomMixin, Base):
366
351
  class AgentSpaceAssociation(BelongsToOrgMixin, BelongsToRoomMixin, Base):
367
352
  __tablename__ = "agent_space_association"
368
353
 
354
+ space_run_id: sa_orm.Mapped[SpaceRunID | None] = sa_orm.mapped_column(
355
+ ForeignKey(SpaceRun).make()
356
+ )
369
357
  agent_id: sa_orm.Mapped[AgentID] = primary_key_foreign_column(
370
- ForeignKey(Agent).make()
358
+ ForeignKey(Agent).make(ondelete="CASCADE")
371
359
  )
372
360
  space_id: sa_orm.Mapped[SpaceID] = primary_key_foreign_column(
373
361
  ForeignKey(Space).make()
374
362
  )
375
- space: sa_orm.Mapped[Space] = sa_orm.relationship(
376
- back_populates="agent_associations", init=False, viewonly=True
377
- )
378
-
379
-
380
- class UserMessage(SoftDeleteMixin, BelongsToOrgMixin, BelongsToRoomMixin, Base):
381
- """A message sent by an user."""
382
-
383
- __tablename__ = "user_message"
384
-
385
- message_entry: sa_orm.Mapped[MessageEntry] = sa_orm.relationship(
386
- init=True, default=None
387
- )
388
-
389
- id: sa_orm.Mapped[UserMessageID | None] = primary_key_identity_column()
390
-
391
- message: sa_orm.Mapped[str | None] = sa_orm.mapped_column(sa.Text, default=None)
392
-
393
-
394
- class AgentMessage(SoftDeleteMixin, BelongsToOrgMixin, BelongsToRoomMixin, Base):
395
- """A message sent by an agent."""
396
-
397
- __tablename__ = "agent_message"
398
- message_metadata: sa_orm.Mapped[common_pb2.AgentMessageMetadata | None] = (
399
- sa_orm.mapped_column(
400
- default_factory=lambda: common_pb2.AgentMessageMetadata(
401
- message_reaction=common_pb2.MessageReaction.MESSAGE_REACTION_UNSPECIFIED
402
- )
403
- )
404
- )
405
- id: sa_orm.Mapped[AgentMessageID | None] = primary_key_identity_column()
406
-
407
- message_entry: sa_orm.Mapped[MessageEntry] = sa_orm.relationship(
408
- init=True, default=None
409
- )
410
-
411
- user_message_id: sa_orm.Mapped[UserMessageID | None] = sa_orm.mapped_column(
412
- ForeignKey(UserMessage).make(ondelete="CASCADE"), init=True, default=None
413
- )
414
- message: sa_orm.Mapped[str | None] = sa_orm.mapped_column(sa.Text, default=None)
415
- policy: sa_orm.Mapped[str | None] = sa_orm.mapped_column(sa.Text, default=None)
416
- context: sa_orm.Mapped[str | None] = sa_orm.mapped_column(sa.Text, default=None)
417
- retrieved_entities: sa_orm.Mapped[common_pb2.RetrievedEntities | None] = (
418
- sa_orm.mapped_column(default=None)
419
- )
420
-
421
-
422
- class MessageEntry(SoftDeleteMixin, BelongsToOrgMixin, BelongsToRoomMixin, Base):
423
- """A message either sent by an Agent or an User."""
424
-
425
- __tablename__ = "message_entry"
426
-
427
- id: sa_orm.Mapped[MessageEntryID | None] = primary_key_identity_column()
428
-
429
- agent_id: sa_orm.Mapped[AgentID] = sa_orm.mapped_column(
430
- ForeignKey(Agent).make(ondelete="CASCADE"),
431
- nullable=True,
432
- init=True,
433
- default=None,
434
- )
435
-
436
- agent_message_id: sa_orm.Mapped[AgentMessageID | None] = sa_orm.mapped_column(
437
- ForeignKey(AgentMessage).make(ondelete="CASCADE"), default=None
438
- )
439
- user_message_id: sa_orm.Mapped[UserMessageID | None] = sa_orm.mapped_column(
440
- ForeignKey(UserMessage).make(ondelete="CASCADE"), default=None
441
- )
442
-
443
- agent_message: sa_orm.Mapped[AgentMessage | None] = sa_orm.relationship(
444
- back_populates="message_entry", init=True, default=None
445
- )
446
-
447
- user_message: sa_orm.Mapped[UserMessage | None] = sa_orm.relationship(
448
- back_populates="message_entry", init=True, default=None
449
- )
450
-
451
- @property
452
- def entry_id(self):
453
- return self.id
454
363
 
455
364
 
456
365
  class CompletionModel(SoftDeleteMixin, BelongsToOrgMixin, Base):
@@ -494,7 +403,6 @@ ID = (
494
403
  __all__ = [
495
404
  "Agent",
496
405
  "AgentID",
497
- "AgentMessage",
498
406
  "AgentMessageID",
499
407
  "Base",
500
408
  "BaseID",
@@ -510,7 +418,6 @@ __all__ = [
510
418
  "FeatureViewSourceID",
511
419
  "ID",
512
420
  "InvalidORMIdentifierError",
513
- "MessageEntry",
514
421
  "MessageEntryID",
515
422
  "Org",
516
423
  "OrgID",
@@ -530,7 +437,6 @@ __all__ = [
530
437
  "SpaceParametersID",
531
438
  "SpaceRun",
532
439
  "SpaceRunID",
533
- "UserMessage",
534
440
  "UserMessageID",
535
441
  "primary_key_foreign_column",
536
442
  "primary_key_identity_column",
@@ -1,11 +1,13 @@
1
1
  import base64
2
2
  import datetime
3
3
  import decimal
4
+ import math
4
5
  from collections.abc import Callable, Iterable, Mapping
5
- from typing import Final, TypeAlias, cast
6
+ from typing import Any, Final, TypeAlias, cast
6
7
 
7
8
  import pyarrow as pa
8
9
  from google.protobuf import struct_pb2
10
+ from pyarrow.lib import ArrowException
9
11
 
10
12
  from corvic.pa_scalar._temporal import (
11
13
  MonthDayNanoFrac,
@@ -118,11 +120,17 @@ def _visit_uint64(
118
120
  return struct_pb2.Value(string_value=str(value))
119
121
 
120
122
 
123
+ def _is_invalid_float(value: float):
124
+ return math.isnan(value) or math.isinf(value)
125
+
126
+
121
127
  def _visit_float16(
122
128
  value: _PyValue,
123
129
  dtype: pa.DataType,
124
130
  ) -> struct_pb2.Value:
125
131
  value = cast(float, value)
132
+ if _is_invalid_float(value):
133
+ return _visit_null(value, pa.null())
126
134
  return struct_pb2.Value(number_value=value)
127
135
 
128
136
 
@@ -131,6 +139,8 @@ def _visit_float32(
131
139
  dtype: pa.DataType,
132
140
  ) -> struct_pb2.Value:
133
141
  value = cast(float, value)
142
+ if _is_invalid_float(value):
143
+ return _visit_null(value, pa.null())
134
144
  return struct_pb2.Value(number_value=value)
135
145
 
136
146
 
@@ -139,6 +149,8 @@ def _visit_float64(
139
149
  dtype: pa.DataType,
140
150
  ) -> struct_pb2.Value:
141
151
  value = cast(float, value)
152
+ if _is_invalid_float(value):
153
+ return _visit_null(value, pa.null())
142
154
  return struct_pb2.Value(number_value=value)
143
155
 
144
156
 
@@ -412,6 +424,8 @@ def to_value(
412
424
  case int():
413
425
  return struct_pb2.Value(string_value=str(scalar))
414
426
  case float():
427
+ if _is_invalid_float(scalar):
428
+ return to_value(None)
415
429
  return struct_pb2.Value(number_value=scalar)
416
430
  case str():
417
431
  return struct_pb2.Value(string_value=scalar)
@@ -424,6 +438,36 @@ def to_value(
424
438
  return _visit(value, scalar.type)
425
439
 
426
440
 
441
+ def _to_py(scalar: Scalar) -> Any:
442
+ try:
443
+ # This scalar might have malformed binary data that's incorrectly typed
444
+ # as string (e.g. non-utf-8 strings), so skip it
445
+ scalar.validate(full=True)
446
+ return scalar.as_py()
447
+ except ArrowException:
448
+ # To create examples that hit this code path, one needs to create a
449
+ # pyarrow.BinaryArray and then cast it to a StringArray but also supply
450
+ # a CastOptions with allow_invalid_utf8 set to True.
451
+ # TODO(aneesh): also check pa.types.is_dictionary
452
+ if (
453
+ pa.types.is_list(scalar.type)
454
+ or pa.types.is_large_list(scalar.type)
455
+ or pa.types.is_fixed_size_list(scalar.type)
456
+ ):
457
+ lscalar = cast(pa.ListScalar[Any], scalar)
458
+ return [_to_py(v) for v in lscalar.values] # noqa: PD011 # type: ignore[unknownMemberType]
459
+ if pa.types.is_map(scalar.type):
460
+ mscalar = cast(pa.MapScalar[Any, Any], scalar)
461
+ return {
462
+ res["key"]: res["value"]
463
+ for res in [_to_py(v) for v in mscalar.values] # noqa: PD011 # type: ignore[unknownMemberType]
464
+ }
465
+ if pa.types.is_struct(scalar.type):
466
+ sscalar = cast(pa.StructScalar, scalar)
467
+ return {k: _to_py(sscalar[k]) for k in sscalar}
468
+ return None
469
+
470
+
427
471
  def batch_to_structs(
428
472
  batch: pa.RecordBatch,
429
473
  ) -> list[struct_pb2.Struct]:
@@ -432,7 +476,8 @@ def batch_to_structs(
432
476
  field_by_name = {field.name: field for field in schema}
433
477
 
434
478
  ret: list[struct_pb2.Struct] = []
435
- for row in batch.to_pylist():
479
+ for pa_row in batch.to_struct_array():
480
+ row = _to_py(cast(Scalar, pa_row))
436
481
  fields = {
437
482
  col_name: _visit(v, field_by_name[col_name].type)
438
483
  for col_name, v in row.items()
@@ -39,3 +39,5 @@ class Scalar(Protocol):
39
39
  def equals(self, other: Any) -> bool: ...
40
40
 
41
41
  def as_py(self) -> Any: ...
42
+
43
+ def validate(self, *, full: bool = False) -> bool | None: ...
corvic/system/storage.py CHANGED
@@ -102,7 +102,7 @@ class Bucket(Protocol):
102
102
 
103
103
  def create(self) -> None: ...
104
104
 
105
- def list_blobs(self) -> Iterator[Blob]: ...
105
+ def list_blobs(self, prefix: str | None = None) -> Iterator[Blob]: ...
106
106
 
107
107
 
108
108
  class DataKindManager:
@@ -228,10 +228,16 @@ class FSBucket:
228
228
  def create(self) -> None:
229
229
  return self.path().mkdir()
230
230
 
231
- def list_blobs(self) -> Iterator[FSBlob]:
231
+ def list_blobs(self, prefix: str | None = None) -> Iterator[FSBlob]:
232
232
  for entry in self.path().glob("*"):
233
- if not entry.name.endswith(".metadata"):
234
- yield FSBlob.from_path(self, entry)
233
+ if entry.name.endswith(".metadata"):
234
+ continue
235
+ true_name = base64.urlsafe_b64decode(entry.name.encode("utf-8")).decode(
236
+ "utf-8"
237
+ )
238
+ if prefix and not true_name.startswith(prefix):
239
+ continue
240
+ yield FSBlob.from_path(self, entry)
235
241
 
236
242
  def path(self) -> Path:
237
243
  return self.client.root() / self.name
@@ -277,14 +277,15 @@ class RDBMSBucket:
277
277
  session.add(ORMBucket(name=self._name))
278
278
  session.commit()
279
279
 
280
- def list_blobs(self) -> Iterator[RDBMSBlob]:
280
+ def list_blobs(self, prefix: str | None = None) -> Iterator[RDBMSBlob]:
281
281
  def get_blobs():
282
282
  with self._client.db_session() as session:
283
283
  orm_self = self._to_orm(session)
284
284
  if not orm_self:
285
285
  raise ValueError("bucket does not exist")
286
286
  for blob in orm_self.blobs:
287
- yield RDBMSBlob(self, blob.name)
287
+ if not prefix or blob.name.startswith(prefix):
288
+ yield RDBMSBlob(self, blob.name)
288
289
 
289
290
  return iter(list(get_blobs()))
290
291
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: corvic-engine
3
- Version: 0.3.0rc45
3
+ Version: 0.3.0rc47
4
4
  Classifier: Environment :: Console
5
5
  Classifier: License :: Other/Proprietary License
6
6
  Classifier: Programming Language :: Python :: Implementation :: CPython
@@ -1,6 +1,6 @@
1
- corvic_engine-0.3.0rc45.dist-info/METADATA,sha256=yHt7aIKRrl0-UfwUTk3w-pG13PTQCdo2mz02nSPtcCA,1876
2
- corvic_engine-0.3.0rc45.dist-info/WHEEL,sha256=_g1M2QM3kt1Ssm_sHOg_3TUY7GxNE2Ueyslb9ZDtPwk,94
3
- corvic_engine-0.3.0rc45.dist-info/licenses/LICENSE,sha256=DSS1OD0oIgssKOmAzkMRBv5jvvVuZQbrIv8lpl9DXY8,1035
1
+ corvic_engine-0.3.0rc47.dist-info/METADATA,sha256=DACl2w5jIjPNPHgd9k7VlUxQUC0fi2pN3UewAPoY4f8,1876
2
+ corvic_engine-0.3.0rc47.dist-info/WHEEL,sha256=_g1M2QM3kt1Ssm_sHOg_3TUY7GxNE2Ueyslb9ZDtPwk,94
3
+ corvic_engine-0.3.0rc47.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=JnYb8f2g4XhF6LL2TjpMxLfKhn_Yp1AzptsWwrKQWgc,11146
@@ -13,15 +13,15 @@ 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/_agent.py,sha256=WGdxu0oLHU7EEgBOMQ0UOnH2AIIUGfeH6VSQZgC0kEk,3621
17
- corvic/model/_base_model.py,sha256=m4JkZu8QAoQEeHqzpMUlH08PGOjVZbqld4Rm0uW73QQ,8225
16
+ corvic/model/_agent.py,sha256=8qmi1x1pBQCXgz7Zr2YdrWRHRZkbp63cyJw7j9OvqQY,4818
17
+ corvic/model/_base_model.py,sha256=qRTZBBHdkqMH6xqX1FwtTm4cWFC4aPDktJeGyxyxtpk,8336
18
18
  corvic/model/_completion_model.py,sha256=uoqF7hwxzGXXqSPZT_CIcNBSDmYhcxMotpGPucWH6Q0,6656
19
19
  corvic/model/_defaults.py,sha256=yoKPPSmYJCE5YAD5jLTEmT4XNf_zXoggNK-uyG8MfVs,1524
20
20
  corvic/model/_errors.py,sha256=Ctlq04SDwHzJPvLaL1rzqzwVqf2b50EILfW3cH4vnh8,261
21
21
  corvic/model/_feature_type.py,sha256=Y-_-wa9fv7XaCAkxfjjoCLxxK2Ftfba-PMefD7bNXzs,917
22
22
  corvic/model/_feature_view.py,sha256=kM8kMzb1oxAgIOMVmv6twZ-JLeP2NopdsKHCiKjuNIE,49700
23
23
  corvic/model/_pipeline.py,sha256=A_q_nWm6UBN-AKlbQkhWNMG2r-uW0IR6vGJbhYv7z3k,17578
24
- corvic/model/_proto_orm_convert.py,sha256=6CWe_b-L7JBS4Pb_SjUeuiuczWh-nPw0jElQIMOl_UA,25029
24
+ corvic/model/_proto_orm_convert.py,sha256=rq4SJYsTCHyOkZswI9FYfj1Ne9Heed117ii89ChjPvc,26607
25
25
  corvic/model/_resource.py,sha256=O93gy2r4HjsZzVUahrGbLGmxI7sfSVQCvwvCLN3nSXQ,7097
26
26
  corvic/model/_room.py,sha256=57MiBfj8hZcmUfq2PeECrOWDpBZAOSjnVqNUIGXOy2Q,2898
27
27
  corvic/model/_source.py,sha256=JBCk1I6u_rUKPiB4Fvtl7uVm0Jx0LF1oWNd1-Wn_sbI,9412
@@ -50,13 +50,13 @@ corvic/orm/keys.py,sha256=Ag6Xbpvxev-VByT1KJ8ChUn9vKVEzkkMXxrjvtADCtY,2182
50
50
  corvic/orm/mixins.py,sha256=HfmzJ7LblHtddbbkDmv7nNWURL87Bnj8NeOnNbfmSN4,17794
51
51
  corvic/orm/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
52
  corvic/orm/_proto_columns.py,sha256=tcOu92UjFJFYZLasS6sWJQBDRK26yrnmpTii_LDY4iw,913
53
- corvic/orm/__init__.py,sha256=iDEAq3VGvJeR5rrQOeia728cM8pHogaKwyNGc5mmav0,17827
53
+ corvic/orm/__init__.py,sha256=rOYy3hi3fVbAkXIoJ5NZLDz3uHdw3Bko2ZpRDtb3Fkg,14449
54
54
  corvic/pa_scalar/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
55
  corvic/pa_scalar/_const.py,sha256=1nk6w3Y7crd3J5jSCq7DRVa1lcGk4H1RUr1l4NjnlzE,868
56
56
  corvic/pa_scalar/_from_value.py,sha256=fS3TNPcPI3jAKGmcUIhn8rdqdQEAwgTLEneVxFUeK6M,27531
57
57
  corvic/pa_scalar/_temporal.py,sha256=HPL1z5k4frIiGWM469YGj9j0hCPXNHtI_X1jk1y1c1Q,7842
58
- corvic/pa_scalar/_to_value.py,sha256=F11uEikSft9AahBqA7aHmvHObwsTqoZN90KC4ucbem0,11574
59
- corvic/pa_scalar/_types.py,sha256=73dusgldts4o8j-FgoKjER9malSlMbGVrD4hP3mflWE,1062
58
+ corvic/pa_scalar/_to_value.py,sha256=C1l-BVsS4Rs_KL8hVPllpzjP0NVVwfaOb0WM2pjZhoA,13476
59
+ corvic/pa_scalar/_types.py,sha256=shbytO0ji-H2rBOX_1fooVOshb22wwkVU1W99VBKz1A,1131
60
60
  corvic/pa_scalar/__init__.py,sha256=1nfc0MFGpw78RQEI13VE5hpHuyw_DoE7sJbmzqx5pws,1063
61
61
  corvic/proto_wrapper/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
62
  corvic/proto_wrapper/_errors.py,sha256=0HFmBK9EGYi4lXJ3RFsktHoPZn2m3cMKroI0Eir0JcM,114
@@ -72,7 +72,7 @@ corvic/system/in_memory_executor.py,sha256=dYgcxbA_O0mM1pI19t2OXs8q5B4TX-NFacR7T
72
72
  corvic/system/op_graph_executor.py,sha256=gXFnVkemS5EwNegJdU-xVAfMLPULqMFPF7d3EG3AD_U,3482
73
73
  corvic/system/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
74
  corvic/system/staging.py,sha256=K5P5moiuAMfPx7lxK4mArxeURBwKoyB6x9HGu9JJ16E,1846
75
- corvic/system/storage.py,sha256=y7NKArf9104S6muHpxDXL8uNp7toFBXRQlikNAfdR4Q,5644
75
+ corvic/system/storage.py,sha256=N4lXnoCFPg8JbUaI9fbpPY0nt3CgXFUc8sZteki_nRk,5671
76
76
  corvic/system/_dimension_reduction.py,sha256=vyD8wOs0vE-hlVnCrBTjStTowAPWYREqnQ_bVuGYvis,2907
77
77
  corvic/system/_embedder.py,sha256=0WO24IKi8VC8jsFdvNuzDsgNejyacQf6r9Q34jxhHc4,3844
78
78
  corvic/system/_image_embedder.py,sha256=iQc3KlLcqrhP6K84hncHutThAN8Qd6K7K5dceHyU1TU,8373
@@ -80,9 +80,9 @@ corvic/system/_planner.py,sha256=HUf6UjCy1iHRrXfhU25w19TG4Ik3zVHhtzVcor0eTQY,788
80
80
  corvic/system/_text_embedder.py,sha256=LH79_4RxhvssySHpkeEoZFgM4Sa5XAYSjoytdsuwWK4,3269
81
81
  corvic/system/__init__.py,sha256=DBzMQ1QCO0OHo3w2LoibfgN1X3CLGBUxXjiExN2kyi0,2838
82
82
  corvic/system_sqlite/client.py,sha256=ntDJtCDG1SDGUKI-BhCju4sdqd59Y8RucGZ8VmRvHuI,7142
83
- corvic/system_sqlite/fs_blob_store.py,sha256=7CS2lq1WXNeB5f7lNU-eLNFM-D_B1hwMnCeq8nyIZ_E,8203
83
+ corvic/system_sqlite/fs_blob_store.py,sha256=pYTMPiWYC6AUIdcgmRj8lvL7Chg82rf5dac6bKGaqL0,8461
84
84
  corvic/system_sqlite/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
- corvic/system_sqlite/rdbms_blob_store.py,sha256=4eSEve0ee8wZYXtMIl1dIthUQ4iJ27WS6GBcrL4XPqk,10464
85
+ corvic/system_sqlite/rdbms_blob_store.py,sha256=gTP_tQfTVb3wzZkzo8ys1zaz0rSrERzb57rqMHVpuBA,10563
86
86
  corvic/system_sqlite/staging.py,sha256=9chn6iXGmKAsurdiBzo0FSTyOmeDn7oCIq8fekbK67c,16878
87
87
  corvic/system_sqlite/__init__.py,sha256=MQCUux08NcxFLghpWcZ95lt5AMabr-6sJRH-eSsTnqI,229
88
88
  corvic/table/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -156,7 +156,7 @@ corvic_generated/ingest/v2/table_pb2.py,sha256=aTJHaliZm5DMtp7gslNxyn9uDagz-2-_e
156
156
  corvic_generated/ingest/v2/table_pb2_grpc.py,sha256=tVs7wMWyAfvHcCQEiUOHLwaptKxgMFG6E7Ki9vNmmvQ,8151
157
157
  corvic_generated/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
158
158
  corvic_generated/model/v1alpha/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
159
- corvic_generated/model/v1alpha/models_pb2.py,sha256=PZhKYVfK1bgoYgKKoYwQ4KUbMTtmVlE1zhcQ8X8rR9w,10899
159
+ corvic_generated/model/v1alpha/models_pb2.py,sha256=ncqP8kRV14sjRbL9KIjPB79J-eVFVULCNE1qq7RAMx0,8892
160
160
  corvic_generated/model/v1alpha/models_pb2_grpc.py,sha256=_bXoS025FcWrXR1E_3Mh4GHB1RMvgz8lIpit-Awnf-s,163
161
161
  corvic_generated/orm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
162
162
  corvic_generated/orm/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -220,7 +220,7 @@ corvic_generated/ingest/v2/source_pb2.pyi,sha256=k7FdbgurQLk0JA1WiTUerznzxLv8b50
220
220
  corvic_generated/ingest/v2/source_pb2_grpc.pyi,sha256=VG5gpql2SREHgqMC_ycT-QJBVpPeSYKOYS2COgGrZa4,6195
221
221
  corvic_generated/ingest/v2/table_pb2.pyi,sha256=p22F8kv0HfM-9OzGP88bLofxmUtxfLR5eVN0HOxXiEo,4382
222
222
  corvic_generated/ingest/v2/table_pb2_grpc.pyi,sha256=AEXYNtrU4xyENumcCrkD2FmFV7T1UVidxxeZ5pyE4Qc,4554
223
- corvic_generated/model/v1alpha/models_pb2.pyi,sha256=-HUawjooxKuzlkQTkIKzRIZN7F0qBNAl7azdqKlw60M,14386
223
+ corvic_generated/model/v1alpha/models_pb2.pyi,sha256=eKV5BlocI0MRQuzPVN4eGFrjysyPco2dyszFo7s66ys,11462
224
224
  corvic_generated/model/v1alpha/models_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
225
225
  corvic_generated/orm/v1/agent_pb2.pyi,sha256=9AExLKFRvOJ1fSaOdZc3Src015uvNl-le2lSPatZjSQ,4575
226
226
  corvic_generated/orm/v1/agent_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
@@ -244,5 +244,5 @@ corvic_generated/status/v1/event_pb2.pyi,sha256=eU-ibrYpvEAJSIDlSa62-bC96AQU1ykF
244
244
  corvic_generated/status/v1/event_pb2_grpc.pyi,sha256=H9-ADaiKR9iyVZvmnXutZqWwRRCDxjUIktkfJrJFIHg,417
245
245
  corvic_generated/status/v1/service_pb2.pyi,sha256=iXLR2FOKQJpBgvBzpD2kVwcYOCksP2aRwK4JYaI9CBw,558
246
246
  corvic_generated/status/v1/service_pb2_grpc.pyi,sha256=OoAnaZ64FD0UTzPoRhYvQU8ecoilhHj3ySjSfHbVDaU,1501
247
- corvic/engine/_native.pyd,sha256=tqs1zEZzUSxpYJMFNawLRjHfuc7Mnb2BzcaW7bIgujg,438272
248
- corvic_engine-0.3.0rc45.dist-info/RECORD,,
247
+ corvic/engine/_native.pyd,sha256=mlFXn3uT-o8-APpr9ihxwWATcd-mdiSGtZvkGcoJibs,438272
248
+ corvic_engine-0.3.0rc47.dist-info/RECORD,,
@@ -13,18 +13,16 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
  from corvic_generated.orm.v1 import agent_pb2 as corvic_dot_orm_dot_v1_dot_agent__pb2
16
- from corvic_generated.orm.v1 import common_pb2 as corvic_dot_orm_dot_v1_dot_common__pb2
17
16
  from corvic_generated.orm.v1 import completion_model_pb2 as corvic_dot_orm_dot_v1_dot_completion__model__pb2
18
17
  from corvic_generated.orm.v1 import feature_view_pb2 as corvic_dot_orm_dot_v1_dot_feature__view__pb2
19
18
  from corvic_generated.orm.v1 import pipeline_pb2 as corvic_dot_orm_dot_v1_dot_pipeline__pb2
20
19
  from corvic_generated.orm.v1 import space_pb2 as corvic_dot_orm_dot_v1_dot_space__pb2
21
20
  from corvic_generated.orm.v1 import table_pb2 as corvic_dot_orm_dot_v1_dot_table__pb2
22
21
  from corvic_generated.status.v1 import event_pb2 as corvic_dot_status_dot_v1_dot_event__pb2
23
- from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
24
22
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
25
23
 
26
24
 
27
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!corvic/model/v1alpha/models.proto\x12\x14\x63orvic.model.v1alpha\x1a\x19\x63orvic/orm/v1/agent.proto\x1a\x1a\x63orvic/orm/v1/common.proto\x1a$corvic/orm/v1/completion_model.proto\x1a corvic/orm/v1/feature_view.proto\x1a\x1c\x63orvic/orm/v1/pipeline.proto\x1a\x19\x63orvic/orm/v1/space.proto\x1a\x19\x63orvic/orm/v1/table.proto\x1a\x1c\x63orvic/status/v1/event.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x90\x01\n\x04Room\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x15\n\x06org_id\x18\x03 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xa8\x03\n\x08Resource\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1b\n\tmime_type\x18\x04 \x01(\tR\x08mimeType\x12\x10\n\x03url\x18\x05 \x01(\tR\x03url\x12\x12\n\x04size\x18\x06 \x01(\x04R\x04size\x12\x10\n\x03md5\x18\x07 \x01(\tR\x03md5\x12#\n\roriginal_path\x18\x08 \x01(\tR\x0coriginalPath\x12\x17\n\x07room_id\x18\t \x01(\tR\x06roomId\x12\x15\n\x06org_id\x18\x0b \x01(\tR\x05orgId\x12\x1f\n\x0bpipeline_id\x18\r \x01(\tR\npipelineId\x12<\n\rrecent_events\x18\x0e \x03(\x0b\x32\x17.corvic.status.v1.EventR\x0crecentEvents\x12>\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\x91\x02\n\x06Source\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x43\n\x0etable_op_graph\x18\x03 \x01(\x0b\x32\x1d.corvic.orm.v1.TableComputeOpR\x0ctableOpGraph\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12\x15\n\x06org_id\x18\x06 \x01(\tR\x05orgId\x12\x1f\n\x0bpipeline_id\x18\x08 \x01(\tR\npipelineId\x12>\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xa9\x05\n\x08Pipeline\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\t \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x03 \x01(\tR\x06roomId\x12[\n\x0fresource_inputs\x18\x04 \x03(\x0b\x32\x32.corvic.model.v1alpha.Pipeline.ResourceInputsEntryR\x0eresourceInputs\x12X\n\x0esource_outputs\x18\x05 \x03(\x0b\x32\x31.corvic.model.v1alpha.Pipeline.SourceOutputsEntryR\rsourceOutputs\x12^\n\x17pipeline_transformation\x18\x06 \x01(\x0b\x32%.corvic.orm.v1.PipelineTransformationR\x16pipelineTransformation\x12\x15\n\x06org_id\x18\x07 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x1a\x61\n\x13ResourceInputsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x34\n\x05value\x18\x02 \x01(\x0b\x32\x1e.corvic.model.v1alpha.ResourceR\x05value:\x02\x38\x01\x1a^\n\x12SourceOutputsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x32\n\x05value\x18\x02 \x01(\x0b\x32\x1c.corvic.model.v1alpha.SourceR\x05value:\x02\x38\x01\x42\r\n\x0b_created_at\"\xca\x02\n\x11\x46\x65\x61tureViewSource\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x34\n\x06source\x18\x02 \x01(\x0b\x32\x1c.corvic.model.v1alpha.SourceR\x06source\x12\x43\n\x0etable_op_graph\x18\x03 \x01(\x0b\x32\x1d.corvic.orm.v1.TableComputeOpR\x0ctableOpGraph\x12+\n\x11\x64rop_disconnected\x18\x04 \x01(\x08R\x10\x64ropDisconnected\x12\x15\n\x06org_id\x18\x05 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x12\x17\n\x07room_id\x18\x07 \x01(\tR\x06roomIdB\r\n\x0b_created_at\"\x9c\x03\n\x0b\x46\x65\x61tureView\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12P\n\x13\x66\x65\x61ture_view_output\x18\x05 \x01(\x0b\x32 .corvic.orm.v1.FeatureViewOutputR\x11\x66\x65\x61tureViewOutput\x12Y\n\x14\x66\x65\x61ture_view_sources\x18\x06 \x03(\x0b\x32\'.corvic.model.v1alpha.FeatureViewSourceR\x12\x66\x65\x61tureViewSources\x12\x1b\n\tspace_ids\x18\x07 \x03(\tR\x08spaceIds\x12\x15\n\x06org_id\x18\x08 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xfa\x02\n\x05Space\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12I\n\x10space_parameters\x18\x05 \x01(\x0b\x32\x1e.corvic.orm.v1.SpaceParametersR\x0fspaceParameters\x12\x44\n\x0c\x66\x65\x61ture_view\x18\x06 \x01(\x0b\x32!.corvic.model.v1alpha.FeatureViewR\x0b\x66\x65\x61tureView\x12\x1b\n\tauto_sync\x18\t \x01(\x08R\x08\x61utoSync\x12\x15\n\x06org_id\x18\x07 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"P\n\x0bUserMessage\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12\x17\n\x07room_id\x18\x03 \x01(\tR\x06roomId\"\xe7\x02\n\x0c\x41gentMessage\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12/\n\x06policy\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\x06policy\x12\x18\n\x07\x63ontext\x18\x04 \x01(\tR\x07\x63ontext\x12P\n\x10message_reaction\x18\x05 \x01(\x0e\x32%.corvic.model.v1alpha.MessageReactionR\x0fmessageReaction\x12&\n\x0fuser_message_id\x18\x06 \x01(\tR\ruserMessageId\x12O\n\x12retrieved_entities\x18\x07 \x01(\x0b\x32 .corvic.orm.v1.RetrievedEntitiesR\x11retrievedEntities\x12\x17\n\x07room_id\x18\x08 \x01(\tR\x06roomId\"\xa4\x02\n\x0cMessageEntry\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x46\n\x0cuser_message\x18\x02 \x01(\x0b\x32!.corvic.model.v1alpha.UserMessageH\x00R\x0buserMessage\x12I\n\ragent_message\x18\x03 \x01(\x0b\x32\".corvic.model.v1alpha.AgentMessageH\x00R\x0c\x61gentMessage\x12>\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\tcreatedAt\x88\x01\x01\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomIdB\t\n\x07\x63ontentB\r\n\x0b_created_at\"\x85\x02\n\x05\x41gent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x17\n\x07room_id\x18\x03 \x01(\tR\x06roomId\x12I\n\x10\x61gent_parameters\x18\x04 \x01(\x0b\x32\x1e.corvic.orm.v1.AgentParametersR\x0f\x61gentParameters\x12\x15\n\x06org_id\x18\x05 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_atJ\x04\x08\x06\x10\x07R\x08messages\"\xad\x02\n\x0f\x43ompletionModel\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x15\n\x06org_id\x18\x04 \x01(\tR\x05orgId\x12H\n\nparameters\x18\x05 \x01(\x0b\x32(.corvic.orm.v1.CompletionModelParametersR\nparameters\x12$\n\x0esecret_api_key\x18\x06 \x01(\tR\x0csecretApiKey\x12>\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at*u\n\x0fMessageReaction\x12 \n\x1cMESSAGE_REACTION_UNSPECIFIED\x10\x00\x12\x1e\n\x1aMESSAGE_REACTION_THUMBS_UP\x10\x01\x12 \n\x1cMESSAGE_REACTION_THUMBS_DOWN\x10\x02\x62\x06proto3')
25
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!corvic/model/v1alpha/models.proto\x12\x14\x63orvic.model.v1alpha\x1a\x19\x63orvic/orm/v1/agent.proto\x1a$corvic/orm/v1/completion_model.proto\x1a corvic/orm/v1/feature_view.proto\x1a\x1c\x63orvic/orm/v1/pipeline.proto\x1a\x19\x63orvic/orm/v1/space.proto\x1a\x19\x63orvic/orm/v1/table.proto\x1a\x1c\x63orvic/status/v1/event.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x90\x01\n\x04Room\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x15\n\x06org_id\x18\x03 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xa8\x03\n\x08Resource\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1b\n\tmime_type\x18\x04 \x01(\tR\x08mimeType\x12\x10\n\x03url\x18\x05 \x01(\tR\x03url\x12\x12\n\x04size\x18\x06 \x01(\x04R\x04size\x12\x10\n\x03md5\x18\x07 \x01(\tR\x03md5\x12#\n\roriginal_path\x18\x08 \x01(\tR\x0coriginalPath\x12\x17\n\x07room_id\x18\t \x01(\tR\x06roomId\x12\x15\n\x06org_id\x18\x0b \x01(\tR\x05orgId\x12\x1f\n\x0bpipeline_id\x18\r \x01(\tR\npipelineId\x12<\n\rrecent_events\x18\x0e \x03(\x0b\x32\x17.corvic.status.v1.EventR\x0crecentEvents\x12>\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\x91\x02\n\x06Source\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x43\n\x0etable_op_graph\x18\x03 \x01(\x0b\x32\x1d.corvic.orm.v1.TableComputeOpR\x0ctableOpGraph\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12\x15\n\x06org_id\x18\x06 \x01(\tR\x05orgId\x12\x1f\n\x0bpipeline_id\x18\x08 \x01(\tR\npipelineId\x12>\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xa9\x05\n\x08Pipeline\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\t \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x03 \x01(\tR\x06roomId\x12[\n\x0fresource_inputs\x18\x04 \x03(\x0b\x32\x32.corvic.model.v1alpha.Pipeline.ResourceInputsEntryR\x0eresourceInputs\x12X\n\x0esource_outputs\x18\x05 \x03(\x0b\x32\x31.corvic.model.v1alpha.Pipeline.SourceOutputsEntryR\rsourceOutputs\x12^\n\x17pipeline_transformation\x18\x06 \x01(\x0b\x32%.corvic.orm.v1.PipelineTransformationR\x16pipelineTransformation\x12\x15\n\x06org_id\x18\x07 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x1a\x61\n\x13ResourceInputsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x34\n\x05value\x18\x02 \x01(\x0b\x32\x1e.corvic.model.v1alpha.ResourceR\x05value:\x02\x38\x01\x1a^\n\x12SourceOutputsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x32\n\x05value\x18\x02 \x01(\x0b\x32\x1c.corvic.model.v1alpha.SourceR\x05value:\x02\x38\x01\x42\r\n\x0b_created_at\"\xca\x02\n\x11\x46\x65\x61tureViewSource\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x34\n\x06source\x18\x02 \x01(\x0b\x32\x1c.corvic.model.v1alpha.SourceR\x06source\x12\x43\n\x0etable_op_graph\x18\x03 \x01(\x0b\x32\x1d.corvic.orm.v1.TableComputeOpR\x0ctableOpGraph\x12+\n\x11\x64rop_disconnected\x18\x04 \x01(\x08R\x10\x64ropDisconnected\x12\x15\n\x06org_id\x18\x05 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x12\x17\n\x07room_id\x18\x07 \x01(\tR\x06roomIdB\r\n\x0b_created_at\"\x9c\x03\n\x0b\x46\x65\x61tureView\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12P\n\x13\x66\x65\x61ture_view_output\x18\x05 \x01(\x0b\x32 .corvic.orm.v1.FeatureViewOutputR\x11\x66\x65\x61tureViewOutput\x12Y\n\x14\x66\x65\x61ture_view_sources\x18\x06 \x03(\x0b\x32\'.corvic.model.v1alpha.FeatureViewSourceR\x12\x66\x65\x61tureViewSources\x12\x1b\n\tspace_ids\x18\x07 \x03(\tR\x08spaceIds\x12\x15\n\x06org_id\x18\x08 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\xfa\x02\n\x05Space\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x17\n\x07room_id\x18\x04 \x01(\tR\x06roomId\x12I\n\x10space_parameters\x18\x05 \x01(\x0b\x32\x1e.corvic.orm.v1.SpaceParametersR\x0fspaceParameters\x12\x44\n\x0c\x66\x65\x61ture_view\x18\x06 \x01(\x0b\x32!.corvic.model.v1alpha.FeatureViewR\x0b\x66\x65\x61tureView\x12\x1b\n\tauto_sync\x18\t \x01(\x08R\x08\x61utoSync\x12\x15\n\x06org_id\x18\x07 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_at\"\x85\x02\n\x05\x41gent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x17\n\x07room_id\x18\x03 \x01(\tR\x06roomId\x12I\n\x10\x61gent_parameters\x18\x04 \x01(\x0b\x32\x1e.corvic.orm.v1.AgentParametersR\x0f\x61gentParameters\x12\x15\n\x06org_id\x18\x05 \x01(\tR\x05orgId\x12>\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_atJ\x04\x08\x06\x10\x07R\x08messages\"\xad\x02\n\x0f\x43ompletionModel\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x15\n\x06org_id\x18\x04 \x01(\tR\x05orgId\x12H\n\nparameters\x18\x05 \x01(\x0b\x32(.corvic.orm.v1.CompletionModelParametersR\nparameters\x12$\n\x0esecret_api_key\x18\x06 \x01(\tR\x0csecretApiKey\x12>\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\tcreatedAt\x88\x01\x01\x42\r\n\x0b_created_atb\x06proto3')
28
26
 
29
27
  _globals = globals()
30
28
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -35,34 +33,26 @@ if _descriptor._USE_C_DESCRIPTORS == False:
35
33
  _globals['_PIPELINE_RESOURCEINPUTSENTRY']._serialized_options = b'8\001'
36
34
  _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._options = None
37
35
  _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._serialized_options = b'8\001'
38
- _globals['_MESSAGEREACTION']._serialized_start=4333
39
- _globals['_MESSAGEREACTION']._serialized_end=4450
40
- _globals['_ROOM']._serialized_start=364
41
- _globals['_ROOM']._serialized_end=508
42
- _globals['_RESOURCE']._serialized_start=511
43
- _globals['_RESOURCE']._serialized_end=935
44
- _globals['_SOURCE']._serialized_start=938
45
- _globals['_SOURCE']._serialized_end=1211
46
- _globals['_PIPELINE']._serialized_start=1214
47
- _globals['_PIPELINE']._serialized_end=1895
48
- _globals['_PIPELINE_RESOURCEINPUTSENTRY']._serialized_start=1687
49
- _globals['_PIPELINE_RESOURCEINPUTSENTRY']._serialized_end=1784
50
- _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._serialized_start=1786
51
- _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._serialized_end=1880
52
- _globals['_FEATUREVIEWSOURCE']._serialized_start=1898
53
- _globals['_FEATUREVIEWSOURCE']._serialized_end=2228
54
- _globals['_FEATUREVIEW']._serialized_start=2231
55
- _globals['_FEATUREVIEW']._serialized_end=2643
56
- _globals['_SPACE']._serialized_start=2646
57
- _globals['_SPACE']._serialized_end=3024
58
- _globals['_USERMESSAGE']._serialized_start=3026
59
- _globals['_USERMESSAGE']._serialized_end=3106
60
- _globals['_AGENTMESSAGE']._serialized_start=3109
61
- _globals['_AGENTMESSAGE']._serialized_end=3468
62
- _globals['_MESSAGEENTRY']._serialized_start=3471
63
- _globals['_MESSAGEENTRY']._serialized_end=3763
64
- _globals['_AGENT']._serialized_start=3766
65
- _globals['_AGENT']._serialized_end=4027
66
- _globals['_COMPLETIONMODEL']._serialized_start=4030
67
- _globals['_COMPLETIONMODEL']._serialized_end=4331
36
+ _globals['_ROOM']._serialized_start=306
37
+ _globals['_ROOM']._serialized_end=450
38
+ _globals['_RESOURCE']._serialized_start=453
39
+ _globals['_RESOURCE']._serialized_end=877
40
+ _globals['_SOURCE']._serialized_start=880
41
+ _globals['_SOURCE']._serialized_end=1153
42
+ _globals['_PIPELINE']._serialized_start=1156
43
+ _globals['_PIPELINE']._serialized_end=1837
44
+ _globals['_PIPELINE_RESOURCEINPUTSENTRY']._serialized_start=1629
45
+ _globals['_PIPELINE_RESOURCEINPUTSENTRY']._serialized_end=1726
46
+ _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._serialized_start=1728
47
+ _globals['_PIPELINE_SOURCEOUTPUTSENTRY']._serialized_end=1822
48
+ _globals['_FEATUREVIEWSOURCE']._serialized_start=1840
49
+ _globals['_FEATUREVIEWSOURCE']._serialized_end=2170
50
+ _globals['_FEATUREVIEW']._serialized_start=2173
51
+ _globals['_FEATUREVIEW']._serialized_end=2585
52
+ _globals['_SPACE']._serialized_start=2588
53
+ _globals['_SPACE']._serialized_end=2966
54
+ _globals['_AGENT']._serialized_start=2969
55
+ _globals['_AGENT']._serialized_end=3230
56
+ _globals['_COMPLETIONMODEL']._serialized_start=3233
57
+ _globals['_COMPLETIONMODEL']._serialized_end=3534
68
58
  # @@protoc_insertion_point(module_scope)
@@ -1,30 +1,18 @@
1
1
  from corvic_generated.orm.v1 import agent_pb2 as _agent_pb2
2
- from corvic_generated.orm.v1 import common_pb2 as _common_pb2
3
2
  from corvic_generated.orm.v1 import completion_model_pb2 as _completion_model_pb2
4
3
  from corvic_generated.orm.v1 import feature_view_pb2 as _feature_view_pb2
5
4
  from corvic_generated.orm.v1 import pipeline_pb2 as _pipeline_pb2
6
5
  from corvic_generated.orm.v1 import space_pb2 as _space_pb2
7
6
  from corvic_generated.orm.v1 import table_pb2 as _table_pb2
8
7
  from corvic_generated.status.v1 import event_pb2 as _event_pb2
9
- from google.protobuf import struct_pb2 as _struct_pb2
10
8
  from google.protobuf import timestamp_pb2 as _timestamp_pb2
11
9
  from google.protobuf.internal import containers as _containers
12
- from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
13
10
  from google.protobuf import descriptor as _descriptor
14
11
  from google.protobuf import message as _message
15
12
  from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
16
13
 
17
14
  DESCRIPTOR: _descriptor.FileDescriptor
18
15
 
19
- class MessageReaction(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
20
- __slots__ = ()
21
- MESSAGE_REACTION_UNSPECIFIED: _ClassVar[MessageReaction]
22
- MESSAGE_REACTION_THUMBS_UP: _ClassVar[MessageReaction]
23
- MESSAGE_REACTION_THUMBS_DOWN: _ClassVar[MessageReaction]
24
- MESSAGE_REACTION_UNSPECIFIED: MessageReaction
25
- MESSAGE_REACTION_THUMBS_UP: MessageReaction
26
- MESSAGE_REACTION_THUMBS_DOWN: MessageReaction
27
-
28
16
  class Room(_message.Message):
29
17
  __slots__ = ("id", "name", "org_id", "created_at")
30
18
  ID_FIELD_NUMBER: _ClassVar[int]
@@ -183,50 +171,6 @@ class Space(_message.Message):
183
171
  created_at: _timestamp_pb2.Timestamp
184
172
  def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., room_id: _Optional[str] = ..., space_parameters: _Optional[_Union[_space_pb2.SpaceParameters, _Mapping]] = ..., feature_view: _Optional[_Union[FeatureView, _Mapping]] = ..., auto_sync: bool = ..., org_id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
185
173
 
186
- class UserMessage(_message.Message):
187
- __slots__ = ("id", "message", "room_id")
188
- ID_FIELD_NUMBER: _ClassVar[int]
189
- MESSAGE_FIELD_NUMBER: _ClassVar[int]
190
- ROOM_ID_FIELD_NUMBER: _ClassVar[int]
191
- id: str
192
- message: str
193
- room_id: str
194
- def __init__(self, id: _Optional[str] = ..., message: _Optional[str] = ..., room_id: _Optional[str] = ...) -> None: ...
195
-
196
- class AgentMessage(_message.Message):
197
- __slots__ = ("id", "message", "policy", "context", "message_reaction", "user_message_id", "retrieved_entities", "room_id")
198
- ID_FIELD_NUMBER: _ClassVar[int]
199
- MESSAGE_FIELD_NUMBER: _ClassVar[int]
200
- POLICY_FIELD_NUMBER: _ClassVar[int]
201
- CONTEXT_FIELD_NUMBER: _ClassVar[int]
202
- MESSAGE_REACTION_FIELD_NUMBER: _ClassVar[int]
203
- USER_MESSAGE_ID_FIELD_NUMBER: _ClassVar[int]
204
- RETRIEVED_ENTITIES_FIELD_NUMBER: _ClassVar[int]
205
- ROOM_ID_FIELD_NUMBER: _ClassVar[int]
206
- id: str
207
- message: str
208
- policy: _struct_pb2.Struct
209
- context: str
210
- message_reaction: MessageReaction
211
- user_message_id: str
212
- retrieved_entities: _common_pb2.RetrievedEntities
213
- room_id: str
214
- def __init__(self, id: _Optional[str] = ..., message: _Optional[str] = ..., policy: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., context: _Optional[str] = ..., message_reaction: _Optional[_Union[MessageReaction, str]] = ..., user_message_id: _Optional[str] = ..., retrieved_entities: _Optional[_Union[_common_pb2.RetrievedEntities, _Mapping]] = ..., room_id: _Optional[str] = ...) -> None: ...
215
-
216
- class MessageEntry(_message.Message):
217
- __slots__ = ("id", "user_message", "agent_message", "created_at", "room_id")
218
- ID_FIELD_NUMBER: _ClassVar[int]
219
- USER_MESSAGE_FIELD_NUMBER: _ClassVar[int]
220
- AGENT_MESSAGE_FIELD_NUMBER: _ClassVar[int]
221
- CREATED_AT_FIELD_NUMBER: _ClassVar[int]
222
- ROOM_ID_FIELD_NUMBER: _ClassVar[int]
223
- id: str
224
- user_message: UserMessage
225
- agent_message: AgentMessage
226
- created_at: _timestamp_pb2.Timestamp
227
- room_id: str
228
- def __init__(self, id: _Optional[str] = ..., user_message: _Optional[_Union[UserMessage, _Mapping]] = ..., agent_message: _Optional[_Union[AgentMessage, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., room_id: _Optional[str] = ...) -> None: ...
229
-
230
174
  class Agent(_message.Message):
231
175
  __slots__ = ("id", "name", "room_id", "agent_parameters", "org_id", "created_at")
232
176
  ID_FIELD_NUMBER: _ClassVar[int]