diff --git a/api/app/core/memory/utils/self_reflexion_utils/self_reflexion.py b/api/app/core/memory/utils/self_reflexion_utils/self_reflexion.py index 2e63ae22..934037b0 100644 --- a/api/app/core/memory/utils/self_reflexion_utils/self_reflexion.py +++ b/api/app/core/memory/utils/self_reflexion_utils/self_reflexion.py @@ -54,9 +54,9 @@ async def get_reflexion_data(host_id: uuid.UUID) -> List[Any]: Returns: 符合反思范围的记忆数据列表。 """ - if REFLEXION_RANGE == "retrieval": + if REFLEXION_RANGE == "partial": return await get_data(host_id) - elif REFLEXION_RANGE == "database": + elif REFLEXION_RANGE == "all": return [] else: raise ValueError(f"未知的反思范围: {REFLEXION_RANGE}") diff --git a/api/app/schemas/memory_config_schema.py b/api/app/schemas/memory_config_schema.py index 171abb7a..0443dcc4 100644 --- a/api/app/schemas/memory_config_schema.py +++ b/api/app/schemas/memory_config_schema.py @@ -173,9 +173,10 @@ class MemoryConfigValidation(BaseModel): chunker_strategy: str = Field(default="RecursiveChunker", min_length=1, max_length=100) reflexion_enabled: bool = Field(default=False) reflexion_iteration_period: int = Field(default=3, ge=1, le=100) - reflexion_range: Literal["retrieval", "all"] = Field(default="retrieval") - reflexion_baseline: Literal["time", "fact", "time_and_fact"] = Field(default="time") - + reflexion_range: Literal["partial", "all"] = Field(default="partial") + reflexion_baseline: Literal["TIME", "FACT", "HYBRID"] = Field(default="TIME") + + llm_params: Dict[str, Any] = Field(default_factory=dict) embedding_params: Dict[str, Any] = Field(default_factory=dict) config_version: str = Field(default="2.0", min_length=1, max_length=10) diff --git a/api/app/schemas/memory_storage_schema.py b/api/app/schemas/memory_storage_schema.py index ca9b29de..afaec722 100644 --- a/api/app/schemas/memory_storage_schema.py +++ b/api/app/schemas/memory_storage_schema.py @@ -292,8 +292,8 @@ class ConfigUpdateExtracted(BaseModel): # 更新记忆萃取引擎配置参数 iteration_period: Optional[Literal["1", "3", "6", "12", "24"]] = Field( "3", description="反思迭代周期,单位小时" ) - reflexion_range: Optional[Literal["retrieval", "database"]] = Field( - "retrieval", description="反思范围:部分/全部" + reflexion_range: Optional[Literal["partial", "all"]] = Field( + "partial", description="反思范围:部分/全部" ) baseline: Optional[Literal["TIME", "FACT", "TIME-FACT"]] = Field( "TIME", description="基线:时间/事实/时间和事实" diff --git a/api/app/services/memory_agent_service.py b/api/app/services/memory_agent_service.py index 4b728412..71eda535 100644 --- a/api/app/services/memory_agent_service.py +++ b/api/app/services/memory_agent_service.py @@ -529,7 +529,6 @@ class MemoryAgentService: workflow_duration = time.time() - start logger.info(f"Read graph workflow completed in {workflow_duration}s") - # Extract final answer final_answer = "" for messages in outputs: diff --git a/api/app/services/memory_config_service.py b/api/app/services/memory_config_service.py index 3413ebd6..09e980a0 100644 --- a/api/app/services/memory_config_service.py +++ b/api/app/services/memory_config_service.py @@ -205,8 +205,8 @@ class MemoryConfigService: chunker_strategy=memory_config.chunker_strategy or "RecursiveChunker", reflexion_enabled=memory_config.enable_self_reflexion or False, reflexion_iteration_period=int(memory_config.iteration_period or "3"), - reflexion_range=memory_config.reflexion_range or "retrieval", - reflexion_baseline=memory_config.baseline or "time", + reflexion_range=memory_config.reflexion_range or "partial", + reflexion_baseline=memory_config.baseline or "Time", loaded_at=datetime.now(), # Pipeline config: Deduplication enable_llm_dedup_blockwise=bool(memory_config.enable_llm_dedup_blockwise) if memory_config.enable_llm_dedup_blockwise is not None else False,