langwatch/scenario
Agentic testing for agentic codebases
解决的问题
Scenario 提供了一个通过模拟来测试 AI 智能体的框架。它允许开发者超越静态测试,通过模拟真实的用户交互、边缘情况和对抗性攻击,确保智能体在多轮对话中行为正确。
工作原理
该框架使用一个模拟循环,其中为智能体分配不同的角色:
- 用户模拟器智能体:根据场景描述自动生成用户消息,以挑战待测智能体。
- 待测智能体:正在评估的实际 AI 智能体,通过简单的
call()方法集成。 - 裁判智能体:根据特定标准实时评估对话,以确定模拟是成功还是失败。
开发者可以以“自动驾驶”模式(让 LLM 主导交互)运行模拟,或使用脚本 DSL 精确控制对话流程、注入硬编码消息或添加自定义断言(例如,验证是否调用了特定工具)。
适用人群
它专为构建 LLM 驱动智能体的开发者设计,特别是那些需要验证复杂的多轮行为、执行红队测试或测试基于语音的 AI 智能体的人员。
亮点
- 多语言支持:支持 Python、TypeScript 和 Go。
- 语音智能体测试:对音频提供一流支持,包括针对 ElevenLabs、OpenAI Realtime 和 Gemini Live 的适配器,以及用于测试中断和延迟的工具。
- 红队测试:包含
RedTeamAgent,用于运行如 Crescendo 升级等对抗性攻击以发现漏洞。 - 无关集成:可与任何 LLM 评估框架配合使用,集成现有智能体所需的代码极少。
- 确定性测试:提供针对 LLM 调用和模拟输入的缓存机制,使非确定性测试可重复。
- 可视化:与 LangWatch 集成,支持实时调试和协作。
相关
- 项目
- 项目
- 项目
- 项目
- 项目