文档

渐进式技能

智能体按需加载能力,而非一次性加载全部内容,因此能在大型代码库中保持高效运行。

负责处理代码的智能体需要掌握大量相关知识:包括项目规范、所用框架、测试运行方式以及可使用的各类工具。若要让每个智能体在每项任务中都加载所有这些内容,不仅效率低下、成本高昂,还会适得其反——给模型输入上百页无关指令只会让输出效果更差。

渐进式技能这是一种替代方案:智能体仅携带核心功能,仅在任务需要时才加载特定能力。

运作原理

每个智能体启动时会先获取其必备的内容——即自身角色、任务及相关规范。后续所需的能力会根据当前任务需求动态加载。遇到数据库迁移任务的智能体会加载处理迁移所需的能力;从不涉及数据库操作的智能体则无需为这类知识付出额外成本。

始终加载

  • 角色
  • 任务
  • 规格说明

任务: 为orders表添加索引

按需加载:工作需求时才会调用

  • 数据库迁移

    已加载:该任务涉及数据库迁移操作

  • 前端组件

    未加载;无需为此付费

  • 浏览器测试

    未加载;无需为此付费

  • 基础设施

    未加载;无需为此付费

示例性技能说明。智能体从自身角色、任务和规格说明出发,仅在需要时才加载对应技能。

为何这对您至关重要

具体有三点实际影响:

成本。令牌是运行智能体的主要可变成本,而上下文占据了大部分令牌消耗。仅加载必要内容就能大幅降低这一成本。

质量。这一点不太明显,但或许更为重要。模型的注意力资源有限,若智能体的上下文里充斥着大量无关内容,就更有可能忽略关键信息。聚焦的上下文不仅能产出更优质的结果,还能降低成本。

规模。正是这一特性让智能体能够在大型代码库中高效工作。若试图将整个代码库内容都纳入上下文,在大多数实际项目中早已无法正常运行。

您可掌控的部分

其实可操控的空间并不大,这是刻意设计的。能力加载是自动进行的,由任务需求驱动。

您能掌控的是智能体所引用的上下文:项目上下文它决定了最初可加载的内容范围。精心维护项目上下文的重要性远高于直接管理智能体能力。