feat(social-toolkit):优化戳一戳动作逻辑和使用规则
更新 PokeAction 配置以实施更严格的使用指南: - 区分私聊和群聊的行为(在群聊中需克制)。 - 添加频率限制和最大戳一戳次数。 - 扩展 LLM 判断提示,包含上下文、情绪和用户明确请求的详细规则
This commit is contained in:
@@ -140,7 +140,7 @@ class PokeAction(BaseAction):
|
||||
|
||||
# === 基本信息(必须填写)===
|
||||
action_name = "poke_user"
|
||||
action_description = "可以让你戳其他用户,为互动增添一份小小的乐趣。"
|
||||
action_description = "戳一戳其他用户。这是一个需要谨慎使用的互动方式,默认只戳一次。群聊中应当克制使用,私聊中可以适当主动。"
|
||||
activation_type = ActionActivationType.ALWAYS
|
||||
parallel_action = True
|
||||
|
||||
@@ -148,17 +148,48 @@ class PokeAction(BaseAction):
|
||||
action_parameters: ClassVar[dict] = {
|
||||
"user_name": "需要戳一戳的用户的名字 (可选)",
|
||||
"user_id": "需要戳一戳的用户的ID (可选,优先级更高)",
|
||||
"times": "需要戳一戳的次数 (默认为 1)",
|
||||
"times": "需要戳一戳的次数 (默认为 1,最多3次)",
|
||||
}
|
||||
action_require: ClassVar[list] = ["当需要戳某个用户时使用", "当你想提醒特定用户时使用"]
|
||||
action_require: ClassVar[list] = [
|
||||
"用户明确要求戳某人时必须使用",
|
||||
"私聊场景:可以在适当的互动时机主动使用(如回应戳一戳、俏皮互动等)",
|
||||
"群聊场景:应当非常克制,仅在用户明确要求或有充分理由时才使用",
|
||||
]
|
||||
llm_judge_prompt = """
|
||||
判定是否需要使用戳一戳动作的条件:
|
||||
1. **互动时机**: 这是一个有趣的互动方式,可以在想提醒某人,或者单纯想开个玩笑时使用。
|
||||
2. **用户请求**: 当用户明确要求使用戳一戳时。
|
||||
3. **上下文需求**: 当上下文明确需要你戳一个或多个人时。
|
||||
4. **频率与情绪**: 如果最近已经戳过,或者感觉对方情绪不高,请避免使用,不要打扰到别人哦。
|
||||
|
||||
请根据上述规则,回答“是”或“否”。
|
||||
|
||||
**必须遵守的严格规则:**
|
||||
1. **用户明确要求**: 当用户明确说"戳XX"、"戳一下XX"等直接指令时,必须使用。
|
||||
|
||||
2. **群聊场景(非常克制)**:
|
||||
- 群聊中应当非常谨慎,避免在公共场合频繁打扰他人
|
||||
- 仅在以下情况考虑使用:用户明确要求、需要紧急提醒某人、或有特别充分的互动理由
|
||||
- 如果最近已经在群里戳过任何人,必须回答"否"
|
||||
- 群聊中不要随意主动使用,除非有明确必要性
|
||||
|
||||
3. **私聊场景(可以主动)**:
|
||||
- 私聊中可以更加主动和俏皮
|
||||
- 在以下情况可以使用:回应对方的戳一戳、轻松愉快的互动氛围、想要增添趣味时
|
||||
- 但如果最近已经戳过对方,应避免频繁使用
|
||||
|
||||
4. **频率限制(重要)**:
|
||||
- 如果最近已经戳过同一个人,必须回答"否"
|
||||
- 默认只戳一次,不要多次戳别人(除非用户明确要求多次)
|
||||
- 注意对方的情绪反应,如果对方看起来不高兴或不想被打扰,必须回答"否"
|
||||
|
||||
5. **禁止情况**:
|
||||
- 对方情绪低落、生气、不耐烦时,严禁使用
|
||||
- 严肃的对话场景中,严禁使用
|
||||
- 刚刚戳过的情况下,严禁再次使用
|
||||
|
||||
**判断逻辑**:
|
||||
- 首先判断是群聊还是私聊
|
||||
- 群聊:除非用户明确要求或有特殊必要性,否则回答"否"
|
||||
- 私聊:可以在合适的互动氛围中主动使用,但要注意频率
|
||||
- 检查是否最近已经戳过,如果是则回答"否"
|
||||
- 评估对方情绪和对话氛围是否适合
|
||||
|
||||
请严格根据上述规则,仅回答"是"或"否"。
|
||||
"""
|
||||
associated_types: ClassVar[list[str]] = ["text"]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user