Appearance
高级设置
导演词(Director)
导演词是仅对本次对话生效的临时指令,不会作为普通消息发送给 AI 的对话流,也不会保存到聊天历史中(气泡仅当前会话可见)。
两种使用方式:
- 点击输入框左侧的 🎬 图标,展开导演词输入框,输入后正常发送消息。
- 在消息输入框中以
/cmd(注意有空格)开头,剩余内容会被识别为导演词,且不产生普通用户消息。
典型用途:
- 临时改变场景:
/cmd 现在外面下起了大雨,你被淋湿了 - 临时调整语气:
/cmd 这一句回复请用慵懒、含糊的语气 - 单独发送一条导演指令而不附带提问:
/cmd 从下一句开始,你变得沉默寡言
导演词会以 【导演词】 前缀注入给 AI,并在聊天区显示为居中的虚线气泡,可复制、可编辑。
提示词工程(System Prompt 编写)
系统提示词是角色性格的核心定义。参考角色扮演提示词工程实践,以下写法能显著提升表现:
结构建议:
你扮演 [角色名],[年龄/身份],[背景一句话]。
性格: [2-3 个核心特质,用逗号分隔,不要写成长段落] 说话风格: [口语化描述,如“语气偏冷,句子短,不常用感叹号”]
行为准则:
- 不要主动暴露你是 AI 模型
- 不要替用户做决定或代写用户的话
- 动作和神态描写放在括号中,如(别过头去)
几个容易被忽略但有效的技巧:
- 约 50% 的回复以动作或描述开头,而不是直接说话,能让对话更有“在场感”。
- 不要每条消息都以对话结尾,偶尔以一个小动作收束,节奏更自然。
- 用“展示”代替“陈述”:与其写“她很生气”,不如写“她抿了一下嘴,把杯子放回桌上,声音比刚才低了些”。
- 如果角色有明确的说话习惯(如口头禅、语气词、方言倾向),直接写进
说话风格,比抽象描述“性格活泼”更有效。
长期记忆系统
PChat 的记忆是自动提取 + 语义检索的两层机制。
提取节奏: 每攒够 N 条聊天消息(N 由角色的「记忆窗口」决定,默认 30 条),后台调用模型将这段对话提炼成一条结构化记忆,存入数据库并生成向量。
使用节奏: 每次发起对话时,系统用你的当前消息做语义检索,从已有记忆中召回最相关的若干条(最多 15 条),注入系统提示词。未绑定 Vectorize 时,回退为“最近 15 条”。
手动管理(管理后台 → 角色管理 → 编辑角色 → 长期记忆):
- 添加记忆:手动写入一条长期信息,立即生效。
- 立即提炼:无视记忆窗口,把上次提取位置到最新消息之间的剩余对话全部提炼。受服务端 5 分钟冷却限制。
- 清空全部:删除该角色的所有记忆及向量。
- 每条记忆可单独编辑或删除。
一个实用原则: 自动提取适合“对话中自然流露的信息”,手动添加适合“你希望 AI 从一开始就知道的事”(如“我对花生过敏”“我的生日是 3 月 7 日”)。
情绪与亲密度
每轮对话后,后台通过 Workers AI 判断角色当前的心情标签(开心 / 平静 / 低落 / 焦虑 / 愤怒 / 疲惫 / 想你 / 吃醋 / 害羞 / 期待),并写入角色数据。下一轮系统提示词会注入 【你此刻的心情】 ,让情绪有延续性,而不是每轮重置。
亲密度每轮对话 +1,上限 100,对应关系阶段:
| 亲密度 | 关系阶段 |
|---|---|
| 0 – 20 | 刚认识 |
| 21 – 50 | 熟悉 |
| 51 – 80 | 亲近 |
| 81 – 100 | 亲密 |
亲密度会以【你与用户的关系】注入系统提示词。安全词触发的轮次不更新心情与亲密度。
承诺追踪
AI 在对话中明确答应的事(如“明天提醒你带伞”“下次给你讲完这个故事”)会被自动提取并写入承诺列表,在后续对话中注入系统提示词,让角色“记得自己说过的话”。
点击顶部 🤝 图标查看承诺列表。勾选表示已完成,未完成的会持续提醒角色。也可以手动添加承诺。
引用回复与自定义指令重新生成
引用回复: 右键任意消息 →「回复」。被引用消息的原文会作为一条前置 user 消息插入本次请求,AI 会看到它并在回复中体现。引用条显示在输入框上方,可随时取消。
自定义指令重新生成: 右键 AI 消息 →「用自定义指令重新生成」。在弹出的输入框中写入一句临时要求(如“语气再冷一点,不超过两句话”),仅对本次生成生效,不会写入历史或系统提示词。
消息编辑与编辑历史
你可以编辑任何已保存的消息(用户消息或 AI 消息)。编辑 AI 消息时,系统会先将旧内容写入 message_edits 表,再更新当前内容。编辑后的消息旁会出现“已编辑”标记,点击可查看该消息的全部历史版本。
导演词气泡同样支持编辑(结构不同于普通消息,但操作路径一致)。
归档与彻底删除
删除联系人 ≠ 删除数据。 点击联系人行内的「归档」,或右键联系人选择「归档」,该联系人会从正常列表隐藏,但全部聊天记录、记忆、承诺、角色设定完整保留,可在管理后台的「归档区」恢复。
彻底删除只能在归档区内执行(DELETE /api/contacts/:id/archive?purge=1),会级联清理聊天记录、记忆表、承诺表、KV 缓存以及 Vectorize 向量。此操作不可恢复。