Skip to content

调度规则配置

调度规则决定了 Kirara AI 如何处理接收到的消息,简单来说,就是告诉 Kirara AI 收到什么消息后,应该做什么。

规则组成

每条调度规则由以下几个关键部分组成:

  • 触发条件:什么情况下这条规则会生效?例如,消息以特定文字开头、包含某些关键词等等。
  • 目标工作流:规则生效后,Kirara AI 会执行哪个工作流?工作流可以理解为一系列预设好的操作流程。
  • 优先级:当多条规则同时满足条件时,哪条规则先执行?
  • 启用状态:这条规则是否生效?可以随时启用或禁用。

添加规则

  1. 在 WebUI 的调度规则页面中,点击 "添加规则"。
  2. 设置规则的基本信息:
    • 规则名称:给规则起一个易于识别的名字。
    • 优先级:数字越小,优先级越高。
    • 启用状态:默认启用。

配置触发条件

触发条件是调度规则的核心,它决定了什么情况下规则会被触发。你可以设置多个触发条件,这些条件之间可以组合使用。

触发条件类型

目前支持以下几种触发条件类型:

  • 以……开头:消息内容以特定文字开头。
  • 正则表达式:使用正则表达式匹配消息内容。
  • 包含……词:消息内容包含某些关键词。
  • 以……概率:以一定的概率随机触发。
  • 发送者为……:指定消息的发送者 ID 和群组 ID(可选)。
  • 发送者不为……:排除特定消息发送者 ID 和群组 ID(可选)。
  • 任意输入:任何消息都会触发。

组合触发条件

你可以组合多个触发条件,以实现更复杂的匹配逻辑。

  • 条件组:每个条件组包含多个条件,条件组内的条件可以是"或"关系,也可以是"且"关系。
    • :只要满足其中一个条件,条件组就匹配。
    • :必须满足所有条件,条件组才匹配。
  • 多个条件组:多个条件组之间是"且"关系,即必须所有条件组都匹配,整个规则才会被触发。

举个例子

假设你想创建一个规则,当消息以 "/help" 开头,并且发送者是管理员时,触发一个帮助工作流。

  1. 创建一个条件组,包含两个条件:
    • 条件 1:以 "/help" 开头
    • 条件 2:发送者为管理员
  2. 将条件组内的关系设置为"且"。
  3. 设置规则的目标工作流为 "帮助工作流"。

这样,只有当消息以 "/help" 开头,并且发送者是管理员时,才会触发 "帮助工作流"。

规则优先级

规则优先级决定了多个规则同时匹配时的处理顺序:

  1. 数字越大优先级越高,0 的优先级最低。
  2. 同优先级规则的执行顺序是未定义的。

规则示例

待补充,可以先参考项目自带的规则。

最佳实践

  1. 优先级设置

    • 特权命令设置最高优先级。
    • 特定功能设置中等优先级。
    • 通用对话设置最低优先级。
  2. 条件组合

    • 合理使用多个条件组合。
    • 避免过于复杂的条件。
    • 注意条件的逻辑关系。
  3. 规则管理

    • 定期清理无用规则。
    • 保持规则列表整洁。
    • 为规则添加清晰的描述。