from sqlalchemy import Column, Integer, String, DateTime, Text, BigInteger, Index, JSON from datetime import datetime from .db import Base class KnowledgeParsingContent(Base): __tablename__ = 'knowledge_parsing_content' id = Column(BigInteger, primary_key=True, autoincrement=True) content_id = Column(String(128), nullable=False) request_id = Column(String(128), nullable=False) task_id = Column(BigInteger, nullable=False) parsing_data = Column(Text, comment='结构化数据') create_time = Column(DateTime, default=datetime.now) status = Column(Integer, default=0, comment='0: 未开始,1:处理中 2: 处理完成 3:处理失败') indentify_data = Column(Text, comment='理解的数据') def __repr__(self): return f"" class KnowledgeExtractionContent(Base): __tablename__ = 'knowledge_extraction_content' id = Column(BigInteger, primary_key=True, autoincrement=True) request_id = Column(String(128), nullable=False) parsing_id = Column(BigInteger, nullable=False) score = Column(Integer, default=-1) score_reason = Column(Text, comment='打分原因') data = Column(Text, comment='结构化数据') clean_reason = Column(Text, comment='清洗原因') create_at = Column(DateTime, default=datetime.now) status = Column(Integer, default=0, comment='0: 未开始,1:处理中 2: 处理完成 3:处理失败') def __repr__(self): return f"" class KnowledgeExpandContent(Base): __tablename__ = 'knowledge_expand_content' __table_args__ = { 'comment': '拓展字段' } id = Column(BigInteger, primary_key=True, autoincrement=True) request_id = Column(String(128), nullable=False) create_time = Column(DateTime, default=datetime.now) expand_querys = Column(JSON, comment='拓展的query词列表') keywords = Column(JSON, comment='提取的内容关键词列表') query = Column(Text, comment='搜索词') def __repr__(self): return f""