MCPcopy Create free account
hub / github.com/MemTensor/MemOS / process_user

Function process_user

evaluation/scripts/personamem/pm_search.py:174–265  ·  view source on GitHub ↗
(row_data, conv_idx, frame, version, top_k=20)

Source from the content-addressed store, hash-verified

172
173
174def process_user(row_data, conv_idx, frame, version, top_k=20):
175 persona_id = row_data["persona_id"]
176 question_id = row_data["question_id"]
177 question_type = row_data["question_type"]
178 topic = row_data["topic"]
179 question = row_data["user_question_or_message"]
180 correct_answer = row_data["correct_answer"]
181 all_options = row_data["all_options"]
182 user_id = f"pm_exper_user_{conv_idx}_{version}"
183 print(f"\n🔍 Processing conversation {conv_idx} for user {user_id}...")
184
185 search_results = defaultdict(list)
186 print("\n" + "-" * 80)
187 print(f"🔎 [{conv_idx + 1}/589] Processing conversation {conv_idx}")
188 print(f"❓ Question: {question}")
189 print(f"🗂️ Options: {all_options}")
190 print(f"🏷️ Type: {question_type}")
191 print("-" * 80)
192
193 existing_results, exists = load_existing_results(frame, version, conv_idx)
194 if exists:
195 print(f"♻️ Using existing results for conversation {conv_idx}")
196 return existing_results
197
198 if frame == "zep":
199 from utils.client import ZepClient
200
201 client = ZepClient()
202 print("🔌 Using Zep client for search...")
203 context, duration_ms = zep_search(client, user_id, question)
204
205 elif frame == "mem0" or frame == "mem0-graph":
206 from utils.client import Mem0Client
207
208 client = Mem0Client(enable_graph="graph" in frame)
209 print("🔌 Using Mem0 API client for search...")
210 context, duration_ms = mem0_search(client, question, user_id, top_k)
211 elif frame == "memos-api":
212 from utils.client import MemosApiClient
213
214 client = MemosApiClient()
215 print("🔌 Using Memos API client for search...")
216 context, duration_ms = memos_search(client, user_id, question, top_k=top_k)
217 elif frame == "supermemory":
218 from utils.client import SupermemoryClient
219
220 client = SupermemoryClient()
221 print("🔌 Using supermemory client for search...")
222 context, duration_ms = supermemory_search(client, question, user_id, top_k)
223 elif frame == "memu":
224 from utils.client import MemuClient
225
226 client = MemuClient()
227 print("🔌 Using memu client for search...")
228 context, duration_ms = memu_search(client, question, user_id, top_k)
229 elif frame == "memobase":
230 from utils.client import MemobaseClient
231

Callers

nothing calls this directly

Calls 15

ZepClientClass · 0.90
Mem0ClientClass · 0.90
MemosApiClientClass · 0.90
SupermemoryClientClass · 0.90
MemuClientClass · 0.90
MemobaseClientClass · 0.90
zep_searchFunction · 0.85
load_existing_resultsFunction · 0.70
mem0_searchFunction · 0.70
memos_searchFunction · 0.70
supermemory_searchFunction · 0.70

Tested by

no test coverage detected