fix(docs/rerankers): pass rerank=True so examples actually rerank
The reranker examples configured a `reranker` block but called memory.search(...) without rerank=True. Memory.search() defaults rerank=False (mem0/memory/main.py:1333) and only reranks 'if rerank and self.reranker' (:1447), so reranking never ran: - cohere, zero_entropy, llm, sentence_transformer print result['rerank_score'], which doesn't exist unless reranking runs -> KeyError on copy-paste. - optimization (reranker benchmark) and custom-prompts (reranker-prompt test) silently measured un-reranked search. Add the missing rerank=True flag to every search meant to exercise the reranker.
This commit is contained in:
@@ -193,7 +193,7 @@ for i, prompt in enumerate(prompts):
|
||||
config["reranker"]["config"]["scoring_prompt"] = prompt
|
||||
memory = Memory.from_config(config)
|
||||
|
||||
results = memory.search("test query", filters={"user_id": "test_user"})
|
||||
results = memory.search("test query", filters={"user_id": "test_user"}, rerank=True)
|
||||
print(f"Prompt {i+1} results: {results}")
|
||||
```
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ messages = [
|
||||
memory.add(messages, user_id="bob")
|
||||
|
||||
# Search with reranking
|
||||
results = memory.search("What is the user's profession?", filters={"user_id": "bob"})
|
||||
results = memory.search("What is the user's profession?", filters={"user_id": "bob"}, rerank=True)
|
||||
|
||||
for result in results['results']:
|
||||
print(f"Memory: {result['memory']}")
|
||||
|
||||
@@ -111,7 +111,7 @@ messages = [
|
||||
memory.add(messages, user_id="david")
|
||||
|
||||
# Search with LLM reranking
|
||||
results = memory.search("What programming topics is the user studying?", filters={"user_id": "david"})
|
||||
results = memory.search("What programming topics is the user studying?", filters={"user_id": "david"}, rerank=True)
|
||||
|
||||
for result in results['results']:
|
||||
print(f"Memory: {result['memory']}")
|
||||
|
||||
@@ -101,7 +101,7 @@ messages = [
|
||||
memory.add(messages, user_id="charlie")
|
||||
|
||||
# Search with local reranking
|
||||
results = memory.search("What books does the user like?", filters={"user_id": "charlie"})
|
||||
results = memory.search("What books does the user like?", filters={"user_id": "charlie"}, rerank=True)
|
||||
|
||||
for result in results['results']:
|
||||
print(f"Memory: {result['memory']}")
|
||||
|
||||
@@ -86,7 +86,7 @@ messages = [
|
||||
memory.add(messages, user_id="alice")
|
||||
|
||||
# Search with reranking
|
||||
results = memory.search("What Italian food does the user like?", filters={"user_id": "alice"})
|
||||
results = memory.search("What Italian food does the user like?", filters={"user_id": "alice"}, rerank=True)
|
||||
|
||||
for result in results['results']:
|
||||
print(f"Memory: {result['memory']}")
|
||||
|
||||
@@ -146,7 +146,7 @@ def measure_reranker_performance(config, queries, user_id):
|
||||
latencies = []
|
||||
for query in queries:
|
||||
start_time = time.time()
|
||||
results = memory.search(query, filters={"user_id": user_id})
|
||||
results = memory.search(query, filters={"user_id": user_id}, rerank=True)
|
||||
latency = time.time() - start_time
|
||||
latencies.append(latency)
|
||||
|
||||
@@ -218,7 +218,7 @@ async def parallel_search(config, queries, user_id):
|
||||
|
||||
# Process multiple queries concurrently
|
||||
tasks = [
|
||||
memory.search(query, filters={"user_id": user_id})
|
||||
memory.search(query, filters={"user_id": user_id}, rerank=True)
|
||||
for query in queries
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user