From c2792c655813148527dcb4d87c0a96b1d2c7d03d Mon Sep 17 00:00:00 2001 From: cnScarb Date: Tue, 12 Aug 2025 01:16:01 +0800 Subject: [PATCH] docs: fix search method return value handling in integration and example docs (#3208) --- docs/examples/ai_companion.mdx | 6 +++--- docs/examples/llamaindex-multiagent-learning-system.mdx | 4 ++-- docs/examples/memory-guided-content-writing.mdx | 2 +- docs/examples/openai-inbuilt-tools.mdx | 2 +- docs/examples/personal-travel-assistant.mdx | 4 ++-- docs/integrations/agentops.mdx | 2 +- docs/integrations/agno.mdx | 2 +- docs/integrations/autogen.mdx | 4 ++-- docs/integrations/elevenlabs.mdx | 2 +- docs/integrations/google-ai-adk.mdx | 4 ++-- docs/integrations/langchain.mdx | 2 +- docs/integrations/langgraph.mdx | 2 +- docs/integrations/livekit.mdx | 4 ++-- docs/integrations/multion.mdx | 6 +++--- docs/integrations/openai-agents-sdk.mdx | 4 ++-- 15 files changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/examples/ai_companion.mdx b/docs/examples/ai_companion.mdx index 4ce027ab7..485e4a171 100644 --- a/docs/examples/ai_companion.mdx +++ b/docs/examples/ai_companion.mdx @@ -87,8 +87,8 @@ class Companion: previous_memories = self.memory.search(question, user_id=user_id_to_use) relevant_memories_text = "" - if previous_memories: - relevant_memories_text = '\n'.join(mem["memory"] for mem in previous_memories) + if previous_memories and previous_memories.get('results'): + relevant_memories_text = '\n'.join(mem["memory"] for mem in previous_memories['results']) prompt = f"User input: {question}\nPrevious {check_answer} memories: {relevant_memories_text}" @@ -146,7 +146,7 @@ def print_memories(user_id, label): memories = ai_companion.get_memories(user_id=user_id) if memories: for m in memories: - print(f"- {m['text']}") + print(f"- {m['memory']}") else: print("No memories found.") diff --git a/docs/examples/llamaindex-multiagent-learning-system.mdx b/docs/examples/llamaindex-multiagent-learning-system.mdx index 09c6e1c46..149a503a6 100644 --- a/docs/examples/llamaindex-multiagent-learning-system.mdx +++ b/docs/examples/llamaindex-multiagent-learning-system.mdx @@ -213,8 +213,8 @@ class MultiAgentLearningSystem: query="learning machine learning" ) - if memories and len(memories): - history = "\n".join(f"- {m['memory']}" for m in memories) + if memories and memories.get('results'): + history = "\n".join(f"- {m['memory']}" for m in memories['results']) return history else: return "No learning history found yet. Let's start building your profile!" diff --git a/docs/examples/memory-guided-content-writing.mdx b/docs/examples/memory-guided-content-writing.mdx index 2d4ff5242..14e0bd9cf 100644 --- a/docs/examples/memory-guided-content-writing.mdx +++ b/docs/examples/memory-guided-content-writing.mdx @@ -86,7 +86,7 @@ def apply_writing_style(original_content): print("No preferences found.") return None - preferences = "\n".join(r["memory"] for r in results) + preferences = "\n".join(r["memory"] for r in results.get('results', [])) system_prompt = f""" You are a writing assistant. diff --git a/docs/examples/openai-inbuilt-tools.mdx b/docs/examples/openai-inbuilt-tools.mdx index 93d110ce2..b1b95a4ba 100644 --- a/docs/examples/openai-inbuilt-tools.mdx +++ b/docs/examples/openai-inbuilt-tools.mdx @@ -225,7 +225,7 @@ async function addSampleMemories() { const getMemoryString = (memories) => { const MEMORY_STRING_PREFIX = "These are the memories I have stored. Give more weightage to the question by users and try to answer that first. You have to modify your answer based on the memories I have provided. If the memories are irrelevant you can ignore them. Also don't reply to this section of the prompt, or the memories, they are only for your reference. The MEMORIES of the USER are: \n\n"; - const memoryString = memories.map((mem) => `${mem.memory}`).join("\n") ?? ""; + const memoryString = (memories?.results || memories).map((mem) => `${mem.memory}`).join("\n") ?? ""; return memoryString.length > 0 ? `${MEMORY_STRING_PREFIX}${memoryString}` : ""; }; diff --git a/docs/examples/personal-travel-assistant.mdx b/docs/examples/personal-travel-assistant.mdx index 1b2f0b409..b953c6ad0 100644 --- a/docs/examples/personal-travel-assistant.mdx +++ b/docs/examples/personal-travel-assistant.mdx @@ -155,11 +155,11 @@ class PersonalTravelAssistant: def get_memories(self, user_id): memories = self.memory.get_all(user_id=user_id) - return [m['memory'] for m in memories['memories']] + return [m['memory'] for m in memories.get('results', [])] def search_memories(self, query, user_id): memories = self.memory.search(query, user_id=user_id) - return [m['memory'] for m in memories['memories']] + return [m['memory'] for m in memories.get('results', [])] # Usage example user_id = "traveler_123" diff --git a/docs/integrations/agentops.mdx b/docs/integrations/agentops.mdx index 9c8910314..3f4a77064 100644 --- a/docs/integrations/agentops.mdx +++ b/docs/integrations/agentops.mdx @@ -104,7 +104,7 @@ def demonstrate_sync_memory(local_config, sample_messages, sample_preferences, u results = memory.search(query, user_id=user_id) if results and "results" in results: - for j, result in enumerate(results): + for j, result in enumerate(results['results']): print(f"Result {j+1}: {result.get('memory', 'N/A')}") else: print("No results found") diff --git a/docs/integrations/agno.mdx b/docs/integrations/agno.mdx index b931feb2b..7b4a9d10a 100644 --- a/docs/integrations/agno.mdx +++ b/docs/integrations/agno.mdx @@ -128,7 +128,7 @@ def chat_user( if user_input: # Search for relevant memories memories = client.search(user_input, user_id=user_id) - memory_context = "\n".join(f"- {m['memory']}" for m in memories) + memory_context = "\n".join(f"- {m['memory']}" for m in memories.get('results', [])) # Construct the prompt prompt = f""" diff --git a/docs/integrations/autogen.mdx b/docs/integrations/autogen.mdx index 4f60059b7..4fa877038 100644 --- a/docs/integrations/autogen.mdx +++ b/docs/integrations/autogen.mdx @@ -68,7 +68,7 @@ Create a function to get context-aware responses based on user's question and pr ```python def get_context_aware_response(question): relevant_memories = memory_client.search(question, user_id=USER_ID) - context = "\n".join([m["memory"] for m in relevant_memories]) + context = "\n".join([m["memory"] for m in relevant_memories.get('results', [])]) prompt = f"""Answer the user question considering the previous interactions: Previous interactions: @@ -100,7 +100,7 @@ manager = ConversableAgent( def escalate_to_manager(question): relevant_memories = memory_client.search(question, user_id=USER_ID) - context = "\n".join([m["memory"] for m in relevant_memories]) + context = "\n".join([m["memory"] for m in relevant_memories.get('results', [])]) prompt = f""" Context from previous interactions: diff --git a/docs/integrations/elevenlabs.mdx b/docs/integrations/elevenlabs.mdx index fbf21a08d..fc5df9a6b 100644 --- a/docs/integrations/elevenlabs.mdx +++ b/docs/integrations/elevenlabs.mdx @@ -152,7 +152,7 @@ Define the two key memory functions that will be registered as tools: ) # Extract and join the memory texts - memories = ' '.join([result["memory"] for result in results]) + memories = ' '.join([result["memory"] for result in results.get('results', [])]) print("[ Memories ]", memories) if memories: diff --git a/docs/integrations/google-ai-adk.mdx b/docs/integrations/google-ai-adk.mdx index 1a3e8831a..166292fc0 100644 --- a/docs/integrations/google-ai-adk.mdx +++ b/docs/integrations/google-ai-adk.mdx @@ -49,8 +49,8 @@ mem0 = MemoryClient() def search_memory(query: str, user_id: str) -> dict: """Search through past conversations and memories""" memories = mem0.search(query, user_id=user_id) - if memories: - memory_context = "\n".join([f"- {mem['memory']}" for mem in memories]) + if memories.get('results', []): + memory_context = "\n".join([f"- {mem['memory']}" for mem in memories.get('results', [])]) return {"status": "success", "memories": memory_context} return {"status": "no_memories", "message": "No relevant memories found"} diff --git a/docs/integrations/langchain.mdx b/docs/integrations/langchain.mdx index c36b07276..42fbdbd75 100644 --- a/docs/integrations/langchain.mdx +++ b/docs/integrations/langchain.mdx @@ -64,7 +64,7 @@ Create functions to handle context retrieval, response generation, and addition def retrieve_context(query: str, user_id: str) -> List[Dict]: """Retrieve relevant context from Mem0""" memories = mem0.search(query, user_id=user_id) - serialized_memories = ' '.join([mem["memory"] for mem in memories]) + serialized_memories = ' '.join([mem["memory"] for mem in memories.get('results', [])]) context = [ { "role": "system", diff --git a/docs/integrations/langgraph.mdx b/docs/integrations/langgraph.mdx index d393d8755..7cf6cebae 100644 --- a/docs/integrations/langgraph.mdx +++ b/docs/integrations/langgraph.mdx @@ -68,7 +68,7 @@ def chatbot(state: State): memories = mem0.search(messages[-1].content, user_id=user_id) context = "Relevant information from previous conversations:\n" - for memory in memories: + for memory in memories.get('results', []): context += f"- {memory['memory']}\n" system_message = SystemMessage(content=f"""You are a helpful customer support assistant. Use the provided context to personalize your responses and remember user preferences and past interactions. diff --git a/docs/integrations/livekit.mdx b/docs/integrations/livekit.mdx index 1a1821148..ee06a7adb 100644 --- a/docs/integrations/livekit.mdx +++ b/docs/integrations/livekit.mdx @@ -119,9 +119,9 @@ class MemoryEnabledAgent(Agent): user_id=RAG_USER_ID, ) logger.info(f"mem0_client.search returned: {search_results}") - if search_results and isinstance(search_results, list): + if search_results and search_results.get('results', []): context_parts = [] - for result in search_results: + for result in search_results.get('results', []): paragraph = result.get("memory") or result.get("text") if paragraph: source = "mem0 Memories" diff --git a/docs/integrations/multion.mdx b/docs/integrations/multion.mdx index b134e71dc..ce07c1ce0 100644 --- a/docs/integrations/multion.mdx +++ b/docs/integrations/multion.mdx @@ -71,7 +71,7 @@ Define search command and retrieve relevant memories from Mem0. command = "Find papers on arxiv that I should read based on my interests." relevant_memories = memory.search(command, user_id=USER_ID, limit=3) -relevant_memories_text = '\n'.join(mem['text'] for mem in relevant_memories) +relevant_memories_text = '\n'.join(mem['memory'] for mem in relevant_memories['results']) print(f"Relevant memories:") print(relevant_memories_text) ``` @@ -98,9 +98,9 @@ def get_travel_info(question, use_memory=True): if use_memory: previous_memories = memory_client.search(question, user_id=USER_ID) relevant_memories_text = "" - if previous_memories: + if previous_memories and previous_memories.get('results'): print("Using previous memories to enhance the search...") - relevant_memories_text = '\n'.join(mem["memory"] for mem in previous_memories) + relevant_memories_text = '\n'.join(mem["memory"] for mem in previous_memories['results']) command = "Find travel information based on my interests:" prompt = f"{command}\n Question: {question} \n My preferences: {relevant_memories_text}" diff --git a/docs/integrations/openai-agents-sdk.mdx b/docs/integrations/openai-agents-sdk.mdx index 681091611..58d75d76d 100644 --- a/docs/integrations/openai-agents-sdk.mdx +++ b/docs/integrations/openai-agents-sdk.mdx @@ -47,8 +47,8 @@ mem0 = MemoryClient() def search_memory(query: str, user_id: str) -> str: """Search through past conversations and memories""" memories = mem0.search(query, user_id=user_id, limit=3) - if memories: - return "\n".join([f"- {mem['memory']}" for mem in memories]) + if memories and memories.get('results'): + return "\n".join([f"- {mem['memory']}" for mem in memories['results']]) return "No relevant memories found." @function_tool