外观
Agent 工程化与安全 极简一问一答
定位|
Agent 工程化与安全一分钟速答页。每章固定 10 题,只保留结论、机制、边界与验证关键词;单个回答控制在 10~60 秒。
1. 怎么使用
本页重点| L1 概念 → L2 边界 → L3 原理 → L4 实现 → L5 工程 → L6 架构 → L7 复盘 → 误区、验证、证据强化。不会展开时,再进入正式主题或专项题库。
- 正式主题: 02-Agent工程化与安全
- 深度题库: Agent 工程化与安全专项面试题
- 阅读方式: 先遮住答案口述;答不出机制、边界或证据,再进入深度材料。
图:Agent 工程化与安全 十题极简脑图
替代文本: Agent 工程化与安全从 L1 概念和 L2 边界,依次进入 L3 原理、L4 实现、L5 工程、L6 架构与 L7 项目复盘,再用误区、最小自测和证据边界三题强化。
图表加载中…
读图结论: 掌握 Agent 工程化与安全 不能停在定义;先顺着七层链路说清机制与工程,再用误区、自测和证据边界确认没有虚假掌握。
2. 极简一问一答
Q001|Demo Agent 到生产 Agent,最关键的工程差距是什么?
生产 Agent 要把模型的不确定性限制在候选决策层,把身份、Schema、服务端授权、预算、状态、幂等、重试、审计和验收放进确定性运行时。Guardrail 可筛查输入、输出或参数,但不是 IAM 或资源授权;即使模型和 Guardrail 都说允许,工具服务端仍必须依据可信身份、资源范围和业务状态重新鉴权。
Q002|重试、幂等、对账、补偿和检查点分别解决什么问题?
重试再次尝试可恢复失败;幂等让同一业务意图重复到达时结果等同一次;对账在结果不确定时查询外部真实状态;补偿为无法原子回滚的已完成步骤执行反向业务动作;检查点保存恢复位置和必要状态。重试不能替代幂等,幂等也不自动提供跨系统事务或 exactly-once。
Q003|工具超时后为什么不能直接判失败并重试?
超时只表示本地未收到确定响应,外部动作可能未执行、执行中或已成功;对副作用调用盲目重试可能重复扣费、发消息或修改资源。运行时应保存业务意图幂等键与外部任务标识,将状态置为
SUBMISSION_UNKNOWN,先对账;确认已成功则收敛为成功,确认未执行且仍满足策略时才允许受控重试,无法对账的不可逆动作应转人工。
Q004|如何实现一个受控的高风险工具执行器?
认证中间件构造不可由模型修改的 AuthContext,执行器先做工具允许列表、Schema、角色与资源级授权,再用服务端签发的 intent_id、规范化参数和资源版本生成动作指纹。高风险批准绑定身份、动作指纹、策略/资源版本与有效期,并在数据库唯一约束创建执行占位时原子消费;重复意图只返回已有结果或进入对账,不跨慢外部调用持有锁。
Q005|Agent 因超时重试造成疑似重复副作用,如何闭环处理?
先暂停同资源自动写入和相关重试,固定 run_id、intent_id/call_id、动作指纹、外部任务 ID、状态历史、网络错误与业务结果;向外部系统对账确认每个意图的真实状态和影响范围。根因可能是响应丢失后被当失败、缺业务幂等键或本地落库非原子;修复为唯一意图占位、
SUBMISSION_UNKNOWN、对账恢复和受控补偿,再注入“外部成功、响应丢失、进程崩溃、重复回调”验证业务结果收敛,并建立告警、Runbook 和回归。没有外部系统协议与验证,不能宣称 exactly-once。
Q006|如何设计多租户 Agent 的权限、记忆、观测和恢复架构?
网关认证后由服务端注入主体与 entitlement,工具层执行最小权限和资源级授权;外部网页、检索文本与工具结果标记为不可信数据,不能覆盖系统策略。长期记忆按 tenant/user/用途隔离并具备来源、TTL、撤权和删除,缓存绑定权限范围;长任务用持久状态机、事件历史、检查点、幂等记录与合法迁移恢复。Trace 记录模型/Prompt/工具/Guardrail/状态/成本,但内容按分级脱敏、受控 Artifact 和保留期治理,高基数 ID 不作无界 Metric 标签。
Q007|如何把 AI 面试教练 Agent 工程化并安全上线?
这是源文档中的示例设计:题库与知识检索使用只读工具,用户回答和检索内容按来源隔离;评分采用版本化结构化 rubric,最大轮次、问题去重、预算和终止由运行时控制,长期弱点记忆按用户作用域、TTL 和删除治理。难点是概率评分、上下文恢复与隐私观测,亮点要通过非法动作/注入拒绝、固定答案重复评测、长会话、跨用户记忆、崩溃恢复和预算终止测试证明。代表性风险是评分漂移、重复追问、记忆污染和提示注入;仓库没有真实系统与事故数据,不能声称线上指标、用户规模或收益。
Q008|这个专题最常见的误区是什么?
常见误区有三类:在 System Prompt 写“不要越权”就当安全完成,或让模型判断自身权限;模型自报 user_id/role,批准后可改参数,或用进程内字典冒充生产幂等;从 Prompt 读取 tenant,完整记录秘密,或只靠关键词过滤注入。
Q009|怎样做最小自测?
最小自测分三步:为只读、可逆写入和不可逆写入设计三级工具策略;画出
PENDING/RUNNING/SUBMISSION_UNKNOWN/SUCCEEDED/FAILED的合法迁移;注入外部成功但响应丢失、重复/乱序 Webhook 和批准后参数替换。
Q010|回答这个专题时,证据边界是什么?
超时不等于外部未执行;没有外部协议与实测证据时不能宣称跨系统 exactly-once,所有项目事故与指标必须有证据。
3. 总结
一句话记忆: 生产 Agent 要把模型的不确定性限制在候选决策层,把身份、Schema、服务端授权、预算、状态、幂等、重试、审计和验收放进确定性运行时。
- 生产 Agent 要把模型的不确定性限制在候选决策层,把身份、Schema、服务端授权、预算、状态、幂等、重试、审计和验收放进确定性运行时。
- 先暂停同资源自动写入和相关重试,固定 run_id、intent_id/call_id、动作指纹、外部任务 ID、状态历史、网络错误与业务结果。
- 常见误区有三类:在 System Prompt 写“不要越权”就当安全完成,或让模型判断自身权限。
- 超时不等于外部未执行。