zhaoqingang
2025-01-10 f0a780fecb0e5799f6427cc89da8e5600edc71a2
app/models/dialog_model.py
@@ -1,6 +1,6 @@
from datetime import datetime
from sqlalchemy import Column, Integer, String, Table, ForeignKey, DateTime, BigInteger, Text, Float, Boolean
from sqlalchemy import Column, Integer, String, BigInteger, ForeignKey, DateTime, Text, JSON
from sqlalchemy.orm import relationship, backref
from app.models.base_model import Base
@@ -10,29 +10,15 @@
    __mapper_args__ = {
        # "order_by": 'SEQ'
    }
    id = Column(String(32), primary_key=True)
    create_time = Column(BigInteger)
    create_date = Column(DateTime)
    update_time = Column(BigInteger)
    update_date = Column(DateTime)
    tenant_id = Column(String(32))
    name = Column(String(255))
    description = Column(Text)
    icon = Column(Text)
    language = Column(String(32))
    llm_id = Column(String(128))
    llm_setting = Column(Text)
    prompt_type = Column(String(16))
    prompt_config = Column(Text)
    similarity_threshold = Column(Float)
    vector_similarity_weight = Column(Float)
    top_n = Column(Integer)
    top_k = Column(Integer)
    do_refer = Column(String(1))
    rerank_id = Column(String(128))
    kb_ids = Column(Text)
    status = Column(String(1))
    hide = Column(Boolean)
    id = Column(String(32), primary_key=True)  #  id
    create_date = Column(DateTime)             # 创建时间
    update_date = Column(DateTime)             # 更新时间
    tenant_id = Column(String(32))              # 创建人
    name = Column(String(255))                 # 名称
    description = Column(Text)                 # 说明
    icon = Column(Text)                         # 图标
    status = Column(String(1))                 # 状态
    # dialog_type = Column(String(1))            #    # 平台
    def get_id(self):
        return str(self.id)
@@ -40,23 +26,37 @@
    def to_json(self):
        return {
            'id': self.id,
            'create_time': self.create_time,
            'create_date': self.create_date,
            'update_time': self.update_time,
            'update_date': self.update_date,
            'tenant_id': self.tenant_id,
            'name': self.name,
            'description': self.description,
            'icon': self.icon,
            'language': self.language,
            'llm_id': self.llm_id,
            'prompt_type': self.prompt_type,
            'prompt_config': self.prompt_config,
            'similarity_threshold': self.similarity_threshold,
            'vector_similarity_weight': self.vector_similarity_weight,
            'top_n': self.top_n,
            'top_k': self.top_k,
            'do_refer': self.do_refer,
            'kb_ids': self.kb_ids,
            'status': self.status
        }
class ConversationModel(Base):
    __tablename__ = 'conversation'
    id = Column(String(32), primary_key=True)  #  id
    create_date = Column(DateTime)             # 创建时间
    create_time = Column(BigInteger)
    update_date = Column(DateTime)             # 更新时间
    update_time = Column(BigInteger)
    tenant_id = Column(Integer)              # 创建人
    dialog_id = Column(String(32))
    name = Column(String(255))                 # 名称
    message = Column(JSON)                 # 说明
    reference = Column(JSON)                         # 图标
    def get_id(self):
        return str(self.id)
    def to_json(self):
        return {
            'id': self.id,
            'updated_time': self.update_time,
            'update_date': datetime.fromtimestamp(self.update_time / 1000.0).strftime('%Y-%m-%d %H:%M:%S'),
            'name': self.name,
        }