2424 sort_children_by_memory_type ,
2525)
2626from memos .mem_os .utils .reference_utils import (
27+ prepare_reference_data ,
2728 process_streaming_references_complete ,
2829)
2930from memos .mem_scheduler .schemas .general_schemas import (
@@ -726,6 +727,7 @@ def chat_with_references(
726727 mode = "fine" ,
727728 internet_search = internet_search ,
728729 )["text_mem" ]
730+
729731 yield f"data: { json .dumps ({'type' : 'status' , 'data' : '1' })} \n \n "
730732 search_time_end = time .time ()
731733 logger .info (
@@ -737,6 +739,9 @@ def chat_with_references(
737739 if memories_result :
738740 memories_list = memories_result [0 ]["memories" ]
739741 memories_list = self ._filter_memories_by_threshold (memories_list )
742+
743+ reference = prepare_reference_data (memories_list )
744+ yield f"data: { json .dumps ({'type' : 'reference' , 'data' : reference })} \n \n "
740745 # Build custom system prompt with relevant memories)
741746 system_prompt = self ._build_enhance_system_prompt (user_id , memories_list )
742747 # Get chat history
@@ -825,18 +830,6 @@ def chat_with_references(
825830 chunk_data = f"data: { json .dumps ({'type' : 'text' , 'data' : processed_chunk }, ensure_ascii = False )} \n \n "
826831 yield chunk_data
827832
828- # Prepare reference data
829- reference = []
830- for memories in memories_list :
831- memories_json = memories .model_dump ()
832- memories_json ["metadata" ]["ref_id" ] = f"{ memories .id .split ('-' )[0 ]} "
833- memories_json ["metadata" ]["embedding" ] = []
834- memories_json ["metadata" ]["sources" ] = []
835- memories_json ["metadata" ]["memory" ] = memories .memory
836- memories_json ["metadata" ]["id" ] = memories .id
837- reference .append ({"metadata" : memories_json ["metadata" ]})
838-
839- yield f"data: { json .dumps ({'type' : 'reference' , 'data' : reference })} \n \n "
840833 # set kvcache improve speed
841834 speed_improvement = round (float ((len (system_prompt ) / 2 ) * 0.0048 + 44.5 ), 1 )
842835 total_time = round (float (time_end - time_start ), 1 )
0 commit comments