a↗Agent 工程实战中文课程 / v1.0.0⌕ 搜索课程/
I20 · 互动推演

局部快两倍,整体快多少?

用关键路径与失败成本衡量端到端优化。

合成教学数据 · 未运行真实模型
静态推演与完整规格

I20 局部快两倍,整体快多少?

关联章节:M10 · 交互类型:performance-model · 状态:提供纯逻辑参考函数,UI待实现

教学目标

用关键路径与失败成本衡量端到端优化。

初始状态


{
  "before": {
    "model": 800,
    "tools": 700,
    "queue": 300,
    "storage": 200
  },
  "after": {
    "model": 400,
    "tools": 700,
    "queue": 300,
    "storage": 200
  }
}

操作控件

  • 编辑各段耗时

  • 切换串行/给定关键路径视图

  • 计算总时长与speedup

  • 加入额外重试成本

  • 查看假设

状态变化规则

  • 默认串行模型只求和;并行时必须输入真实依赖,不自动把所有段max。

  • 分别显示组件加速与整体加速。

黄金案例与反馈

base

输入:


{
  "before": [
    800,
    700,
    300,
    200
  ],
  "after": [
    400,
    700,
    300,
    200
  ]
}

期望:


{
  "before_total": 2000,
  "after_total": 1600,
  "speedup": 1.25
}

模型2倍不等于任务2倍。

extra-retry

输入:


{
  "before": [
    2000
  ],
  "after": [
    1600,
    600
  ]
}

期望:


{
  "speedup": 0.9090909090909091
}

额外重试使优化倒退。

完成条件

  • 解释1.25来源

  • 构造组件更快但整体更慢的反例

反馈层次

  • 提交预测后显示结果;允许跳过预测但记录跳过,不阻止阅读

  • 结果同时显示状态变化、原因与被拒绝动作;不是只给红绿灯

  • 第一次错误给边界提示,第二次提供最小反例;参考推导始终可主动打开

  • 重置恢复固定初始状态并保留历史尝试供用户手动清除

无障碍与静态替代

  • 全部操作有原生button/input/select替代,不依赖拖拽

  • 图与动画提供同步文字状态表;支持prefers-reduced-motion

  • 状态改变用aria-live=polite摘要,不逐字朗读长日志

  • 焦点不跳走;错误提示关联输入;颜色不是唯一编码

无JavaScript时直接展示初始输入、规则和黄金案例表,读者仍能完成纸面推演。状态动画仅作解释,不能成为获取答案的唯一途径。

持久化与重置

使用版本化键agent-course:1:I20,仅保存本地学习状态。支持单卡重置和全站清除;存储失败时以内存模式继续,不阻断阅读。

必须避免的误导

计算为成本模型,不是压测结果;禁止自动写“性能提升25%”混淆时长下降20%与吞吐比。

执行边界

纯本地教学状态机;不执行任意代码,不连接真实资金/模型/宿主Shell。

逻辑参考

web/reference/engines.mjs中的e2e;对应测试在web/reference/engines.test.mjs。UI可复用或等价移植,但不得改变黄金结果。