From 9de6b4f151223888d296fdccff539a433488e2e7 Mon Sep 17 00:00:00 2001 From: lixinyue <2569494688@qq.com> Date: Mon, 26 Jan 2026 11:06:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=84=9F=E7=9F=A5meta=5Fdata=E5=AD=97=E6=AE=B5?= =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/app/schemas/memory_perceptual_schema.py | 2 +- api/app/services/memory_perceptual_service.py | 22 ++++++++++++++----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/api/app/schemas/memory_perceptual_schema.py b/api/app/schemas/memory_perceptual_schema.py index e82d9526..7dfefe01 100644 --- a/api/app/schemas/memory_perceptual_schema.py +++ b/api/app/schemas/memory_perceptual_schema.py @@ -43,7 +43,7 @@ class PerceptualMemoryItem(BaseModel): file_name: str = Field(..., description="File name") file_ext: str = Field(..., description="File extension") summary: Optional[str] = Field(None, description="summary") - meta_data: str = Field(...,description="") + meta_data: Optional[dict] = Field(None, description="Metadata information") created_time: int = Field(..., description="create time") topic: str = Field(..., description="topic") diff --git a/api/app/services/memory_perceptual_service.py b/api/app/services/memory_perceptual_service.py index b65955f2..b9d96a0b 100644 --- a/api/app/services/memory_perceptual_service.py +++ b/api/app/services/memory_perceptual_service.py @@ -137,8 +137,19 @@ class MemoryPerceptualService: memory_items = [] for memory in memories: meta_data = memory.meta_data or {} - content = meta_data.get("content") - content = Content(**content) + content = meta_data.get("content", {}) + + # 安全地提取 content 字段,提供默认值 + if content: + content_obj = Content(**content) + topic = content_obj.topic + domain = content_obj.domain + keywords = content_obj.keywords + else: + topic = "Unknown" + domain = "Unknown" + keywords = [] + memory_item = PerceptualMemoryItem( id=memory.id, perceptual_type=PerceptualType(memory.perceptual_type), @@ -146,9 +157,10 @@ class MemoryPerceptualService: file_name=memory.file_name, file_ext=memory.file_ext, summary=memory.summary, - topic=content.topic, - domain=content.domain, - keywords=content.keywords, + meta_data=meta_data, + topic=topic, + domain=domain, + keywords=keywords, created_time=int(memory.created_time.timestamp()*1000), storage_service=FileStorageService(memory.storage_service), )