Skip to content
243 changes: 124 additions & 119 deletions README.md

Large diffs are not rendered by default.

648 changes: 648 additions & 0 deletions README.zh.md

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions evaluation/src/adapters/evermemos_adapter.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
from evaluation.src.adapters.evermemos import (
stage1_memcells_extraction,
stage2_index_building,
stage3_memory_retrivel,
stage3_memory_retrieval,
stage4_response,
)

Expand Down Expand Up @@ -497,7 +497,7 @@ async def search(

if retrieval_mode == "agentic":
# Agentic retrieval
top_results, metadata = await stage3_memory_retrivel.agentic_retrieval(
top_results, metadata = await stage3_memory_retrieval.agentic_retrieval(
query=query,
config=exp_config,
llm_provider=self.llm_provider,
Expand All @@ -508,7 +508,7 @@ async def search(
)
elif retrieval_mode == "lightweight":
# Lightweight retrieval
top_results, metadata = await stage3_memory_retrivel.lightweight_retrieval(
top_results, metadata = await stage3_memory_retrieval.lightweight_retrieval(
query=query,
emb_index=emb_index,
bm25=bm25,
Expand All @@ -517,7 +517,7 @@ async def search(
)
else:
# Default to hybrid retrieval
top_results = await stage3_memory_retrivel.hybrid_search_with_rrf(
top_results = await stage3_memory_retrieval.hybrid_search_with_rrf(
query=query,
emb_index=emb_index,
bm25=bm25,
Expand Down
2 changes: 1 addition & 1 deletion src/biz_layer/mem_db_operations.py
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ def _convert_timestamp_to_time(
try:
dt = from_iso_format(timestamp)
return to_iso_format(dt)
except:
except Exception:
# If parsing fails, return string directly
return timestamp
else:
Expand Down
6 changes: 3 additions & 3 deletions src/biz_layer/mem_memorize.py
Original file line number Diff line number Diff line change
Expand Up @@ -1290,7 +1290,7 @@ async def memorize(request: MemorizeRequest) -> int:
# ===== Preprocess and get historical data =====
if request.raw_data_type == RawDataType.CONVERSATION:
request = await preprocess_conv_request(request, current_time)
if request == None:
if request is None:
logger.warning(f"[mem_memorize] preprocess_conv_request returned None")
return 0

Expand Down Expand Up @@ -1326,7 +1326,7 @@ async def memorize(request: MemorizeRequest) -> int:
)
logger.debug(f"[mem_memorize] Extracting MemCell took: {time.perf_counter() - memcell_start} seconds")

if memcell_result == None:
if memcell_result is None:
logger.warning(f"[mem_memorize] Skipped extracting MemCell")
return 0

Expand All @@ -1345,7 +1345,7 @@ async def memorize(request: MemorizeRequest) -> int:
)
logger.info("=" * 80)

if memcell == None:
if memcell is None:
# No boundary detected, confirm current messages to accumulation (sync_status: -1 -> 0)
await conversation_data_repo.save_conversation_data(
request.new_raw_data_list, request.group_id
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ async def ensure_latest(
).update_many({"$set": {"is_latest": False}})

# Update the latest version's is_latest to True
if latest_version.is_latest != True:
if latest_version.is_latest is not True:
latest_version.is_latest = True
await latest_version.save(session=session)
logger.debug(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ async def ensure_latest(
).update_many({"$set": {"is_latest": False}})

# Update the latest version's is_latest to True
if latest_version.is_latest != True:
if latest_version.is_latest is not True:
latest_version.is_latest = True
await latest_version.save(session=session)
logger.debug(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ async def ensure_latest(
).update_many({"$set": {"is_latest": False}})

# Update the latest version's is_latest to True
if latest_version.is_latest != True:
if latest_version.is_latest is not True:
latest_version.is_latest = True
await latest_version.save(session=session)
logger.debug(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ async def create_and_save_episodic_memory(
metadata_json = metadata
try:
metadata_dict = json.loads(metadata)
except:
except Exception:
metadata_dict = {}

# Prepare entity data
Expand Down
2 changes: 1 addition & 1 deletion tests/test_conv_memcell_extractor.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ def get_llm_provider() -> LLMProvider:
try:
# Try to get from DI container
return get_bean_by_type(LLMProvider)
except:
except Exception:
# If not found in DI container, create directly
logger.info("LLMProvider not found in DI container, creating directly...")
return LLMProvider("openai")
Expand Down
2 changes: 1 addition & 1 deletion tests/test_group_user_profile_memory_raw_repository.py
Original file line number Diff line number Diff line change
Expand Up @@ -528,7 +528,7 @@ async def test_batch_get_by_user_groups():
for user_id, group_id, _ in test_data:
try:
await repo.delete_by_user_group(user_id, group_id)
except:
except Exception:
pass
raise

Expand Down
2 changes: 1 addition & 1 deletion tests/test_smart_text_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -612,7 +612,7 @@ class TestCleanWhitespace:
def test_empty_text(self):
"""Test empty text"""
assert clean_whitespace("") == ""
assert clean_whitespace(None) == None
assert clean_whitespace(None) is None

def test_no_whitespace(self):
"""Test text without whitespace characters"""
Expand Down