教规则(Teach)
教规则是最直接的教学方式——用自然语言告诉智能体"遇到这种情况,应该怎么做"。
什么是规则
规则是你告诉智能体的行为准则。每条规则回答一个核心问题:在什么情况下,做什么,为什么。
当你对智能体说:
"写邮件的时候,如果是发给客户的,语气要正式;如果是发给团队内部的,可以随意一些。"
这就是在教规则。智能体会把这条规则记录到它的行为手册中,之后凡是涉及写邮件的任务,都会自动应用这条规则。
如何教一条好规则
好的规则具备三个特征:具体、可执行、有边界。
好规则 -- 具体、可执行:
"审查合同时,如果违约金比例超过合同总金额的 20%,标记为'高风险',并在审查报告中给出修改建议。"
模糊规则 -- 不具体、难执行:
"审查合同的时候注意违约金。"
好规则 -- 有明确边界:
"回复客户邮件时,使用正式语气,避免使用网络用语和表情符号。但如果客户先用了轻松的语气,可以适当放松。"
模糊规则 -- 没有边界:
"邮件写得正式一点。"
好规则 -- 说明了"为什么":
"财务报告中的数字必须保留两位小数,因为这是公司财务制度的要求,审计时会检查。"
模糊规则 -- 只有"做什么"没有"为什么":
"数字保留两位小数。"
好规则的公式
当 [触发条件] 时,执行 [具体动作],因为 [原因]。
如果 [例外情况],则 [替代方案]。
举例:
"当收到的合同金额超过 50 万元时,必须触发人工确认(不能自动通过),因为公司规定大额合同需要法务总监审批。如果是续签合同且条款与上一份完全相同,可以降级为普通确认。"
规则的层级
不是所有规则都一样重要。DesireCore 支持三个层级的规则:
| 层级 | 含义 | 智能体行为 | 适用场景 |
|---|---|---|---|
| 强制 | 必须遵守,不可违反 | 无论如何都会执行,违反会触发告警 | 安全红线、合规要求 |
| 建议 | 默认遵守,特殊情况可灵活处理 | 通常会执行,但遇到冲突时会请示你 | 业务最佳实践 |
| 偏好 | 你的个人偏好,非硬性要求 | 尽量遵守,但不会因此影响任务完成 | 格式偏好、风格偏好 |
如何指定层级
你可以在教规则时自然地表达层级:
强制规则:"永远不要在未经我确认的情况下发送邮件。"
"合同中的保密条款是必须的,不可删除。"
建议规则:"审查报告最好用表格的形式呈现。"
"一般来说,先处理紧急的任务。"
偏好规则:"我比较喜欢用 Markdown 格式。"
"如果可以的话,报告用中文写。"
如果你没有明确指定层级,智能体会根据语气和上下文自动判断。用"必须""永远""禁止"等词汇会被识别为强制规则;用"最好""一般""如果可以"会被识别为建议或偏好。
教规则的常见场景
场景一:教业务规则
你:"帮我审合同的时候,注意以下规则:
强制:付款条件必须是'验收合格后 30 天内付款',不接受预付款
强制:合同期限不超过 3 年
建议:违约条款应该对等,不能只约束我方
偏好:合同摘要用表格形式"
场景二:教沟通风格
你:"以后写报告的时候:
- 开头直接给结论,不要铺垫
- 用数据说话,少用形容词
- 如果有不确定的地方,明确标注出来
- 不要用'各位领导好'这种开头"
场景三:教异常处理
你:"如果客户要求提前交付:
1. 先评估是否有足够的资源
2. 如果差距在 1 周以内,可以直接答应
3. 如果差距超过 1 周,需要告诉我并等我确认
4. 无论如何不要直接拒绝客户"
查看已教的规则
你可以随时查看智能体学到的所有规则:
- 在对话中说:"列出你学到的所有规则" 或 "显示审合同相关的规则"
- 在智能体设置中,查看 行为规范 部分
智能体会以清晰的列表展示所有规则,标注来源(哪次对话中教的)和层级。
教过的规则不是一成不变的。你可以随时说"把那条关于违约金的规则改为 25%",或者"删除关于邮件格式的偏好"。详见 撤销与遗忘。
教规则的常见误区
| 误区 | 问题 | 建议 |
|---|---|---|
| 一次教太多 | 智能体难以区分规则的优先级 | 每次聚焦一个主题,分批教 |
| 规则互相矛盾 | 智能体不知道该听哪条 | 教之前回顾已有规则,确保一致 |
| 只有"做什么"没有"为什么" | 智能体在边缘情况下无法灵活应对 | 每条规则都说明原因 |
| 规则太笼统 | 智能体解读可能与你的预期不同 | 尽量具体,配合示例效果更好 |
规则加上示例效果更好。前往 给示例(Demonstrate) 学习如何通过具体案例强化智能体的理解。