MerlinTreesa/agent-failure-observations
GitHub: MerlinTreesa/agent-failure-observations
系统记录并分析 RAG 客服 Agent 在红队测试中反复出现的失败模式,从工程和产品双重视角为 AI Agent 的可靠性评估与优先级决策提供参考。
Stars: 0 | Forks: 0
# Agent 失败观察
本仓库不侧重于记录孤立的 bug,而是重点关注识别反复出现的失败模式、理解其发生的原因,并评估它们对生产级 AI 系统的影响。
### 核心理念:了解 Agent 是如何失败的,才能让它更少失败。以下记录的每一个失败案例都揭示了其背后的模式,因为只有模式——而不是具体的 bug——才能为你构建下一个 Agent 提供参考与借鉴。
# 目的
发现 bug 只是构建可靠 AI 系统的一部分。
同样重要的是理解:
- 哪些失败是必须修复的关键问题
- 哪些失败可以通过 prompt 设计或 guardrails 来缓解
- 哪些问题在做出产品决策前需要进行额外评估
- 哪些属于可接受的权衡
本仓库对每一项观察结果都同时捕捉了**工程视角**和**产品管理视角**。
# 评估设置
### 目标系统
为一个虚构公司(**Vertex Cloud Technologies**)构建的、具备支持工单升级能力的检索增强生成(RAG)客服 Agent。
### 知识库
知识库中故意包含了:
- 缺失的信息
- 矛盾的信息
- 升级规则
- 边界情况
这使得每一个响应都可以与已知的标准事实进行对比衡量。
### 测试方法
测试并未依赖脚本化的对话,而是使用了旨在暴露推理、检索和工具调用失败的对抗性交互。
观察到的行为会在多个会话中进行重新测试,然后才会被归类为反复出现的模式。
# 失败分类
随着发现新的失败模式,当前的分类体系会持续更新。
| 类别 | 描述 |
|-----------|-------------|
| Input Parsing | 对用户输入的错误解释 |
| Reasoning | 理解正确但得出了错误的结论 |
| Tool Usage | 错误的工具选择或执行 |
| Context & Memory | 未能保留或使用先前的对话上下文 |
| Boundary Cases | 在预期用例之外的意外行为 |
| Adversarial Prompting | 用户的引导框架错误地影响了模型的行为 |
| Confidence Calibration | 不正确的信心水平或过度的不确定性 |
| Premise Validation | 未能验证用户的请求在逻辑上是否有效 |
# 关键发现
## 高优先级
### 信任与声誉风险
观察到在特定的对话条件下,Agent 可以被诱导去质疑其自身所属组织的合法性。
**产品视角**
这代表了一种高影响的信任失败。即使发生频率不高,其潜在的业务和声誉后果也使其成为一个阻碍发布的问题,应当通过专门的 guardrails 进行缓解。
### 虚构的法律与财务建议
Agent 生成了无依据的税务和法律指导,包括为不同国家捏造的财务细节。
**产品视角**
对于法律和税务指导等敏感领域,与其单纯改善检索,不如通过策略限制和强制升级机制来进行保护。
## 中优先级
### 过度顺从
当受到用户反复质疑时,Agent 偶尔会改变原本正确的答案。
**产品视角**
在确定优先级之前需要进行定量评估,因为其对业务的影响很大程度上取决于发生的频率。
### 似是而非的幻觉
当存在知识盲区时,Agent 有时会生成看似合理但实际错误的信息,而不是承认不确定性。
**产品视角**
不一致的幻觉会降低用户信任,需要更好的不确定性处理机制。
# 其他观察结果
在测试期间观察到的其他行为包括:
- 将未作答的问题默认视为肯定
- 除非被明确指出,否则无法发现矛盾
- 声称能够访问无法获取的账户信息
- 接受格式错误的结构化输入
- 对不切实际的场景处理方式不一致
- 不同会话间的回答存在差异
- 尽管有用户反馈,仍重复提供无效的建议
这些问题单独来看并不足以阻碍产品发布,但它们是进行自动化回归测试的强有力候选对象。
# 表现良好的行为
并非所有的测试都揭示了失败。
积极的观察结果包括:
- 正确处理直接的数学推理
- 在做出资格判定前进行适当的澄清
- 当所需信息不可用时能够正确拒绝
- 在压力下未捏造管理人员的联系信息
- 在受到直接质疑时,能诚实承认存在的矛盾
了解哪些功能已经运作良好同样有价值,因为这有助于在改进薄弱环节的同时防止出现回归问题。
# 评估技术
目前的测试涵盖以下场景:
- 相互矛盾的用户陈述
- 诱导性和对抗性的问题
- 对正确响应的反复施压
- 模糊或不完整的输入
- 结构化字段损坏
- 不可能发生的业务场景
- 需要无法获取的账户访问权限的请求
- 多轮上下文一致性检查
# 持续进行的工作
随着发现更多新的失败模式,本仓库将持续更新。
我们的目标不是简单建立一个 bug 列表,而是要更深入地了解 AI Agent 在生产环境中是如何失败的,以及这些失败如何影响工程和产品决策。
标签:AI安全, C2, Chat Copilot, LLM评估, Ollama, RAG, 人工智能, 用户模式Hook绕过, 红队评估