观测:集成反馈,以反思和调整
观测是 Agent 如何感知其行动的结果。
它们提供促进 Agent 的思考过程,以及指导未来行动的关键信息。
它们是来自环境的信号 - 无论是来自 API 的数据、错误消息还是系统日志 - 它们指导下个思考循环。
在观测阶段,Agent:
- 收集反馈:接收数据,或者其行动是否成功的确认。
- 追加结果:将新信息集成进当前上下文,即更新其记忆。
- 调整其策略:使用该更新上下文,改进后续思考和行动。
比如,如果天气 API 返回数据“部分多云,15°C, 60% 湿度”,那么该观测结果将被附加到 Agent 的记忆中(在提示词的末尾)。
然后,Agent 使用它决定是否需要额外的信息,或者准备提供最终答案。
反馈的迭代合并确保 Agent 动态地与其目标保持一致,根据现实世界的结果不断学习和调整。
这些观测可以采取多种形式,从阅读网站文本到监控机械臂的位置。这就像提供行为执行的文本反馈的工具“logs”一样。
观测类型 | 示例 |
系统反馈 | 错误信息、成功通知、状态码 |
数据变更 | 数据库更新、文件系统更改、状态变更 |
环境数据 | 传感器读取、系统指标、资源使用 |
响应分析 | API 响应、查询结果、计算输出 |
时序事件 | 截止日期到达、调度任务完成 |
1. 如何追加结果?
在执行行为后,框架依次执行以下步骤:
- 解析行动,确定要调用的函数和要使用的参数。
- 执行行动。
- 将结果追加为观测结果。