Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
65d5649
update reader and search strategy
Oct 28, 2025
6cad866
set strategy reader and search config
Oct 29, 2025
f040110
fix all reader conflicts
Oct 29, 2025
c389367
fix install problem
Oct 29, 2025
499502d
fix
Oct 29, 2025
e1bb223
fix test
Oct 29, 2025
72b7466
Merge branch 'dev' into dev_test
CaralHsi Oct 29, 2025
74585e8
Merge branch 'dev' into dev_test
fridayL Oct 30, 2025
790e99f
turn off graph recall
Oct 30, 2025
15b63a7
Merge branch 'dev' into dev_test
Oct 30, 2025
390ba29
turn off graph recall
Oct 30, 2025
9615282
turn off graph recall
Oct 30, 2025
2fb8ce0
Merge branch 'dev' into dev_test
fridayL Oct 30, 2025
6035522
Merge branch 'dev' into dev_test
Oct 30, 2025
04f412b
fix Searcher input bug
Oct 30, 2025
9716274
fix Searcher
Oct 30, 2025
c455a4e
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Oct 30, 2025
f8b9b4a
fix Search
Oct 30, 2025
c840ad4
Merge branch 'dev' into dev_test
Oct 30, 2025
b9dbecd
fix bug
Nov 4, 2025
1798f60
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 4, 2025
6db95e7
Merge branch 'dev' into dev_test
Nov 4, 2025
1173c07
adjust strategy reader
Nov 4, 2025
7ab465b
Merge branch 'dev' into dev_test
Nov 4, 2025
744d227
adjust strategy reader
Nov 4, 2025
a9a98fa
adjust search config input
Nov 4, 2025
900f5e6
reformat code
Nov 4, 2025
ac7aff5
Merge branch 'dev' into dev_test
CaralHsi Nov 4, 2025
144c446
re pr
Nov 5, 2025
a2b55c7
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 5, 2025
441c52b
Merge branch 'dev' into dev_test
Nov 5, 2025
6f272db
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Nov 5, 2025
f506d3e
format repair
Nov 5, 2025
db9041c
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 5, 2025
d921284
Merge branch 'dev' into dev_test
CaralHsi Nov 5, 2025
d036c53
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 11, 2025
5a3f0db
Merge branch 'dev' into dev_test
Nov 11, 2025
dc67413
fix time issue
Nov 11, 2025
7699b9a
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Nov 11, 2025
8bfbf94
develop feedback process
Nov 19, 2025
875c551
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 19, 2025
7f20f8b
Resolve merge conflicts
Nov 19, 2025
4d712eb
feedback handler configuration
Nov 20, 2025
36b93eb
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 25, 2025
adec73e
merged
Nov 25, 2025
aef3aad
upgrade feedback using
Nov 26, 2025
81ec520
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 26, 2025
55c9d89
fix
Nov 26, 2025
b4fbfde
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 27, 2025
ee64719
Merge branch 'dev' into dev_test
Nov 27, 2025
0fa9be7
add threshold
Nov 27, 2025
4a4746e
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Nov 27, 2025
16de8da
Merge branch 'dev' into dev_test
Nov 27, 2025
facb7b3
update prompt
Nov 27, 2025
eab5fe6
update prompt
Nov 27, 2025
7577aac
fix handler
Nov 27, 2025
cc4069d
add feedback scheduler
Nov 29, 2025
2529db2
add handler change node update
Dec 1, 2025
898ccac
add handler change node update
Dec 1, 2025
faec340
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 1, 2025
913c24d
add handler change node update
Dec 1, 2025
91d063d
add handler change node update
Dec 1, 2025
2a47880
add handler change node update
Dec 1, 2025
c5618c6
Merge branch 'dev' into dev_test
whipser030 Dec 2, 2025
b9737f1
Merge branch 'dev' into dev_test
CaralHsi Dec 2, 2025
ad9c2e7
fix interface input
Dec 2, 2025
c0c32b1
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 2, 2025
d906f0d
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 2, 2025
696708e
fix interface input
Dec 2, 2025
6ad8dae
add chunk and ratio filter
Dec 3, 2025
6298c64
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 3, 2025
47acd7a
Merge branch 'dev' into dev_test
Dec 3, 2025
0727c25
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 3, 2025
0b0342d
Merge branch 'dev' into dev_test
Dec 3, 2025
294c1e6
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 3, 2025
d9158e4
Merge branch 'dev' into dev_test
Dec 3, 2025
699cdf7
update stopwords
Dec 3, 2025
8ca03c0
Merge branch 'dev' into dev_test
fridayL Dec 3, 2025
6076935
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 4, 2025
b2b0f6e
Merge branch 'dev' into dev_test
Dec 4, 2025
343eeb3
fix messages queue
Dec 4, 2025
1bb9396
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 4, 2025
045196c
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 4, 2025
7131c35
Merge branch 'dev' into dev_test
Dec 4, 2025
d66e8ce
add seach_by_keywords_LIKE
Dec 7, 2025
d081aaa
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 7, 2025
405658f
Merge branch 'dev' into dev_test
Dec 7, 2025
ae60994
add doc filter
Dec 9, 2025
70efbf3
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 9, 2025
a613c7e
merge dev
Dec 9, 2025
7b0f2f4
add retrieve query
Dec 9, 2025
c6768b6
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 9, 2025
005a5bb
add retrieve queies
Dec 10, 2025
d69e7f4
patch info filter
Dec 10, 2025
d4f18e8
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 10, 2025
3c5199a
add strict info filter
Dec 11, 2025
365e0b6
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 12, 2025
9bc942d
Merge branch 'dev' into dev_test
Dec 12, 2025
eab3d80
add log and make embedding safety net
Dec 12, 2025
9519f5e
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 12, 2025
f21a885
Merge branch 'dev' into dev_test
Dec 12, 2025
7f146e1
add log and make embedding safety net
Dec 12, 2025
4cc4677
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 15, 2025
c01c900
Merge branch 'dev' into dev_test
Dec 15, 2025
4da6d31
deduplicate add objects
Dec 16, 2025
28934c8
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 16, 2025
d3f0a77
Merge branch 'dev' into dev_test
Dec 16, 2025
13e8d16
Merge branch 'dev' into dev_test
CaralHsi Dec 16, 2025
fd2816c
use _add_memories_parallel
Dec 17, 2025
dfe62dc
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 17, 2025
192d150
Merge branch 'dev' into dev_test
Dec 17, 2025
e6ce0ee
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 17, 2025
02585f2
Merge branch 'dev' into dev_test
fridayL Dec 17, 2025
39b0b20
delete Special characters
Dec 17, 2025
81fa434
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 17, 2025
0a10a52
Merge branch 'dev' into dev_test
Dec 17, 2025
991092e
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 17, 2025
b7b5003
delete Special characters
Dec 17, 2025
95bb061
delete Special characters
Dec 17, 2025
14d6732
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 17, 2025
c8ea8ae
Merge branch 'dev' into dev_test
Dec 17, 2025
a2fe6ed
delete Special characters
Dec 17, 2025
6274864
add source_doc_id
Dec 17, 2025
5f19846
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 17, 2025
a06e5f7
Merge branch 'dev' into dev_test
Dec 17, 2025
f2aec38
add source_doc_id
Dec 17, 2025
45f4957
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 18, 2025
bd612b9
Merge branch 'dev' into dev_test
Dec 18, 2025
d34812b
add reranker in init com..
Dec 18, 2025
5b681be
Merge branch 'dev' into dev_test
fridayL Dec 18, 2025
3919dcf
fix circle import
Dec 18, 2025
56df680
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 18, 2025
dd1aef9
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 18, 2025
777d6e0
Merge branch 'dev' into dev_test
Dec 18, 2025
353e417
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 22, 2025
bd8651c
Merge branch 'dev' into dev_test
Dec 22, 2025
73106ed
add feedback judgement
Dec 23, 2025
b7ffa5a
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 23, 2025
f37b15b
Merge branch 'dev' into dev_test
Dec 23, 2025
1b0e3af
add feedback judgement
Dec 23, 2025
f6d8f77
add pref feedback
Dec 24, 2025
9137781
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 24, 2025
ef36b5b
add pref feedback
Dec 24, 2025
ed34f0c
add pref feedback
Dec 24, 2025
fd50e90
Merge branch 'dev' into dev_test
fridayL Dec 25, 2025
653d900
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 29, 2025
827a503
patch: get_memory func filter user id and make page chunk
Dec 29, 2025
82ea9ee
Merge branch 'dev' into dev_test
Dec 29, 2025
8e28619
Merge branch 'dev_test' of github.com:whipser030/MemOS into dev_test
Dec 29, 2025
3dd09d5
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 29, 2025
a779823
Merge branch 'dev' into dev_test
Dec 29, 2025
4fab261
add total num
Dec 30, 2025
29f63c0
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 30, 2025
6aacaa7
Merge branch 'dev' into dev_test
Dec 30, 2025
b5f71a5
add total num
Dec 30, 2025
098a830
add milvus pagination
Dec 30, 2025
dd8cd80
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 30, 2025
9eca446
Merge branch 'dev' into dev_test
Dec 30, 2025
3fd1743
fix merge implicit explicit pref
Dec 30, 2025
963aa91
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Dec 30, 2025
031876c
fix merge implicit explicit pref
Dec 30, 2025
af610fe
fix merge implicit explicit pref
Dec 30, 2025
eab2303
fix merge implicit explicit pref
Dec 30, 2025
83061d1
fix json load bug
Jan 7, 2026
6707cc2
Merge branch 'dev' of github.com:MemTensor/MemOS into dev
Jan 7, 2026
a0989fd
Merge branch 'dev' into dev_test
Jan 7, 2026
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
99 changes: 60 additions & 39 deletions src/memos/mem_feedback/feedback.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import uuid

from datetime import datetime
from typing import TYPE_CHECKING, Any
from typing import TYPE_CHECKING, Any, Literal

from tenacity import retry, stop_after_attempt, wait_random_exponential

Expand All @@ -18,6 +18,8 @@
from memos.log import get_logger
from memos.mem_feedback.base import BaseMemFeedback
from memos.mem_feedback.utils import (
extract_bracket_content,
extract_square_brackets_content,
general_split_into_chunks,
make_mem_item,
should_keep_update,
Expand Down Expand Up @@ -118,7 +120,7 @@ def _retry_db_operation(self, operation):
return operation()
except Exception as e:
logger.error(
f"[1224 Feedback Core: _retry_db_operation] DB operation failed: {e}", exc_info=True
f"[0107 Feedback Core: _retry_db_operation] DB operation failed: {e}", exc_info=True
)
raise

Expand All @@ -132,7 +134,7 @@ def _batch_embed(self, texts: list[str], embed_bs: int = 5):
results.extend(self._embed_once(batch))
except Exception as e:
logger.error(
f"[1224 Feedback Core: process_feedback_core] Embedding batch failed, Cover with all zeros: {len(batch)} entries: {e}"
f"[0107 Feedback Core: process_feedback_core] Embedding batch failed, Cover with all zeros: {len(batch)} entries: {e}"
)
results.extend([[0.0] * dim for _ in range(len(batch))])
return results
Expand All @@ -148,7 +150,7 @@ def _pure_add(self, user_name: str, feedback_content: str, feedback_time: str, i
lambda: self.memory_manager.add(to_add_memories, user_name=user_name, use_batch=False)
)
logger.info(
f"[1224 Feedback Core: _pure_add] Pure added {len(added_ids)} memories for user {user_name}."
f"[0107 Feedback Core: _pure_add] Pure added {len(added_ids)} memories for user {user_name}."
)
return {
"record": {
Expand Down Expand Up @@ -180,12 +182,12 @@ def _keyword_replace_judgement(self, feedback_content: str) -> dict | None:
user_feedback=feedback_content,
)

judge_res = self._get_llm_response(prompt)
judge_res = self._get_llm_response(prompt, load_type="bracket")
if judge_res:
return judge_res
else:
logger.warning(
"[1224 Feedback Core: _feedback_judgement] feedback judgement failed, return []"
"[0107 Feedback Core: _feedback_judgement] feedback judgement failed, return []"
)
return {}

Expand All @@ -205,12 +207,12 @@ def _feedback_judgement(
feedback_time=feedback_time,
)

judge_res = self._get_llm_response(prompt)
judge_res = self._get_llm_response(prompt, load_type="square_bracket")
if judge_res:
return judge_res
else:
logger.warning(
"[1224 Feedback Core: _feedback_judgement] feedback judgement failed, return []"
"[0107 Feedback Core: _feedback_judgement] feedback judgement failed, return []"
)
return []

Expand Down Expand Up @@ -276,7 +278,7 @@ def _single_update_operation(
"""
if "preference" in old_memory_item.metadata.__dict__:
logger.info(
f"[1224 Feedback Core: _single_update_operation] pref_memory: {old_memory_item.id}"
f"[0107 Feedback Core: _single_update_operation] pref_memory: {old_memory_item.id}"
)
return self._single_update_pref(
old_memory_item, new_memory_item, user_id, user_name, operation
Expand Down Expand Up @@ -408,11 +410,11 @@ def _del_working_binding(self, user_name, mem_items: list[TextualMemoryItem]) ->
self.graph_store.delete_node(mid, user_name=user_name)

logger.info(
f"[1224 Feedback Core:_del_working_binding] Delete raw/working mem_ids: {delete_ids} for user_name: {user_name}"
f"[0107 Feedback Core:_del_working_binding] Delete raw/working mem_ids: {delete_ids} for user_name: {user_name}"
)
except Exception as e:
logger.warning(
f"[1224 Feedback Core:_del_working_binding] TreeTextMemory.delete_hard: failed to delete {mid}: {e}"
f"[0107 Feedback Core:_del_working_binding] TreeTextMemory.delete_hard: failed to delete {mid}: {e}"
)

def semantics_feedback(
Expand Down Expand Up @@ -473,7 +475,7 @@ def semantics_feedback(
chat_history=history_str,
)

future = executor.submit(self._get_llm_response, prompt)
future = executor.submit(self._get_llm_response, prompt, load_type="bracket")
future_to_chunk_idx[future] = chunk
for future in concurrent.futures.as_completed(future_to_chunk_idx):
try:
Expand All @@ -486,7 +488,7 @@ def semantics_feedback(
all_operations.extend(chunk_operations["operations"])
except Exception as e:
logger.error(
f"[1224 Feedback Core: semantics_feedback] Operation failed: {e}"
f"[0107 Feedback Core: semantics_feedback] Operation failed: {e}"
)

standard_operations = self.standard_operations(all_operations, current_memories)
Expand Down Expand Up @@ -536,7 +538,7 @@ def semantics_feedback(
update_results.append(result)
except Exception as e:
logger.error(
f"[1224 Feedback Core: semantics_feedback] Operation failed for {original_op}: {e}",
f"[0107 Feedback Core: semantics_feedback] Operation failed for {original_op}: {e}",
exc_info=True,
)
if update_results:
Expand Down Expand Up @@ -564,7 +566,7 @@ def _feedback_memory(
]
if filterd_ids:
logger.warning(
f"[1224 Feedback Core: _feedback_memory] Since the tags mode is fast, no modifications are made to the following memory {filterd_ids}."
f"[0107 Feedback Core: _feedback_memory] Since the tags mode is fast, no modifications are made to the following memory {filterd_ids}."
)

current_memories = [
Expand Down Expand Up @@ -596,7 +598,7 @@ def _feedback_memory(
results[i] = node
except Exception as e:
logger.error(
f"[1224 Feedback Core: _feedback_memory] Error processing memory index {i}: {e}",
f"[0107 Feedback Core: _feedback_memory] Error processing memory index {i}: {e}",
exc_info=True,
)
mem_res = [r for r in results if r]
Expand Down Expand Up @@ -660,38 +662,57 @@ def _vec_query(self, new_memories_embedding: list[float], user_name=None):

if not retrieved_ids:
logger.info(
f"[1224 Feedback Core: _vec_query] No similar memories found for embedding query for user {user_name}."
f"[0107 Feedback Core: _vec_query] No similar memories found for embedding query for user {user_name}."
)

filterd_ids = [
item["id"] for item in current_memories if "mode:fast" in item["metadata"]["tags"]
]
if filterd_ids:
logger.warning(
f"[1224 Feedback Core: _vec_query] Since the tags mode is fast, no modifications are made to the following memory {filterd_ids}."
f"[0107 Feedback Core: _vec_query] Since the tags mode is fast, no modifications are made to the following memory {filterd_ids}."
)
return [
TextualMemoryItem(**item)
for item in current_memories
if "mode:fast" not in item["metadata"]["tags"]
]

def _get_llm_response(self, prompt: str, dsl: bool = True) -> dict:
def _get_llm_response(
self,
prompt: str,
dsl: bool = True,
load_type: Literal["bracket", "square_bracket"] | None = None,
) -> dict:
messages = [{"role": "user", "content": prompt}]
response_text = ""
try:
response_text = self.llm.generate(messages, temperature=0.3, timeout=60)
if dsl:
if not dsl:
return response_text
try:
response_text = response_text.replace("```", "").replace("json", "")
cleaned_text = re.sub(r"[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]", "", response_text)
response_json = json.loads(cleaned_text)
else:
return response_text
return response_json
except (json.JSONDecodeError, ValueError) as e:
if load_type == "bracket":
response_json = extract_bracket_content(response_text)
return response_json
elif load_type == "square_bracket":
response_json = extract_square_brackets_content(response_text)
return response_json
else:
logger.error(
f"[Feedback Core LLM Error] Exception during chat generation: {e} | response_text: {response_text}"
)
return None

except Exception as e:
logger.error(
f"[Feedback Core LLM Error] Exception during chat generation: {e} | response_text: {response_text}"
)
response_json = None
return response_json
return None

def filter_fault_update(self, operations: list[dict]):
"""To address the randomness of large model outputs, it is necessary to conduct validity evaluation on the texts used for memory override operations."""
Expand All @@ -710,7 +731,7 @@ def filter_fault_update(self, operations: list[dict]):
raw_operations_str = {"operations": chunk}
prompt = template.format(raw_operations=str(raw_operations_str))

future = executor.submit(self._get_llm_response, prompt)
future = executor.submit(self._get_llm_response, prompt, load_type="bracket")
future_to_chunk_idx[future] = chunk
for future in concurrent.futures.as_completed(future_to_chunk_idx):
try:
Expand All @@ -722,9 +743,9 @@ def filter_fault_update(self, operations: list[dict]):
):
all_judge.extend(judge_res["operations_judgement"])
except Exception as e:
logger.error(f"[1224 Feedback Core: filter_fault_update] Judgement failed: {e}")
logger.error(f"[0107 Feedback Core: filter_fault_update] Judgement failed: {e}")

logger.info(f"[1224 Feedback Core: filter_fault_update] LLM judgement: {all_judge}")
logger.info(f"[0107 Feedback Core: filter_fault_update] LLM judgement: {all_judge}")
id2op = {item["id"]: item for item in updated_operations}
valid_updates = []
for judge in all_judge:
Expand All @@ -735,7 +756,7 @@ def filter_fault_update(self, operations: list[dict]):
valid_updates.append(valid_update)

logger.info(
f"[1224 Feedback Core: filter_fault_update] {len(updated_operations)} -> {len(valid_updates)}"
f"[0107 Feedback Core: filter_fault_update] {len(updated_operations)} -> {len(valid_updates)}"
)
return valid_updates + [item for item in operations if item["operation"] != "UPDATE"]

Expand Down Expand Up @@ -767,7 +788,7 @@ def correct_item(data):

if not should_keep_update(data["text"], data["old_memory"]):
logger.warning(
f"[1224 Feedback Core: correct_item] Due to the excessive proportion of changes, skip update: {data}"
f"[0107 Feedback Core: correct_item] Due to the excessive proportion of changes, skip update: {data}"
)
return None

Expand All @@ -787,14 +808,14 @@ def correct_item(data):
return data
except Exception:
logger.error(
f"[1224 Feedback Core: standard_operations] Error processing operation item: {data}",
f"[0107 Feedback Core: standard_operations] Error processing operation item: {data}",
exc_info=True,
)
return None

dehallu_res = [correct_item(item) for item in operations]
dehalluded_operations = [item for item in dehallu_res if item]
logger.info(f"[1224 Feedback Core: dehalluded_operations] {dehalluded_operations}")
logger.info(f"[0107 Feedback Core: dehalluded_operations] {dehalluded_operations}")

# c add objects
add_texts = []
Expand All @@ -808,7 +829,7 @@ def correct_item(data):
elif item["operation"].lower() == "update":
llm_operations.append(item)
logger.info(
f"[1224 Feedback Core: deduplicate add] {len(dehalluded_operations)} -> {len(llm_operations)} memories"
f"[0107 Feedback Core: deduplicate add] {len(dehalluded_operations)} -> {len(llm_operations)} memories"
)

# Update takes precedence over add
Expand All @@ -822,7 +843,7 @@ def correct_item(data):
]
if filtered_items:
logger.info(
f"[1224 Feedback Core: semantics_feedback] Due to have update objects, skip add: {filtered_items}"
f"[0107 Feedback Core: semantics_feedback] Due to have update objects, skip add: {filtered_items}"
)
return update_items
else:
Expand Down Expand Up @@ -870,7 +891,7 @@ def _doc_filter(self, doc_scope: str, memories: list[TextualMemoryItem]):
memid for inscope_file in inscope_docs for memid in filename2_memid[inscope_file]
]
logger.info(
f"[1224 Feedback Core: process_keyword_replace] These docs are in scope : {inscope_docs}, relared memids: {inscope_ids}"
f"[0107 Feedback Core: process_keyword_replace] These docs are in scope : {inscope_docs}, relared memids: {inscope_ids}"
)
filter_memories = [mem for mem in memories if mem.id in inscope_ids]
return filter_memories
Expand Down Expand Up @@ -924,7 +945,7 @@ def process_keyword_replace(
retrieved_memories = self._doc_filter(doc_scope, retrieved_memories)

logger.info(
f"[1224 Feedback Core: process_keyword_replace] Keywords recalled memory for user {user_name}: {len(retrieved_ids)} memories | After filtering: {len(retrieved_memories)} memories."
f"[0107 Feedback Core: process_keyword_replace] Keywords recalled memory for user {user_name}: {len(retrieved_ids)} memories | After filtering: {len(retrieved_memories)} memories."
)

if not retrieved_memories:
Expand Down Expand Up @@ -1009,7 +1030,7 @@ def check_validity(item):
info.update({"user_id": user_id, "user_name": user_name, "session_id": session_id})

logger.info(
f"[1224 Feedback Core: process_feedback_core] Starting memory feedback process for user {user_name}"
f"[0107 Feedback Core: process_feedback_core] Starting memory feedback process for user {user_name}"
)
# feedback keywords update
kwp_judge = self._keyword_replace_judgement(feedback_content)
Expand Down Expand Up @@ -1042,7 +1063,7 @@ def check_validity(item):

if not valid_feedback:
logger.warning(
f"[1224 Feedback Core: process_feedback_core] No valid judgements for user {user_name}: {raw_judge}."
f"[0107 Feedback Core: process_feedback_core] No valid judgements for user {user_name}: {raw_judge}."
)
return {"record": {"add": [], "update": []}}

Expand Down Expand Up @@ -1090,13 +1111,13 @@ def check_validity(item):
add_memories = mem_record["record"]["add"]
update_memories = mem_record["record"]["update"]
logger.info(
f"[1224 Feedback Core: process_feedback_core] Processed {len(feedback_memories)} feedback | add {len(add_memories)} memories | update {len(update_memories)} memories for user {user_name}."
f"[0107 Feedback Core: process_feedback_core] Processed {len(feedback_memories)} feedback | add {len(add_memories)} memories | update {len(update_memories)} memories for user {user_name}."
)
return mem_record

except Exception as e:
logger.error(
f"[1224 Feedback Core: process_feedback_core] Error for user {user_name}: {e}"
f"[0107 Feedback Core: process_feedback_core] Error for user {user_name}: {e}"
)
return {"record": {"add": [], "update": []}}

Expand Down
Loading