会话话题摘要
summarize_chat_session_topic �?system �?llm_client(会话级 topic)�?/p>
展开:会话摘�?· 修改备忘
system(与源码一致)�?
你是对话主题提炼助手。输入是用户�?AI「飞鸽」的一次会话原文(用户与助手交替)�?任务:用**不超�?50 个汉�?*输出**一�?*概括,只�?*用户本人**可用于婚�?社交匹配的个人信息与特质(择偶、性格、职业、城市、兴趣、价值观等用户自述)�?若整段仅有飞鸽产�?功能交互(传话、匹配、设置、商家咨询等)而无用户个人信息,只输出:(无个人信息)
禁止编造;禁止 Markdown、编号、引号包裹�?
user:「请提炼用户个人信息(≤50 汉字,单行;若无则输出:(无个人信息)):�? history_text
chat_summaries→L1→L2、重要记�?/h3>
后台 run_chat_memory_layer_async 现行链路�?strong>chat_summaries�?0 条有效话题,占位「(略)/(无个人信息)」不计数�?/strong> �?extract_recurring_topics_from_chat_summaries_for_l1 �?L1�?strong>L1�?0 条) �?extract_recurring_topics_from_l1_summaries_for_l2 �?L2;L1 批次后还�?evaluate_user_from_l1�?code>extract_frequent_topics_from_l1 �?重要记忆�?strong>L0(messages�?/strong> 不直接写 L1,只供主对话「最近原文」与切分会话原料。下�?summarize_l0_to_l1 / summarize_l1_to_l2 �?strong>遗留未调�?/strong>�?/p>
展开:记忆层多条 system · 统一修改备忘
以下�?app/llm_client.py 各函�?**system** 正文(user 侧多�?JSON 任务或列表;仍以源码为准)�?
【现�?· chat_helpers 会调用�?
── extract_recurring_topics_from_chat_summaries_for_l1 · system ──
你是话题聚类助手:在多行相近短语中找出重复出现的语义簇并命名�?(输入:20 条有�?chat_summaries 短话题,占位不计入批次;输出:JSON 数组,≥2 条相近才成簇�?
── extract_recurring_topics_from_l1_summaries_for_l2 · system ──
你是跨多条中层摘要的聚类助手�?(输入:20 �?L1 短话题;输出:JSON 数组�?
── extract_frequent_topics_from_l1 · system ──
你是对话分析助手,从摘要中提取用户反复提及的话题�?(L1 �? 条时�?1�? �?�?important_memories�?
【遗�?· llm_client 仍有定义,当�?app/ 未调用�?
── summarize_l0_to_l1 · system ──
你是一个对话摘要助手。根据用户与 AI 飞鸽的对话原文,提取对后续对话有帮助的要点,生成一段简洁的摘要。若每行前带有时间戳 [YYYY-MM-DD HH:MM],可在摘要中体现对话先后与大致间隔,便于后续评价守约、食言、真诚度变化�?(旧方案�?0 �?L0 原文 �?1 �?L1 长摘要;已由 chat_summaries 层替代)
── summarize_l1_to_l2 · system ──
你是一个对话摘要与记忆管理助手,需要判断多条摘要是否围绕同一件事情�?(旧方案�?0 �?L1 合并�?1 �?L2 + same_topic;已�?extract_recurring_topics_from_l1_summaries_for_l2 替代�?/pre>
evaluate_user_from_l1
�?L1 摘要多维品行/匹配评价;system 为短心理学分析说明,长规则在 user 消息(见 L6728+)�?/p>
展开:system(evaluate_user_from_l1�?/summary>
你是具备心理学训练的用户分析师与婚恋顾问。你必须在「上一次分数」基础上做连续、可解释的小步调整,各维度独立打分、禁止敷衍同分;信息不足则保持该维度上次分数基本不变。输出评�?JSON 时键名须与用户说明完全一致:dimensions、summary、suitable_buddy_summary�?/pre>
user 侧长 prompt 含「上一次分数」与维度说明,修改时请同�?llm_client.py�?/p>
build_context_for_model · 拼装进主对话的用户记忆上下文
app/memory.py · build_context_for_model
在组装主对话「用户记忆上下文」时使用:产出摘要段(记忆摘要:... 等);原文裁切段另见同页「最近原始对话摘录」条目�?/p>
展开:与主对话挂载关�?· 修改备忘
摘要段由 app/memory.py · build_memory_summaries_text / build_context_for_model 生成,按顺序拼接(仅在有内容时插入对应标题)�?
【用户重要长期记忆�?1. �?【高层摘要(L2)�?1. �?【中层摘要(L1,最近几条)�?1. �?【单次对话话题(最近若干次)�?1. �?
(条数上限:重要记忆 10、L2 最�?2、L1 最�?5、单次会话话�?RECENT_CHAT_SUMMARIES_DISPLAY。启�?FEIGE_LLM_CONTEXT_CACHE_ENABLED 时摘要可能走缓存读。)
最近原始对话摘�?· build_context_for_model(recent_raw_text�?/h3>
app/memory.py · build_context_for_model �?_assemble_chat_system_final 末尾拼接
主对�?system 尾部挂上「最�?N 条」对话原文裁切块;超长时组装循环会下�?recent_messages_limit(仅削减此段)�?/p>
展开:与主对话挂载关�?· 修改备忘
最近原文块格式�?code>build_context_for_model):
【最�?{N} 条原始对话�?(生成回复时请与此处用户/助手原文连贯承接。)
[{可选时间戳}] 用户: �?[{可选时间戳}] 助手: �?[{可选时间戳}] 助手(你主动向用户发起的话题�? �? �?mes_type 为运营话题时
条数 N = recent_messages_limit(默�?RECENT_MESSAGES_LIMIT,超�?system 时在 _assemble_chat_system_final 循环中下调)。时间戳�?format_message_ts_for_history �?APP_TIMEZONE 格式化�?/pre>