Files
obsidian-notes/InBox/Cursor 持续改进智能体框架 - 2026-04-30.md
Build Bot f7310caea0 同步
2026-05-18 01:20:38 +08:00

73 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Cursor: 持续改进我们的智能体框架 (Continually Improving Agent Harness)
> 原文: [cursor.com/cn/blog/continually-improving-agent-harness](https://cursor.com/cn/blog/continually-improving-agent-harness)
> 作者: Stefan Heule & Jediah Katz · 2026-04-30
## 核心思想
改进智能体框架 = 愿景驱动 → 提出假设 → 实验验证 → 定量/定性信号迭代。大多数改进不是跃迁式突破,而是执着地叠加一个个小优化。
---
## 1. 上下文窗口的演进
- **早期 (2024末):** 模型自行选择上下文能力弱 → 大量护栏lint/类型错误反馈、改写文件读取请求、限制单轮工具调用数量、预填大量静态上下文(文件夹布局、语义匹配代码片段、用户附件压缩版)
- **现在:** 上述做法大多淡出。保留少量实用静态上下文OS、git 状态、当前/最近查看文件)。转向**动态上下文**——模型在工作过程中按需拉取(过往对话、活跃终端会话、相关工具等)
## 2. 评估框架变更
| 方式 | 说明 |
|------|------|
| **离线评估** | 自有评估套件 + 公开基准 [CursorBench](https://cursorbench.com);快速、标准化、可跨时间对比 |
| **在线 A/B 测试** | 同时部署两个+框架变体,在生产环境真实用户中测试 |
**质量衡量指标:**
- **直接指标:** 延迟、token 效率、工具调用次数、缓存命中率
- **保持率 (Keep Rate):** 智能体生成的代码变更在固定时间后仍保留在代码库中的比例
- **语义满意度分析:** 用 LLM 读取用户对智能体输出的回应——用户进入下个功能=成功信号,用户粘贴堆栈追踪=失败信号
➤ 案例: 尝试用更贵模型做上下文摘要,改善微乎其微,不值得成本。
## 3. 跟踪并修复性能退化
**工具调用错误分类:**
- `InvalidArguments` / `UnexpectedEnvironment` — 模型出错、上下文矛盾
- `ProviderError` — 外部工具服务中断GenerateImage、WebSearch 等)
- `UserAborted` / `Timeout` — 用户中止或超时
**告警策略:**
- 未知错误=缺陷 → 超阈值即告警
- 预期错误 → 异常检测告警(每个工具×每个模型分别计算基线),显著偏离基线时触发
- 自动化工单: 每周运行一个特化智能体,搜索日志找出新增/激增问题,在 Linear 创建或更新工单
➤ 成果: 一次集中冲刺将意外工具调用错误降低一个数量级,所有工具可靠性达 99%+(很多 99.9%)。
## 4. 为不同模型定制框架
- 所有框架抽象不依赖具体模型,但可深度定制
- **工具格式差异:** OpenAI 训练使用 patch 格式编辑文件Anthropic 习惯字符串替换。用错格式会消耗更多 reasoning token 并产生错误
- **提示定制:** OpenAI 遵循指令更字面/精确Claude 更偏直觉,对不精确指令容忍度高
- **Early Access 调优:** 从最接近的现有框架入手 → 离线评估找出易错点 → 团队成员实际使用反馈 → 迭代直到可发布
- **"上下文焦虑"context anxiety:** 一个模型在上下文窗口渐满时拒绝执行任务,通过调整提示缓解
## 5. 支持聊天中途切换模型
- 切换时自动切换到对应模型的框架(不同提示、不同工具接口)
- 添加自定义指令告诉模型它是"中途接手"对话
- 缓存是 provider/model 特定的,切换导致缓存未命中 → 尝试用对话摘要缓解
- 替代方案: 使用**子智能体**(从全新上下文窗口开始),最近支持用户指定模型运行子智能体
## 6. 框架与软件开发的未来
- **多智能体模式**是方向: 一个负责规划、一个负责快速编辑、一个负责调试,各司其职
- **框架是关键:** 知道调度哪个智能体、如何描述任务、如何整合结果——这些编排能力体现在框架中,而非单个智能体身上
---
## 启发
> 与 Hermes Agent 的开发哲学高度一致——持续关注动态上下文、工具可靠性、评估方法论、以及为不同模型优化框架。
---
原文链接: [https://cursor.com/cn/blog/continually-improving-agent-harness](https://cursor.com/cn/blog/continually-improving-agent-harness)