Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docs/examples/ai_companion.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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}"

Expand Down Expand Up @@ -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.")

Expand Down
4 changes: 2 additions & 2 deletions docs/examples/llamaindex-multiagent-learning-system.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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!"
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/memory-guided-content-writing.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/openai-inbuilt-tools.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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}` : "";
};

Expand Down
4 changes: 2 additions & 2 deletions docs/examples/personal-travel-assistant.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/agentops.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/agno.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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"""
Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/autogen.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down Expand Up @@ -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:
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/elevenlabs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/google-ai-adk.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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"}

Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/langchain.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/langgraph.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/livekit.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
6 changes: 3 additions & 3 deletions docs/integrations/multion.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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)
```
Expand All @@ -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}"
Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/openai-agents-sdk.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down