| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- from sqlalchemy import Column, Integer, String, Text, BigInteger, SmallInteger
- from database import Base
- class AIConversation(Base):
- """AI对话主表"""
- __tablename__ = "ai_conversation"
- id = Column(BigInteger, primary_key=True, autoincrement=True)
- user_id = Column(BigInteger, nullable=False, comment="用户ID")
- content = Column(Text, nullable=False, comment="对话内容")
- business_type = Column(SmallInteger, nullable=False, default=0, comment="业务类型(0、AI问答,1、安全培训,2、AI写作,3、考试工坊)")
- exam_name = Column(String(255), default="", comment="考试名称")
- step = Column(Integer, default=0, comment="步骤")
- cover_image = Column(String(1000), default="", comment="封面图")
- ppt_json_url = Column(String(1000), default="", comment="PPTjson地址")
- ppt_json_content = Column(Text, default="", comment="PPTjson内容")
- ppt_outline = Column(Text, default="", comment="PPT大纲")
- created_at = Column(Integer, comment="创建时间")
- updated_at = Column(Integer, comment="更新时间")
- is_deleted = Column(Integer, default=0, comment="是否删除 1:是 0:否")
- class AIMessage(Base):
- """AI对话消息表"""
- __tablename__ = "ai_message"
- id = Column(BigInteger, primary_key=True, autoincrement=True)
- user_id = Column(BigInteger, nullable=False, comment="用户ID")
- content = Column(Text, nullable=False, comment="对话内容")
- type = Column(String(20), nullable=False, comment="对话类型(user、ai)")
- user_feedback = Column(SmallInteger, default=0, comment="用户反馈(0、无反馈,2、满意(赞),3、不满意(踩))")
- prev_user_id = Column(BigInteger, default=0, comment="上一句的用户问题ID")
- ai_conversation_id = Column(BigInteger, nullable=False, comment="AI对话ID")
- search_source = Column(Text, default="", comment="搜索来源")
- guess_you_want = Column(String(255), default="", comment="猜你想问")
- created_at = Column(Integer, comment="创建时间")
- updated_at = Column(Integer, comment="更新时间")
- is_deleted = Column(Integer, default=0, comment="是否删除 1:是 0:否")
- class IndexFile(Base):
- """索引文件表"""
- __tablename__ = "index_file"
- id = Column(Integer, primary_key=True, autoincrement=True)
- file_name = Column(String(255), nullable=False, comment="文件名")
- file_path = Column(String(1000), nullable=False, comment="文件路径")
- encoding = Column(String(255), default="", comment="编码")
- created_at = Column(Integer, comment="创建时间")
- updated_at = Column(Integer, comment="更新时间")
- class QA(Base):
- """问答QA对表"""
- __tablename__ = "qa"
- id = Column(Integer, primary_key=True, autoincrement=True)
- question = Column(String(255), nullable=False, comment="问题")
- answer = Column(String(255), nullable=False, comment="答案")
- created_at = Column(Integer, comment="创建时间")
- updated_at = Column(Integer, comment="更新时间")
|