Feature/memory perceptual (#48)
* perf(workflow): pass JSON data to HTTP node as a string * perf(prompt_opt): simplify log output * feat(memory): add perceptual memory page API and related database schema * perf(log): clean up API exception log output * perf(memory): simplify perceptual memory timeline response by removing metadata
This commit is contained in:
40
api/app/models/memory_perceptual_model.py
Normal file
40
api/app/models/memory_perceptual_model.py
Normal file
@@ -0,0 +1,40 @@
|
||||
import datetime
|
||||
import uuid
|
||||
from enum import IntEnum
|
||||
|
||||
from sqlalchemy import Column, ForeignKey, Integer, DateTime, String
|
||||
from sqlalchemy.dialects.postgresql import UUID
|
||||
from sqlalchemy.dialects.postgresql import JSONB
|
||||
|
||||
from app.db import Base
|
||||
|
||||
|
||||
class PerceptualType(IntEnum):
|
||||
VISION = 1
|
||||
AUDIO = 2
|
||||
TEXT = 3
|
||||
CONVERSATION = 4
|
||||
|
||||
|
||||
class FileStorageType(IntEnum):
|
||||
LOCAL = 1
|
||||
REMOTE = 2
|
||||
|
||||
|
||||
class MemoryPerceptualModel(Base):
|
||||
__tablename__ = "memory_perceptual"
|
||||
|
||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
|
||||
end_user_id = Column(UUID(as_uuid=True), ForeignKey("end_users.id"), index=True)
|
||||
|
||||
perceptual_type = Column(Integer, index=True, nullable=False, comment="感知类型")
|
||||
|
||||
storage_service = Column(Integer, default=0, comment="存储服务类型")
|
||||
file_path = Column(String, nullable=False, comment="文件路径")
|
||||
file_name = Column(String, nullable=False, comment="文件名称")
|
||||
file_ext = Column(String, nullable=False, comment="文件后缀名")
|
||||
|
||||
summary = Column(String, comment="摘要")
|
||||
meta_data = Column(JSONB, comment="元信息")
|
||||
|
||||
created_time = Column(DateTime, default=datetime.datetime.now, comment="创建时间")
|
||||
Reference in New Issue
Block a user