安全与控制Safety & Control
代理可以执行的操作的严格限制。
本书中有 72 种模式。 · 已更新
何时使用每种模式
01. Step Budget 限制代理在单个请求中允许的工具调用或循环迭代次数。 最佳适用: 代理有任何类型的循环(ReAct、计划-执行、辩论)。 权衡: 可能隐藏更深层次的错误(代理实际上应该更早停止)。 注意事项: 绝对不可以。步预算是任何代理循环的通用强化。
02. Approval Queue 队列代理提出的操作以便进行异步人工审核,同时代理继续其他工作。 最佳适用: 某些代理操作需要人工审核,但在审核完成之前阻止代理是不可以接受的。 权衡: 大规模的收件箱疲劳。 注意事项: 每个操作都需要同步批准,并且没有并行工作可做。
03. Human-in-the-Loop 在代理执行操作之前,在定义的节点上需要明确的人类批准。 最佳适用: 在定义的边界内,行动后果过于昂贵,不能仅依赖模型。 权衡: 用户体验摩擦。 注意事项: 必须在无人值守或亚秒级的自主环境中做出决策。
04. Input/Output Guardrails 在输入到达模型之前和输出到达用户之前验证输入。 最佳适用: 用户输入可能包含模型不应处理的恶意或不符合政策的内容。 权衡: 误报是用户可见的。 注意事项: 部署完全是内部的,并且已经由其他层验证。
05. Conversation Handoff to Human 将整个对话线程从代理转移到人类操作员,进行状态转移并返回原始信息。 最佳适用: 某些触发条件(低信心、政策违规、明确的用户请求)要求转移整个线程的所有权,而不仅仅是一个动作。 权衡: 操作员队列容量边界可扩展。 注意事项: 离散动作的批准已足够,而完全线程转移则显得过于复杂(使用批准队列)。
本书中的所有模式
Step Budget
×35限制代理在单个请求中允许的工具调用或循环迭代次数。
Approval Queue
×33队列代理提出的操作以便进行异步人工审核,同时代理继续其他工作。
Human-in-the-Loop
×28在代理执行操作之前,在定义的节点上需要明确的人类批准。
Input/Output Guardrails
×16在输入到达模型之前和输出到达用户之前验证输入。
Conversation Handoff to Human
×14将整个对话线程从代理转移到人类操作员,进行状态转移并返回原始信息。
Policy-as-Code Gate
×9在发出之前,评估每个提议的代理操作是否符合外部管理的机器可读政策,以便合规性作者身份不依赖于提示或代理代码。
Kill Switch
×8提供一个带外控制平面,以在不重新部署的情况下停止正在运行的代理实例。
Prompt Injection Defense
×7将用户提供或工具提供的内容标记为不可信,并拒绝遵循其中的指令。
Tenant-Scoped Tool Binding
×7在执行层将每个工具调用和检索绑定到活动租户,以便多租户代理永远无法被说服读取或写入其他租户的数据。
Delegated Agent Authorization
×6让代理使用范围有限、短期有效、可撤销的委托凭证代表委托人行动,而不是使用委托人自己的静态密钥,从而确保每个操作在委托人-代理-子代理链中可追溯,并且一旦发生泄露可以被控制。
PII Redaction
×5检测并移除模型输入和输出中的个人可识别信息。
Agent Credential Vault
×5在操作时通过受管理的密码、MFA 秘密和数字身份库中中介代理的凭证,以便秘密永远不会进入提示或上下文,代理以受管身份进行身份验证。
Constitutional Charter
×5定义代理每次读取但无法修改的规则,编码不可侵犯的边界。
Mandatory Red-Flag Escalation
×4保持一组确定性的高风险触发器,以便在任何匹配时,代理立即中止其工作流程并交给人类,而不考虑是否升级。
Refusal
×4明确拒绝超出代理范围、能力或政策边界的请求。
Composable Termination Conditions
×4将代理停止标准表示为小型单一目的条件,通过 AND/OR 组合成一个明确的终止合同,而不是临时的循环保护。
Dry-Run Harness
×4模拟计划的操作(及其预期的副作用),而不进行提交,在任何提交之前展示可审查的差异。
Multimodal Guardrails
×4跨模态(视觉、音频、文件)而非仅文本的输入和输出护栏 — 处理例如嵌入在图像OCR或音频转录中的恶意指令。
Risk-Tiered Action Autonomy
×4根据行动的财务重要性设置代理的允许行动类别,让其自由读取和草拟,同时要求不同的人类负责人释放重要的发布、付款或申报。
Compensating Action
×3为每个看似不可逆的代理行动配对一个可以撤销或抵消它的补偿性行动。
Rate Limiting
×3在时间窗口内限制每个用户(或会话)的请求、令牌或工具调用数量。
Interruptible Agent Execution
×3将暂停、恢复和取消视为每个长时间运行的代理的第一类控制界面,以便用户可以在任务中途暂停昂贵或偏离轨道的过程,同时保留状态以便恢复。
Sovereign Inference Stack
×3在操作员控制的管辖和操作边界内运行整个代理堆栈(模型权重、推理、工具层、向量存储、日志),确保没有请求、提示或输出跨越到第三方API。
Tool Output Poisoning Defense
×3将工具输出视为不可信内容,并应用指令剥离和每个工具的信任标签。
Verifiable Purchase Mandate
×3将代理发起的支付锚定在一个加密签名的授权中,该授权捕获用户的授权并随交易一起传递,以便商家或支付网络可以独立验证代理是基于真实用户意图进行操作的。
Reversibility-Aware Action Filter
×3在策略和环境之间插入一个常驻过滤器,以估计每个提议行动的可逆性,并重新采样策略,直到选择一个可逆的行动。
Session-Scoped Payment Authorization
×3通过让代理与预先批准的上限打开支付会话,将代理的自主支出绑定在一起,在该会话内流式传输许多小额支付,并在关闭时一次性结算,而不是为每笔交易寻求批准。
Trajectory Anomaly Monitor
×3在运行时对代理的动作轨迹进行训练好的非LLM验证器的带外运行,以毫秒延迟标记任务不对齐的计划和格式错误的步骤序列,在动作造成损害之前。
Cost Gating
×2阻止预期成本超过阈值的操作,未经用户(或操作员)明确确认。
Context Minimization
×2在任何 LLM 到达之前,将不受信任的输入减少到严格格式化的接口(类型字段、最大长度、允许的枚举)。
Cost-Aware Action Delegation
×2根据风险/成本对每个代理行动进行分类,并将每个层级路由到不同的审批政策,从而在每个行动上限制自主权,而不是通过一个全局标志。
Ephemeral Agent Identity
×2为每个代理运行生成一个短暂的身份,范围仅限于一个任务,并在适时提供,然后在完成后撤销,以确保没有持久凭证超出工作范围。
Secrets Handling
×2确保模型永远不会以明文形式接收秘密;工具在运行时从引用中解析凭据。
Simulate Before Actuate
×2在发出不可逆的操作之前,运行一个确定性的模拟,计算前置条件、不变式和预期的变化;要求一个验证者——自动化或人工——在发送真实命令之前对模拟结果进行批准。
Synchronous Execution-Plan Confirmation
×2代理在任何副作用步骤之前同步地发出其完整的执行计划以供用户确认,并提供异步操作记录以供事后审查。
Exception Handling and Recovery
×1捕获并对可预测的失败模式(工具错误、速率限制、验证失败)做出反应,并提供结构化的恢复路径。
Stop Hook
×1定义一个明确的程序性谓词,用于决定代理的循环何时终止。
Autonomy Slider
×1将代理的自主性作为一个连续可调参数,以便同一代码库可以跨越脚本助手到完全自主的工作者,而无需重新架构。
Control-Flow Integrity
×1将代理的计划步骤序列视为一个可信的控制流图,工具输出、检索内容和用户提供的数据在运行时无法重定向。
Degenerate-Output Detection
×1检测代理即将发出其近期输出的近似重复,并选择丢弃、替换或升级到更强大的模型,而不是继续循环。
Enforced Advisory Disclaimer
×1在每个高风险受监管的答案中附加一个不可抑制的建议框架,将其视为信息而非专业建议,附加在模型的裁量之外,以便在抵制和模型更新中依然有效。
Hint Ladder
×1保留直接答案,并沿着逐步递增的阶梯提供帮助,从最小的抽象提示开始,逐渐增加具体性,直到达到仅在学习者卡住时才提供的解决方案。
Policy-Gated Agent Action (KRITIS)
×1每个代理操作都通过一个政策门(NIS2,欧盟人工智能法案,BSI规则),并标记有运行 ID + 模型摘要 + 政策哈希,以便进行 WORM 审计重建。
Priority Matrix (Conflict Resolution)
×1预先定义代理如何通过人工编写的查找表解决特定类别的目标冲突 — 将代理从决策者转变为决策执行者(在竞争目标上失败的地方)。
Progressive Tool Access
×1根据需要授予工具权限,从最低限度开始,只有在代理证明其能力后才扩展,类似于人类如何获得系统访问权限。
Scope-of-Practice Boundary Gate
×1阻止执行受许可限制的专业活动的请求和响应,除非有持证人参与,从而在推理循环外强制执行边界。
Supervisor-Plus-Gate
×1监督控制器,在提交副作用之前验证和限制LLM输出,以进行确定性检查。
Typed Refusal Codes
×1为所有保护表面定义一个机器可读拒绝代码的单一真相来源,以便拒绝可以机械地进行分类,而不是通过字符串搜索临时的人类可读消息。
Velocity-and-Magnitude Governor
×1对代理行为的财务幅度施加每单位时间的硬性上限,并在任何偏离统计阈值时强制从人类在环路中降级到人类在环路内。
Corrigible Off-Switch Incentive
×1设计代理,使得被人类关闭或覆盖具有正的期望值,因为人类的干预本身就是当前目标被错误指定的证据。
Preference-Uncertain Agent
×1代理将自己的奖励/目标视为一个隐藏变量,从人类行为中推断,而不是一个固定目标。
Risk-Averse Reward Proxy
×1在操作超出奖励设计分布的情况下,将指定目标视为一个嘈杂的代理,并在合理的真实目标之间保守规划。
Self-Edit Critic Gate
×1通过单独的批评模型调用,将每个提议的写入或删除路由到代理的自身承载源和身份文件,以便在编辑生效之前可以否决该编辑。
Soft-Optimization Cap
×1限制代理优化其推断目标的强度——从可接受动作的顶部分位数中采样,而不是选择最大值,或者在目标足够好时停止改进。
Action Selector Pattern
通过让代理从固定目录中选择动作,而不是对工具输出进行自由形式生成,消除工具输出回到代理推理步骤的反馈通道。
Action-Admissibility Tiering
通过一系列独立的、非补偿性的可接受性测试的有序阶梯来审查提议的物理行动,并仅在通过每个层级的行动中按有用性对其进行排名。
Attenuating Delegation Chain
将权威以签名的、仅可附加的链条形式传递到多跳代理委托中,每个子链接在各个方面都不比其父链接宽,以便验证者可以拒绝离线扩展。
Change-Freeze-Aware Action Gate
检查每个变更代理的行动是否符合当前的部署冻结或维护日历,并在冻结范围内生效时阻止该行动或强制显式的人类重新授权。
Code-Then-Execute with Dataflow Analysis
让代理在一个沙箱DSL中发出代码,其值通过数据流分析静态标记为可信/受污染,然后再执行,从而实现逐值策略执行。
Cumulative Disclosure Accounting
保持一个会话范围的账本,记录数据代理已经披露的内容,并针对该累积记录评估每个新查询,以便一系列单独允许的结果不能共同重新识别受保护的行。
Deployment-Correlated Rollback Gate
限制事件响应代理在故障是否与最近的部署时间相关的情况下执行回滚的权限,仅在明确的部署到故障的联系下解锁自主回滚,否则进行升级。
Dual LLM Pattern
在一个拥有工具访问权限的特权模型和一个读取不受信内容的隔离模型之间分配代理工作,仅在它们之间交换不透明的引用。
Feasibility-Negotiated Intent Contract
让调用者陈述一个具有可衡量期望的目标,在执行之前根据严格的系统约束进行审计,并回复接受、命名放宽期望的反要约或命名约束的拒绝。
History-Dependent Admissibility
根据对方在本次对话中已经尝试的内容以及请求自身的前提条件,决定是否授予请求,以便可以拒绝一个在本地有效的请求。
Lethal Trifecta Threat Model
通过确保没有单一代理执行路径同时拥有以下三项:访问私有数据、接触不受信任的内容和一个外部通信通道,来阻止基于提示注入的外泄。
LLM Map-Reduce Isolation
在其自己的封闭子代理中处理每个不可信文档,仅合并结构化输出,因此一个文档中的注入无法影响其他文档的处理。
Monotonic Privilege Confinement
让任务派生的行动策略在运行过程中发生变化,但只有在决策程序证明它缩小了允许的集合时,才自动接受更新,因此特权可以自由缩小,仅在获得批准时扩大。
Two Human Touchpoints
在代理管道中设置恰好两个人工环节:一个在内容选择时,另一个在发布前的最终审核。
Calibrated Help-Gate via Conformal Prediction
使用符合预测形成一个校准的候选动作集,并让代理仅在该集合不是单例时请求人类帮助,从而提供统计任务完成保证。
Cryptographic Instruction Authentication
将系统/开发者指令包装在用户生成文本无法重现的加密签名块中;训练或构建模型以拒绝缺乏有效签名的指令。
Formal-Proof Compliance Gate
要求每个代理提出的行动都附带一个机器检查的证明,证明其满足约束性监管不变性,并确定性地拒绝任何证明未通过检查的行动。
Quorum on Mutation
需要多个连续的时刻(或运行)达成一致,才能将变更应用于持久状态。