refactor(memory): standardize memory service response handling
Some checks failed
Build and Push Docker / build-and-push (push) Failing after 43m47s
Some checks failed
Build and Push Docker / build-and-push (push) Failing after 43m47s
This commit is contained in:
@ -36,23 +36,12 @@ In your response, consider the memories above to provide a personalized answer."
|
|||||||
user_id=user_id,
|
user_id=user_id,
|
||||||
limit=limit
|
limit=limit
|
||||||
)
|
)
|
||||||
# Debug: Print the actual format of results
|
# Handle dictionary response format - check for both 'memories' and 'results' keys
|
||||||
print(f"[DEBUG] Search results type: {type(results)}")
|
|
||||||
print(f"[DEBUG] Search results content: {results}")
|
|
||||||
if isinstance(results, dict):
|
if isinstance(results, dict):
|
||||||
# Handle dictionary response format (based on official docs)
|
memories = results.get("memories", results.get("results", []))
|
||||||
memories = results.get("memories", [])
|
|
||||||
if memories:
|
|
||||||
print(f"[DEBUG] First memory type: {type(memories[0])}")
|
|
||||||
print(f"[DEBUG] First memory: {memories[0]}")
|
|
||||||
else:
|
|
||||||
print(f"[DEBUG] No memories found in search results")
|
|
||||||
return memories
|
return memories
|
||||||
elif isinstance(results, list):
|
|
||||||
# Handle list response format
|
|
||||||
return results
|
|
||||||
else:
|
else:
|
||||||
print(f"[WARNING] Unexpected search results format: {type(results)}")
|
print(f"[ERROR] Unexpected search results format: {type(results)}")
|
||||||
return []
|
return []
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[ERROR] Failed to search memories: {e}")
|
print(f"[ERROR] Failed to search memories: {e}")
|
||||||
@ -168,10 +157,7 @@ In your response, consider the memories above to provide a personalized answer."
|
|||||||
"""Get all memories for a user."""
|
"""Get all memories for a user."""
|
||||||
try:
|
try:
|
||||||
memories = self.memory.get_all(user_id=user_id)
|
memories = self.memory.get_all(user_id=user_id)
|
||||||
# Debug: Print the actual format of memories
|
# Handle dictionary response format
|
||||||
print(f"[DEBUG] All memories type: {type(memories)}")
|
|
||||||
print(f"[DEBUG] All memories content: {memories}")
|
|
||||||
|
|
||||||
if isinstance(memories, dict):
|
if isinstance(memories, dict):
|
||||||
# Check for different possible key names
|
# Check for different possible key names
|
||||||
if "memories" in memories:
|
if "memories" in memories:
|
||||||
@ -186,21 +172,12 @@ In your response, consider the memories above to provide a personalized answer."
|
|||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
memories_list = []
|
memories_list = []
|
||||||
|
|
||||||
if memories_list:
|
|
||||||
print(f"[DEBUG] First memory type: {type(memories_list[0])}")
|
|
||||||
print(f"[DEBUG] First memory: {memories_list[0]}")
|
|
||||||
return memories_list
|
return memories_list
|
||||||
elif isinstance(memories, list):
|
|
||||||
# Handle list response format
|
|
||||||
return memories
|
|
||||||
else:
|
else:
|
||||||
print(f"[WARNING] Unexpected memories format: {type(memories)}")
|
print(f"[ERROR] Unexpected memories format: {type(memories)}")
|
||||||
return []
|
return []
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[ERROR] Failed to get all memories: {e}")
|
print(f"[ERROR] Failed to get all memories: {e}")
|
||||||
import traceback
|
|
||||||
traceback.print_exc()
|
|
||||||
return []
|
return []
|
||||||
|
|
||||||
def delete_memory(self, memory_id: str) -> bool:
|
def delete_memory(self, memory_id: str) -> bool:
|
||||||
|
Reference in New Issue
Block a user