Datavision / backend /models /chat_memory.py
DataVision CI/CD Bot
release: clean production build for HuggingFace Space
ee7d7b9
Raw
History Blame Contribute Delete
1.05 kB
from sqlalchemy import Column, String, Text, DateTime, ForeignKey
from sqlalchemy.orm import relationship
from datetime import datetime
from core.database import Base
class Conversation(Base):
__tablename__ = "conversations"
id = Column(String, primary_key=True, index=True)
user_id = Column(String, index=True)
title = Column(String, default="New Chat")
created_at = Column(DateTime, default=datetime.utcnow)
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
# Relationship to messages
messages = relationship("Message", back_populates="conversation", cascade="all, delete-orphan")
class Message(Base):
__tablename__ = "messages"
id = Column(String, primary_key=True, index=True)
conversation_id = Column(String, ForeignKey("conversations.id"))
role = Column(String) # 'user' or 'assistant'
content = Column(Text)
timestamp = Column(DateTime, default=datetime.utcnow)
conversation = relationship("Conversation", back_populates="messages")