refac
This commit is contained in:
@@ -26,14 +26,14 @@ def upgrade() -> None:
|
|||||||
# Step 1: Create table
|
# Step 1: Create table
|
||||||
op.create_table(
|
op.create_table(
|
||||||
"chat_message",
|
"chat_message",
|
||||||
sa.Column("id", sa.String(), primary_key=True),
|
sa.Column("id", sa.Text(), primary_key=True),
|
||||||
sa.Column("chat_id", sa.String(), nullable=False, index=True),
|
sa.Column("chat_id", sa.Text(), nullable=False, index=True),
|
||||||
sa.Column("user_id", sa.String(), index=True),
|
sa.Column("user_id", sa.Text(), index=True),
|
||||||
sa.Column("role", sa.String(), nullable=False),
|
sa.Column("role", sa.Text(), nullable=False),
|
||||||
sa.Column("parent_id", sa.String(), nullable=True),
|
sa.Column("parent_id", sa.Text(), nullable=True),
|
||||||
sa.Column("content", sa.JSON(), nullable=True),
|
sa.Column("content", sa.JSON(), nullable=True),
|
||||||
sa.Column("output", sa.JSON(), nullable=True),
|
sa.Column("output", sa.JSON(), nullable=True),
|
||||||
sa.Column("model_id", sa.String(), nullable=True, index=True),
|
sa.Column("model_id", sa.Text(), nullable=True, index=True),
|
||||||
sa.Column("files", sa.JSON(), nullable=True),
|
sa.Column("files", sa.JSON(), nullable=True),
|
||||||
sa.Column("sources", sa.JSON(), nullable=True),
|
sa.Column("sources", sa.JSON(), nullable=True),
|
||||||
sa.Column("embeds", sa.JSON(), nullable=True),
|
sa.Column("embeds", sa.JSON(), nullable=True),
|
||||||
@@ -62,21 +62,21 @@ def upgrade() -> None:
|
|||||||
|
|
||||||
chat_table = sa.table(
|
chat_table = sa.table(
|
||||||
"chat",
|
"chat",
|
||||||
sa.column("id", sa.String()),
|
sa.column("id", sa.Text()),
|
||||||
sa.column("user_id", sa.String()),
|
sa.column("user_id", sa.Text()),
|
||||||
sa.column("chat", sa.JSON()),
|
sa.column("chat", sa.JSON()),
|
||||||
)
|
)
|
||||||
|
|
||||||
chat_message_table = sa.table(
|
chat_message_table = sa.table(
|
||||||
"chat_message",
|
"chat_message",
|
||||||
sa.column("id", sa.String()),
|
sa.column("id", sa.Text()),
|
||||||
sa.column("chat_id", sa.String()),
|
sa.column("chat_id", sa.Text()),
|
||||||
sa.column("user_id", sa.String()),
|
sa.column("user_id", sa.Text()),
|
||||||
sa.column("role", sa.String()),
|
sa.column("role", sa.Text()),
|
||||||
sa.column("parent_id", sa.String()),
|
sa.column("parent_id", sa.Text()),
|
||||||
sa.column("content", sa.JSON()),
|
sa.column("content", sa.JSON()),
|
||||||
sa.column("output", sa.JSON()),
|
sa.column("output", sa.JSON()),
|
||||||
sa.column("model_id", sa.String()),
|
sa.column("model_id", sa.Text()),
|
||||||
sa.column("files", sa.JSON()),
|
sa.column("files", sa.JSON()),
|
||||||
sa.column("sources", sa.JSON()),
|
sa.column("sources", sa.JSON()),
|
||||||
sa.column("embeds", sa.JSON()),
|
sa.column("embeds", sa.JSON()),
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ from sqlalchemy import (
|
|||||||
Boolean,
|
Boolean,
|
||||||
Column,
|
Column,
|
||||||
ForeignKey,
|
ForeignKey,
|
||||||
String,
|
|
||||||
Text,
|
Text,
|
||||||
JSON,
|
JSON,
|
||||||
Index,
|
Index,
|
||||||
@@ -50,22 +49,22 @@ class ChatMessage(Base):
|
|||||||
__tablename__ = "chat_message"
|
__tablename__ = "chat_message"
|
||||||
|
|
||||||
# Identity
|
# Identity
|
||||||
id = Column(String, primary_key=True)
|
id = Column(Text, primary_key=True)
|
||||||
chat_id = Column(
|
chat_id = Column(
|
||||||
String, ForeignKey("chat.id", ondelete="CASCADE"), nullable=False, index=True
|
Text, ForeignKey("chat.id", ondelete="CASCADE"), nullable=False, index=True
|
||||||
)
|
)
|
||||||
user_id = Column(String, index=True)
|
user_id = Column(Text, index=True)
|
||||||
|
|
||||||
# Structure
|
# Structure
|
||||||
role = Column(String, nullable=False) # user, assistant, system
|
role = Column(Text, nullable=False) # user, assistant, system
|
||||||
parent_id = Column(String, nullable=True)
|
parent_id = Column(Text, nullable=True)
|
||||||
|
|
||||||
# Content
|
# Content
|
||||||
content = Column(JSON, nullable=True) # Can be str or list of blocks
|
content = Column(JSON, nullable=True) # Can be str or list of blocks
|
||||||
output = Column(JSON, nullable=True)
|
output = Column(JSON, nullable=True)
|
||||||
|
|
||||||
# Model (for assistant messages)
|
# Model (for assistant messages)
|
||||||
model_id = Column(String, nullable=True, index=True)
|
model_id = Column(Text, nullable=True, index=True)
|
||||||
|
|
||||||
# Attachments
|
# Attachments
|
||||||
files = Column(JSON, nullable=True)
|
files = Column(JSON, nullable=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user