智能体应用(Agentic applications)允许 LLM 自主决定解决问题的下一步行动。这种灵活性非常强大,但模型的黑盒特性使得很难预测对智能体某个部分进行调整后,会如何影响整体行为。要构建可用于生产环境的智能体,全面的测试至关重要。 测试智能体主要有以下几种方法:
  • 单元测试(Unit tests):使用内存中的模拟对象(fakes)对智能体中小型、确定性的组件进行隔离测试,以便快速且确定性地验证其精确行为。
  • 集成测试(Integration tests):通过真实的网络调用测试智能体,确认各组件能够协同工作、凭证与数据模式(schema)匹配正确,并且延迟表现可接受。
  • 评估(Evals):使用评估器检查智能体的执行轨迹,可以通过确定性匹配或使用 LLM 作为裁判(judge)进行评估。
由于智能体应用通常会将多个组件串联在一起,并且必须处理由 LLM 非确定性特性带来的不稳定性,因此它们往往更加依赖集成测试。
使用 LangSmith 大规模运行评估、长期跟踪结果,并比较不同实验。请参阅评估一个 LLM 应用开始使用。

单元测试

模拟聊天模型并使用内存持久化,在不调用 API 的情况下测试智能体逻辑。

集成测试

使用真实的 LLM API 测试你的智能体。组织测试、管理密钥、处理不稳定性并控制成本。

评估

使用确定性匹配或基于 LLM 裁判的评估器来评估智能体执行轨迹。