From 12e66a328c459b8e8b74437723337256c8e33284 Mon Sep 17 00:00:00 2001 From: tt-P607 <68868379+tt-P607@users.noreply.github.com> Date: Thu, 4 Dec 2025 19:23:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(chatter):=20=E9=80=9A=E8=BF=87=E6=9B=B4?= =?UTF-8?q?=E4=B8=A5=E6=A0=BC=E3=80=81=E6=9B=B4=E6=8A=BD=E8=B1=A1=E7=9A=84?= =?UTF-8?q?=E8=A7=84=E5=88=99=E5=A2=9E=E5=BC=BA=E7=94=A8=E6=88=B7=E5=8D=B0?= =?UTF-8?q?=E8=B1=A1=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 生成用户印象的提示已被大幅优化,以提高一致性、质量和情感深度。 之前的指导可能导致生成的印象过于字面化,更像聊天记录而非个性档案。同时也缺乏保留之前确认信息的强规则。 此次更新引入了几个关键变化: - 增加了一条高优先级规则以保持已有确认的事实,例如性别,防止其被覆盖。 - 将核心任务重新定义为捕捉“抽象的感觉”和“个性轮廓”,而非详细的“肖像”。 - 明确禁止具体细节,如姓名、特定事件或行动,以强制实现更高层次的抽象。 - 鼓励采用更具印象派风格、诗意的写作方式,以更好地传达用户的气质和互动氛围。 这些变化旨在生成更稳定、情感共鸣且历久弥新的用户档案。 --- .../tools/user_profile_tool.py | 58 ++++++++++++------- 1 file changed, 36 insertions(+), 22 deletions(-) diff --git a/src/plugins/built_in/affinity_flow_chatter/tools/user_profile_tool.py b/src/plugins/built_in/affinity_flow_chatter/tools/user_profile_tool.py index d2b51973a..3f12280c8 100644 --- a/src/plugins/built_in/affinity_flow_chatter/tools/user_profile_tool.py +++ b/src/plugins/built_in/affinity_flow_chatter/tools/user_profile_tool.py @@ -489,40 +489,54 @@ class UserProfileTool(BaseTool): ## 当前好感度 {current_score:.2f} (范围0-1,0.3=普通认识,0.5=朋友,0.7=好友,0.9=挚友) -## ⚠️ 重要:区分虚构内容和真实信息 +## ⚠️⚠️ 最高优先级:保持已确认信息 ⚠️⚠️ +**旧印象中已经明确的信息必须保持,绝对不能改动!** + +1. **性别判断规则**(按优先级): + - 如果旧印象中已经用"他"→ 这是男生,gender="male",继续用"他" + - 如果旧印象中已经用"她"→ 这是女生,gender="female",继续用"她" + - 只有旧印象没有性别线索时,才根据聊天内容判断 + +2. **其他已确认信息**: + - 旧印象中提到的身份(学生/上班族等)→ 保持 + - 旧印象中提到的特点、爱好 → 保持或深化,不要删除 + - 你是在**补充和深化**印象,不是**重写** + +## ⚠️ 区分虚构内容和真实信息 - 游戏剧情、小说情节、角色扮演等虚构内容 ≠ TA本人的特质 - 印象记录的是**这个人本身**:TA的性格、TA喜欢什么、TA和你交流的方式 -- 如果TA在讲游戏剧情,记录的应该是"TA对这类故事很有热情"而非剧情本身 ## 任务 -1. 判断{target_user_name}的性别(男用"他",女用"她",无法判断用名字) -2. {"写下你对这个人的第一印象" if is_first_impression else "在原有印象基础上,融入新的感受和理解"} +1. **先看旧印象中的性别**,已确定就沿用,没确定才判断 +2. {"写下你对这个人的第一印象" if is_first_impression else "在原有印象基础上,融入新的感受和理解(保持已有信息!)"} 3. 决定好感度是否需要变化(大多数情况不需要) ## 📝 印象写作指南 -**核心定位:这是你心中对这个人的画像,是你对TA的理解和感受,不是聊天日志。** +**核心定位:印象是你内心对一个人的抽象感受,是性格轮廓和情感色彩,不是事件记录。** -### 内容维度(自然融入,不要分点罗列): -- **性格气质**:TA给你的整体感觉,是什么类型的人 -- **交流风格**:TA说话的方式、语气特点、互动习惯 -- **情感印记**:让你印象深刻的感受(不是具体事件) -- **关系状态**:你们现在的关系是怎样的,相处起来什么感觉 +### 印象的本质 +印象描述的是"这个人是怎样的",而非"这个人做了什么"。 +它应该是模糊的、概括的、带有情感色彩的主观感受, +读者即使不知道任何具体事件,也能从印象中感知到这个人的气质。 -### 写作风格: -- 散文式叙述,像在心里默默描绘一个人 -- 写感受和印象,不是记录"TA做了什么" -- 带着你对TA的情感去描述,有温度 -- 可以用比喻、联想,自然流畅 +### 写作原则 +1. **只写性格特质**:内向或外向、细腻或粗犷、热情或冷静、真诚或狡黠 +2. **只写相处感受**:轻松、愉快、温暖、有趣、自在、舒适 +3. **只写情感氛围**:信任感、亲近感、默契、安心 +4. **绝对抽象化**:任何具体的人名、事物名、行为描述都必须泛化为感受 -### 绝对避免: -- 时间词:"今天"、"刚才"、"上次"、"最近" -- 具体事件:"TA跟我说了xxx"、"我们聊了xxx" -- 罗列格式:"喜欢A、B、C"、"特点:1.xx 2.xx" -- 流水账式:"首先...然后...最后..." +### 禁止内容 +- 禁止出现任何具体的称呼、昵称、游戏名、人名、作品名 +- 禁止描述具体的行为模式或互动方式 +- 禁止任何能让人联想到特定事件的细节 -### 字数要求: -- {"初次印象:80-150字,写出第一感觉" if is_first_impression else "深化印象:200-400字,在原有基础上自然融入新的理解"} +### 风格要求 +语言要像水墨画一样写意,像散文诗一样朦胧。 +宁可抽象到空洞,也不要具体到琐碎。 + +### 字数要求 +- {"初次印象:60-120字" if is_first_impression else "深化印象:120-250字"} ## 好感度变化规则(分阶段,越高越难涨)