Fix: Prevent saving prompt artifacts as memory when no new facts are … (#2744)
Co-authored-by: Deshraj Yadav <deshraj@gatech.edu>
This commit is contained in:
@@ -334,6 +334,10 @@ class Memory(MemoryBase):
|
|||||||
logging.error(f"Error in new_retrieved_facts: {e}")
|
logging.error(f"Error in new_retrieved_facts: {e}")
|
||||||
new_retrieved_facts = []
|
new_retrieved_facts = []
|
||||||
|
|
||||||
|
if not new_retrieved_facts:
|
||||||
|
logger.debug("No new facts retrieved from input. Skipping memory update LLM call.")
|
||||||
|
return []
|
||||||
|
|
||||||
retrieved_old_memory = []
|
retrieved_old_memory = []
|
||||||
new_message_embeddings = {}
|
new_message_embeddings = {}
|
||||||
for new_mem in new_retrieved_facts:
|
for new_mem in new_retrieved_facts:
|
||||||
@@ -1137,6 +1141,11 @@ class AsyncMemory(MemoryBase):
|
|||||||
response = remove_code_blocks(response)
|
response = remove_code_blocks(response)
|
||||||
new_retrieved_facts = json.loads(response)["facts"]
|
new_retrieved_facts = json.loads(response)["facts"]
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
new_retrieved_facts = []
|
||||||
|
|
||||||
|
if not new_retrieved_facts:
|
||||||
|
logger.info("No new facts retrieved from input. Skipping memory update LLM call.")
|
||||||
|
return []
|
||||||
logging.error(f"Error in new_retrieved_facts: {e}")
|
logging.error(f"Error in new_retrieved_facts: {e}")
|
||||||
new_retrieved_facts = []
|
new_retrieved_facts = []
|
||||||
|
|
||||||
@@ -1180,16 +1189,25 @@ class AsyncMemory(MemoryBase):
|
|||||||
response_format={"type": "json_object"},
|
response_format={"type": "json_object"},
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|
||||||
|
response = ""
|
||||||
logging.error(f"Error in new memory actions response: {e}")
|
logging.error(f"Error in new memory actions response: {e}")
|
||||||
response = ""
|
response = ""
|
||||||
|
|
||||||
try:
|
try:
|
||||||
response = remove_code_blocks(response)
|
response = remove_code_blocks(response)
|
||||||
new_memories_with_actions = json.loads(response)
|
new_memories_with_actions = json.loads(response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|
||||||
|
new_memories_with_actions = {}
|
||||||
|
|
||||||
|
if not new_memories_with_actions:
|
||||||
|
logger.info("No new facts retrieved from input (async). Skipping memory update LLM call.")
|
||||||
|
return []
|
||||||
|
|
||||||
logging.error(f"Invalid JSON response: {e}")
|
logging.error(f"Invalid JSON response: {e}")
|
||||||
new_memories_with_actions = {}
|
new_memories_with_actions = {}
|
||||||
|
|
||||||
|
|
||||||
returned_memories = []
|
returned_memories = []
|
||||||
try:
|
try:
|
||||||
memory_tasks = []
|
memory_tasks = []
|
||||||
|
|||||||
Reference in New Issue
Block a user