认识一个人
它对每个人有一份印象:多熟、多亲近、多信任,最近对他是什么感觉。这些是一句一句聊出来的,也决定了它对这个人说话的样子、会不会主动去找他。
一个人在它心里是几个数
- 熟悉度:认识多久、聊过多少。
- 长期亲密度:关系有多近。
- 信任:这个人说的话、答应的事靠不靠得住。
- 近期情绪:最近对他是什么感觉。过一阵会淡(大约十二小时淡一半)。
- 骚扰压力:被他冒犯、纠缠得有多厉害。淡得很快(大约二十分钟淡一半)。
还有一个关系类型:无、朋友、恋爱伴侣。
几档
网页后台「人物画像」里每个人旁边写着一档,看的是长期亲密度:
- 很亲近:0.8 以上;
- 亲近:0.65 以上;
- 熟悉:0.4 以上(是朋友的,也至少算熟悉);
- 疏远:更低;
- 尚未了解:还没聊过、还没有任何依据。
恋爱伴侣至少算亲近。关系类型是你在后台设的,亲密度还是要慢慢处出来。
怎么变
每句话都会被归成一种「证据」:普通的往来、有内容的聊天、支持和帮忙、敌意、越界、靠得住、靠不住。印象跟着证据一点点变;骂人、越界会让骚扰压力一下子上去,冲着它来的话它就会拒绝,不是冲着它的就不理。
它还会从一个人说的话里慢慢学到这个人的特点(比如喜欢说得详细、喜欢温和一点),带着依据,写在这个人的档案里。
印象影响什么
- 说话的样子:熟到一定程度,才会按这个人的说话方式调整自己;再熟一点,语气放松;很熟了,可以开玩笑,但边界照样在。
- 回不回、多快回:关系近的,冲着它来的话更倾向马上回,晚看到的也少一点(2.4)。
- 主动找人:陌生人它从来不主动找;普通朋友安静一天左右,熟人半天左右,恋人一小时内(2.19)。
你可以改什么
- 「人物画像」里点一个人,「编辑关系」改那几个数和关系类型;改错了可以「撤销上次修改」;「删除关系」从头来过。
- 「初始化所有者关系」:按「配置管理 → 所有者关系初始化」里写的(关系阶段、在一起多久、距离……),把你和它的关系补上。只补缺的,不覆盖已有的。
- 有好几个人格时,可以设一个人格借用另一个对某人的客观资料(叫什么、多大);关系和感情永远各算各的。
对应的代码
- 几档和几个门槛:
src/aeria/cognition/relationship_view.py(relationship_tier:0.8 / 0.65 / 0.4;熟悉度 0.15 / 0.20 / 0.45 / 0.75 决定说话的样子)。 - 证据:
src/aeria/cognition/interaction_evidence.py的InteractionEvidenceType;关系类型:src/aeria/cognition/social_stance.py的RelationshipRole。 - 淡下去的速度:
src/aeria/config.py的SocialCognitionConfig(recent_sentiment_half_life_hours= 12、harassment_half_life_minutes= 20)。 - 后台的编辑和撤销:
webui_frontend/src/routes/Records.tsx、src/aeria/webui.py;初始化:OwnerBootstrapConfig。 - 测试:
tests/test_relationship_view.py、tests/test_cross_persona_isolation.py。
没做到的
- 「敌意」「越界」有一部分还是按词认的,阴阳怪气、换着法子的冒犯认不全。
- 印象只从文字里来:表情包、图片、语音里的态度它看不到。