mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-09-05 08:06:15 +00:00
[dev] format print style
This commit is contained in:
parent
0edaaa4256
commit
298ded324d
9 changed files with 49 additions and 34 deletions
|
|
@ -30,7 +30,12 @@ memory_service:
|
|||
|
||||
delete_memory:
|
||||
class: memory.operation.frontend_operation
|
||||
workflow: set_query,retrieve_all_memory,delete_memory
|
||||
workflow: set_query,retrieve_all_memory,delete_query
|
||||
description: "delete a single long-term memory"
|
||||
|
||||
delete_all:
|
||||
class: memory.operation.frontend_operation
|
||||
workflow: set_query,retrieve_all_memory,delete_all
|
||||
description: "delete all long-term memory"
|
||||
|
||||
add_memory:
|
||||
|
|
@ -92,16 +97,14 @@ worker:
|
|||
retrieve_obs_top_k: 10000
|
||||
retrieve_ins_top_k: 10000
|
||||
retrieve_expired_top_k: 10000
|
||||
delete_memory:
|
||||
class: memory.worker.frontend.update_memory_worker
|
||||
method: modify_action_status
|
||||
expired_action: delete
|
||||
valid_action_dict:
|
||||
obs_customized: delete
|
||||
insight: delete
|
||||
observation: delete
|
||||
delete_query:
|
||||
class: memory.worker.write.update_memory_worker
|
||||
method: delete_query
|
||||
delete_all:
|
||||
class: memory.worker.write.update_memory_worker
|
||||
method: delete_all
|
||||
add_memory:
|
||||
class: memory.worker.frontend.update_memory_worker
|
||||
class: memory.worker.write.update_memory_worker
|
||||
method: from_query
|
||||
info_filter:
|
||||
class: memory.worker.write.info_filter_worker
|
||||
|
|
@ -35,7 +35,7 @@ class PrintMemoryWorker(MemoryBaseWorker):
|
|||
|
||||
elif MemoryTypeEnum(node.memory_type) in [MemoryTypeEnum.OBSERVATION, MemoryTypeEnum.OBS_CUSTOMIZED]:
|
||||
j += 1
|
||||
obs_content_list.append(f" {j} {line}")
|
||||
obs_content_list.append(f" {j} {line} status={node.obs_reflected},{node.obs_updated}")
|
||||
|
||||
elif MemoryTypeEnum(node.memory_type) is MemoryTypeEnum.INSIGHT:
|
||||
k += 1
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ class RetrieveMemoryWorker(MemoryBaseWorker):
|
|||
|
||||
memory_node_list = sorted(memory_node_list, key=lambda x: x.score_similar, reverse=True)
|
||||
for node in memory_node_list:
|
||||
node.action_status = ActionStatusEnum.NONE
|
||||
node.action_status = ActionStatusEnum.NONE.value
|
||||
self.logger.info(f"recall_stage: content={node.content} score={node.score_similar} type={node.memory_type} "
|
||||
f"store_status={node.store_status} action_status={node.action_status}")
|
||||
|
||||
|
|
|
|||
|
|
@ -63,8 +63,8 @@ class GetReflectionSubjectWorker(MemoryBaseWorker):
|
|||
|
||||
# Count unaudited nodes
|
||||
not_reflected_count = len(not_reflected_nodes)
|
||||
if not_reflected_count <= self.reflect_obs_cnt_threshold:
|
||||
self.logger.info(f"not_reflected_count={not_reflected_count} is not enough, skip.")
|
||||
if not_reflected_count < self.reflect_obs_cnt_threshold:
|
||||
self.logger.info(f"not_reflected_count({not_reflected_count}) < is not enough, skip.")
|
||||
self.continue_run = False
|
||||
return
|
||||
|
||||
|
|
@ -102,4 +102,5 @@ class GetReflectionSubjectWorker(MemoryBaseWorker):
|
|||
|
||||
# Mark unaudited nodes as reflected
|
||||
for node in not_reflected_nodes:
|
||||
node.obs_reflected = True
|
||||
node.obs_reflected = 1
|
||||
node.action_status = ActionStatusEnum.MODIFIED
|
||||
|
|
|
|||
|
|
@ -193,7 +193,10 @@ class UpdateInsightWorker(MemoryBaseWorker):
|
|||
self.gather_thread_result()
|
||||
|
||||
for node in not_updated_nodes:
|
||||
node.obs_updated = True
|
||||
node.obs_updated = 1
|
||||
node.action_status = ActionStatusEnum.MODIFIED
|
||||
|
||||
for node in not_reflected_nodes:
|
||||
node.obs_updated = True
|
||||
node.obs_updated = 1
|
||||
node.action_status = ActionStatusEnum.MODIFIED
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ class LoadMemoryWorker(MemoryBaseWorker):
|
|||
"target_name": self.target_name,
|
||||
"store_status": StoreStatusEnum.VALID.value,
|
||||
"memory_type": [MemoryTypeEnum.OBSERVATION.value, MemoryTypeEnum.OBS_CUSTOMIZED.value],
|
||||
"obs_reflected": False,
|
||||
"obs_reflected": 0,
|
||||
}
|
||||
nodes: List[MemoryNode] = self.memory_store.retrieve_memories(query=query,
|
||||
top_k=self.retrieve_not_reflected_top_k,
|
||||
|
|
@ -43,7 +43,7 @@ class LoadMemoryWorker(MemoryBaseWorker):
|
|||
"target_name": self.target_name,
|
||||
"store_status": StoreStatusEnum.VALID.value,
|
||||
"memory_type": [MemoryTypeEnum.OBSERVATION.value, MemoryTypeEnum.OBS_CUSTOMIZED.value],
|
||||
"obs_updated": False,
|
||||
"obs_updated": 0,
|
||||
}
|
||||
nodes: List[MemoryNode] = self.memory_store.retrieve_memories(query=query,
|
||||
top_k=self.retrieve_not_updated_top_k,
|
||||
|
|
|
|||
|
|
@ -1,8 +1,7 @@
|
|||
from typing import Dict, List
|
||||
from typing import List
|
||||
|
||||
from memory_scope.enumeration.action_status_enum import ActionStatusEnum
|
||||
from memory_scope.enumeration.memory_type_enum import MemoryTypeEnum
|
||||
from memory_scope.enumeration.store_status_enum import StoreStatusEnum
|
||||
from memory_scope.memory.worker.memory_base_worker import MemoryBaseWorker
|
||||
from memory_scope.scheme.memory_node import MemoryNode
|
||||
from memory_scope.utils.datetime_handler import DatetimeHandler
|
||||
|
|
@ -13,8 +12,6 @@ class UpdateMemoryWorker(MemoryBaseWorker):
|
|||
def _parse_params(self, **kwargs):
|
||||
self.method: str = kwargs.get("method", "")
|
||||
self.memory_key: str = kwargs.get("memory_key", "")
|
||||
self.expired_action: str = kwargs.get("expired_action", "")
|
||||
self.valid_action_dict: Dict[str, str] = kwargs.get("expired_action", {})
|
||||
|
||||
def from_query(self):
|
||||
if "query" not in self.chat_kwargs:
|
||||
|
|
@ -39,17 +36,28 @@ class UpdateMemoryWorker(MemoryBaseWorker):
|
|||
|
||||
return self.memory_handler.get_memories(keys=self.memory_key)
|
||||
|
||||
def modify_action_status(self):
|
||||
def delete_all(self):
|
||||
nodes: List[MemoryNode] = self.memory_handler.get_memories(keys="all")
|
||||
for node in nodes:
|
||||
if self.expired_action and node.store_status == StoreStatusEnum.EXPIRED.value:
|
||||
node.action_status = self.expired_action
|
||||
node.action_status = ActionStatusEnum.DELETE.value
|
||||
self.logger.info(f"delete_all.size={len(nodes)}")
|
||||
return nodes
|
||||
|
||||
elif node.memory_type in self.valid_action_dict:
|
||||
action_status = self.valid_action_dict[node.memory_type]
|
||||
if action_status:
|
||||
node.action_status = action_status
|
||||
def delete_query(self):
|
||||
if "query" not in self.chat_kwargs:
|
||||
return
|
||||
|
||||
query = self.chat_kwargs["query"].strip()
|
||||
if not query:
|
||||
return
|
||||
|
||||
i = 0
|
||||
nodes: List[MemoryNode] = self.memory_handler.get_memories(keys="all")
|
||||
for node in nodes:
|
||||
if node.content == query:
|
||||
i += 1
|
||||
node.action_status = ActionStatusEnum.DELETE.value
|
||||
self.logger.info(f"delete_query.size={len(nodes)}")
|
||||
return nodes
|
||||
|
||||
def _run(self):
|
||||
|
|
|
|||
|
|
@ -44,9 +44,9 @@ class MemoryNode(BaseModel):
|
|||
|
||||
dt: str = Field("", description="dt of the memory node")
|
||||
|
||||
obs_reflected: bool = Field(False, description="if the observation is reflected")
|
||||
obs_reflected: int = Field(0, description="if the observation is reflected: 0/1")
|
||||
|
||||
obs_updated: bool = Field(False, description="if the observation has updated user profile or insight")
|
||||
obs_updated: int = Field(0, description="if the observation has updated user profile or insight: 0/1")
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
|
|
|
|||
|
|
@ -46,8 +46,8 @@ class MemoryHandler(object):
|
|||
for node in nodes:
|
||||
if node.memory_id in self._id_memory_dict:
|
||||
if log_repeat:
|
||||
self.logger.warning(f"repeated_id memory id={node.memory_id} content={node.content} "
|
||||
f"store_status={node.store_status} action_status={node.action_status}")
|
||||
self.logger.debug(f"repeated_id memory id={node.memory_id} content={node.content} "
|
||||
f"store_status={node.store_status} action_status={node.action_status}")
|
||||
continue
|
||||
|
||||
self._id_memory_dict[node.memory_id] = node
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue