Skip to content

Commit 05ffddf

Browse files
whipser030黑布林CaralHsi
authored
hotfix: feedback archived new node (#1243)
* update feedback id * update feedback id * feedback fix --------- Co-authored-by: 黑布林 <11641432+heiheiyouyou@user.noreply.gitee.com> Co-authored-by: CaralHsi <caralhsi@gmail.com>
1 parent 2006f76 commit 05ffddf

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

src/memos/mem_feedback/feedback.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import difflib
33
import json
44
import re
5+
import uuid
56

67
from datetime import datetime
78
from typing import TYPE_CHECKING, Any, Literal
@@ -236,6 +237,7 @@ def _single_add_operation(
236237
else:
237238
to_add_memory = new_memory_item.model_copy(deep=True)
238239

240+
to_add_memory.id = str(uuid.uuid4())
239241
if to_add_memory.metadata.memory_type == "PreferenceMemory":
240242
to_add_memory.metadata.preference = new_memory_item.memory
241243

@@ -359,9 +361,14 @@ def semantics_feedback(
359361
lang = detect_lang("".join(memory_item.memory))
360362
template = FEEDBACK_PROMPT_DICT["compare"][lang]
361363
if current_memories == []:
362-
# retrieve
363-
last_user_index = max(i for i, d in enumerate(chat_history_list) if d["role"] == "user")
364-
last_qa = " ".join([item["content"] for item in chat_history_list[last_user_index:]])
364+
user_indices = [i for i, d in enumerate(chat_history_list) if d["role"] == "user"]
365+
if user_indices:
366+
last_user_index = max(user_indices)
367+
last_qa = " ".join(
368+
[item["content"] for item in chat_history_list[last_user_index:]]
369+
)
370+
else:
371+
last_qa = " ".join([item["content"] for item in chat_history_list])
365372
supplementary_retrieved = self._retrieve(last_qa, info=info, user_name=user_name)
366373
feedback_retrieved = self._retrieve(memory_item.memory, info=info, user_name=user_name)
367374

0 commit comments

Comments
 (0)