Files
leaudit-platform-backend/fastapi_modules/fastapi_leaudit/models/leauditRagMessage.py
T

21 lines
887 B
Python

from __future__ import annotations
from sqlalchemy import BigInteger, String, Text
from sqlalchemy.dialects.postgresql import JSONB
from sqlalchemy.orm import Mapped, mapped_column
from fastapi_common.fastapi_common_web.models import BaseModel
class LeauditRagMessage(BaseModel):
__tablename__ = "rag_message"
Id: Mapped[int] = mapped_column("id", BigInteger, primary_key=True, autoincrement=True)
messageId: Mapped[str] = mapped_column("message_id", String(100), unique=True)
conversationId: Mapped[str] = mapped_column("conversation_id", String(100))
role: Mapped[str] = mapped_column(String(20))
content: Mapped[str] = mapped_column(Text, default="")
sources: Mapped[list] = mapped_column(JSONB, default=list)
metadataJson: Mapped[dict] = mapped_column("metadata", JSONB, default=dict)
feedback: Mapped[str | None] = mapped_column(String(20))