跳到导航

提案与验证

ElevenAgents Architect 的变更如何经过测试、审查并逐步发布到实时流量。

概览

ElevenAgents Architect 完成一项更改后,会将其作为一份 提案 交给你:其中包含保存更改的分支、证明更改有效的测试,以及一份请求将该分支合并到 main 的合并提案。本页将说明各部分的作用、在哪里查看,以及提案如何从一次对话进入线上流量。

什么是提案

提案基于现有的版本控制模型构建:

部分说明
分支Architect 为此次更改创建的分支,因此工作期间 main 和线上调用方不会受影响。
草稿Architect 的编辑内容,暂存在该分支中尚未发布的草稿里。
版本发布草稿后,它会成为该分支上的一个新版本。
测试Architect 为此次更改编写的测试,会附加到智能体并针对该分支运行。
合并提案请求将分支合并到 main(或你选择的其他分支),其中包含更改说明、已运行的测试,以及审核者应检查的内容。

合并提案是标准的 ElevenAgents 合并提案,与团队成员手动创建的类型相同,并非独立的对象类型。

一份合并提案仅包含一个源分支和一个目标分支,因此一份提案对应一个候选解决方案。要比较不同方案,可让 Architect 将每个方案放在各自的分支上。每个分支都会有自己的提案,你可以将流量拆分到它们之间,作为一项实验。

Architect 会以你的身份操作,因此它创建的合并提案会将你记录为作者。 系统不会记录该提案由 Architect 创建。如果团队需要了解这一点, 可在提案描述中注明。

如何创建提案

当你要求 Architect 修复或改进某项内容,或向它提供失败的测试、Spotlight 发现或问题时,它会创建提案。完整流程及 Architect 在每一步调用的工具,请参阅示例。简而言之:

  1. Architect 进行调查、创建分支,并将更改暂存到该分支上的草稿中。
  2. Architect 为更改编写测试和模拟,并在对话中运行,然后再向你展示结果。
  3. Architect 打开发布对话框。你审核差异并选择 发布,将更改作为该分支上的新版本提交。
  4. Architect 向 main 创建合并提案,并根据分支的实际提交和测试运行情况编写描述。
  5. Architect 会建议在审核提案期间,将少量线上流量发送到该分支。这需要你批准。

你可以在任一步骤停止。即使分支已有已发布版本但尚未创建合并提案,仍然有用:你可以自行测试,或稍后再创建提案。

对话内验证

Architect 会在构建更改时编写并运行测试,而不是等你之后单独启动。对于修复,一个实用模式是证明新测试在没有此更改时失败,而应用更改后通过。Architect 可以针对原始分支和包含更改的草稿运行同一组测试。

Architect 不会自动对每项更改执行这种前后对比检查。在重要时请明确要求,例如:“显示新模拟在 main 上失败、在分支上通过,然后创建提案。”

当满足所有成功条件时,测试即为 通过。对于 LLM 测试,智能体响应需满足成功标准。对于工具调用测试,应以预期参数调用预期工具。对于模拟,模拟对话需满足成功条件。要检查结果是否不稳定,可要求 Architect 多次运行测试。它可将每项测试重复运行最多 50 次,并报告通过率。

有关各测试类型的定义,请参阅测试。

在哪里查看提案

打开智能体,然后依次进入 版本控制 > 提案。列表可按状态、作者(创建者)和审核者(等待审核者、已审核者)筛选。Architect 在你对话中创建的提案会将你列为作者。

Architect 创建提案后,也会立即在对话中返回其链接。

“分支”页面上的提案列表

智能体“分支”页面中的“提案”标签页

提案结构

提案页面会显示源分支和目标分支、状态、是否可合并,以及源分支落后或领先目标分支的程度。页面包含以下标签页:

描述、源分支提交记录、审核和评论的活动时间线,以及评论框。侧边栏会显示审核者、推荐审核者和关联问题。

Architect 编写的描述始终包含三个部分:摘要(每项重要更改及原因)、测试(运行了哪些测试及其结果,或说明未运行测试)和 如何审核(应重点关注的内容,以及要运行的测试或尝试的对话)。

合并提案的“概览”标签页

提案的“概览”标签页,包含描述、审核者和关联问题

审核与合并

状态

合并提案有以下状态之一:

状态含义
开放等待审核或合并。
已合并分支已合并到目标分支。
已关闭被作者撤回、被其他人拒绝,或因分支已归档而关闭。已关闭的提案无法重新打开。

提案处于开放状态时,每位审核者的最新审核结果为 已批准 或 请求更改。没有单独的“已测试”或“可供审核”状态。测试结果显示在 测试运行 标签页中。

审核和评论会显示在 概览 标签页的活动时间线中,并与提交到源分支的每个新版本一同展示。

合并提案的活动时间线

活动时间线,显示源分支上的新版本和一项批准

谁可以批准和合并

  • 除作者外,拥有智能体编辑权限的任何人都可以审核提案。由于 Architect 以你的身份操作,你无法批准它在你对话中创建的提案,必须由团队成员批准。
  • 当提案至少获得一位非作者人员的批准,且没有任何审核者的最新审核结果为 请求更改 时,即可合并。工作区管理员无需批准即可合并。
  • 合并到受保护分支需要管理员权限,或管理员批准。

Architect 无法批准、评论、合并或关闭合并提案。这些步骤始终由人员完成。完整审核规则请参阅合并提案。

当你要求且角色允许合并时,Architect 可以不通过提案直接合并分支。 在 需要批准 模式下,它会先询问。在 自动批准 模式下则不会。 如果每项更改都必须经过已审核的提案,请对 main 使用分支保护。

合并后会发生什么

合并后无需单独发布。合并会在目标分支上写入新版本,该版本会立即为目标分支接收的相应流量份额提供线上服务。当目标为 main 且未设置流量拆分时,意味着所有调用方都会使用它。

合并还会:

  • 将源分支已有的所有线上流量份额转移到目标分支。
  • 默认归档源分支。
  • 关闭来自同一分支的其他所有开放提案。
  • 解决关联问题(如有)。

逐步发布

提案合并前,你可以将一部分线上流量发送到其分支,让真实调用方使用此次更改。

1

开始拆分

例如向 Architect 说:“将 5% 的流量发送到此分支。”Architect 会告知你最终的完整流量拆分, 包括 main 的份额,并在应用前请求批准。你也可以自行设置:在 版本控制 > 分支 中, 对该分支选择 部署。

2

查看结果

打开提案的 对话 标签页,阅读分支上的对话;或要求 Architect 将该分支的结果与 main 的结果比较。

3

推进或回滚

要推进,请合并提案。分支的流量份额会随之转移到 main。要回滚,请要求 Architect 将分支份额设为 0%, 或自行编辑部署配置。线上流量会立即返回 main。

流量份额总和必须始终为 100%,并且会按每段对话确定性地路由。更改受保护分支的流量份额,包括从受保护的 main 转移流量,需要管理员权限。请参阅流量部署。

主动提案

当你提出要求,或向 Architect 提供失败的测试、Spotlight 发现、警报或问题时, Architect 会生成提案。它目前不会按计划扫描智能体,也不会自行创建提案。

当前的主动流程是Spotlight后接人工交接。Spotlight 会持续监控智能体的对话,每周生成包含建议调查项的摘要、发出实时警报,并推荐配置更改。要将 Spotlight 发现转为提案:

1

打开 Spotlight

打开智能体,其概览页面就是 Spotlight。
2

选择发现

打开每周摘要并查看 建议的后续步骤,或打开实时警报。

3

交给 ElevenAgents Architect

在建议上选择 在 Architect 中打开,在摘要上选择 使用 Architect 分析,或在警报上选择 使用 Architect 调查。Architect 会接收该发现,并被要求先根据真实对话进行验证, 确认受影响的分支,再建议更改。

4

请求创建提案

审核 Architect 的发现。如果你认可根本原因,请要求它在某个分支上修复问题、测试修复结果, 并创建提案。

问题的处理方式相同。线上智能体可在对话期间标记问题以供审核,而问题上的 与 Architect 讨论 会启动对该问题的调查。

计划自动化及发送到 Architect 收件箱的报告正在开发中。Architect 页面上的 收件箱 标签页是为此预留的占位内容。