mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-05-23 19:05:16 +02:00
Add SharedMemory ORM and SearchSpace.shared_memories (SUR-152)
This commit is contained in:
parent
5b876de942
commit
9acf746698
1 changed files with 40 additions and 0 deletions
|
|
@ -847,6 +847,40 @@ class UserMemory(BaseModel, TimestampMixin):
|
||||||
search_space = relationship("SearchSpace", back_populates="user_memories")
|
search_space = relationship("SearchSpace", back_populates="user_memories")
|
||||||
|
|
||||||
|
|
||||||
|
class SharedMemory(BaseModel, TimestampMixin):
|
||||||
|
__tablename__ = "shared_memories"
|
||||||
|
|
||||||
|
search_space_id = Column(
|
||||||
|
Integer,
|
||||||
|
ForeignKey("searchspaces.id", ondelete="CASCADE"),
|
||||||
|
nullable=False,
|
||||||
|
index=True,
|
||||||
|
)
|
||||||
|
created_by_id = Column(
|
||||||
|
UUID(as_uuid=True),
|
||||||
|
ForeignKey("user.id", ondelete="CASCADE"),
|
||||||
|
nullable=False,
|
||||||
|
index=True,
|
||||||
|
)
|
||||||
|
memory_text = Column(Text, nullable=False)
|
||||||
|
category = Column(
|
||||||
|
SQLAlchemyEnum(MemoryCategory),
|
||||||
|
nullable=False,
|
||||||
|
default=MemoryCategory.fact,
|
||||||
|
)
|
||||||
|
embedding = Column(Vector(config.embedding_model_instance.dimension))
|
||||||
|
updated_at = Column(
|
||||||
|
TIMESTAMP(timezone=True),
|
||||||
|
nullable=False,
|
||||||
|
default=lambda: datetime.now(UTC),
|
||||||
|
onupdate=lambda: datetime.now(UTC),
|
||||||
|
index=True,
|
||||||
|
)
|
||||||
|
|
||||||
|
search_space = relationship("SearchSpace", back_populates="shared_memories")
|
||||||
|
created_by = relationship("User")
|
||||||
|
|
||||||
|
|
||||||
class Document(BaseModel, TimestampMixin):
|
class Document(BaseModel, TimestampMixin):
|
||||||
__tablename__ = "documents"
|
__tablename__ = "documents"
|
||||||
|
|
||||||
|
|
@ -1209,6 +1243,12 @@ class SearchSpace(BaseModel, TimestampMixin):
|
||||||
order_by="UserMemory.updated_at.desc()",
|
order_by="UserMemory.updated_at.desc()",
|
||||||
cascade="all, delete-orphan",
|
cascade="all, delete-orphan",
|
||||||
)
|
)
|
||||||
|
shared_memories = relationship(
|
||||||
|
"SharedMemory",
|
||||||
|
back_populates="search_space",
|
||||||
|
order_by="SharedMemory.updated_at.desc()",
|
||||||
|
cascade="all, delete-orphan",
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class SearchSourceConnector(BaseModel, TimestampMixin):
|
class SearchSourceConnector(BaseModel, TimestampMixin):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue