# 用户偏好策略
#### 原理
从会话中识别并提取用户明确表达或能够可靠识别的偏好、习惯和选择倾向，并按照用户维度持续维护用户偏好信息，为后续交互提供个性化上下文。
#### 适用场景
- 个性化推荐：基于用户偏好提供定制化的内容和服务推荐。
- 定制化服务：根据用户习惯自动调整服务方式，如默认语言、输出格式等。
- 需要跨会话记住用户偏好：用户不必每次对话都重复说明自己的喜好。
- 智能助手/个人助理：长期记住用户的日常习惯和个性化需求。
 
#### 特点
- 偏好是动态更新的------如果用户后续表达了新的偏好或与旧偏好冲突的选择，会自动更新偏好档案，无需手动修改。
- 按用户（actor_id）隔离，不同用户的偏好互不影响，同一用户的不同会话共享偏好档案。
- 偏好记录带有时间信息，便于追溯偏好变更历史。
- 适合需要个性化服务的场景，是"记住用户是谁"的核心策略。
 
#### 提取内容举例
**举例一：语言与风格偏好**
用户："请用中文回复我，简洁一点"
提取为偏好："用户偏好中文回复，风格简洁"
**举例二：饮食偏好**
用户："帮我订咖啡的时候记得加冰，不要糖"
提取为偏好："咖啡偏好：加冰、无糖"
**举例三：工作习惯**
用户："我习惯早上 9 点开始工作，会议尽量安排在下午"
提取为偏好："工作时间：9 点开始；会议偏好：安排在下午"
**举例四：技术偏好**
用户："代码注释用英文，变量名用驼峰命名法"
提取为偏好："代码风格：注释英文、变量名驼峰命名"
**举例五：偏好更新**
- 用户第一次说："我喜欢深色主题"
- 用户后来改为："现在改用浅色主题了"
偏好档案自动更新为："界面偏好：浅色主题"（覆盖原深色主题偏好）
#### 使用建议
- 同一用户的不同会话必须使用相同的actor_id，否则偏好无法跨会话共享。
- 建议使用业务系统中的用户ID作为actor_id，确保用户身份的唯一性和稳定性。
- 偏好策略可与总结策略或语义记忆策略组合使用，既记住用户偏好，也保留对话摘要或事实知识。
 
