SuperAPI AI 工具集

chat-perf

通用与其它

查看项目

更新于 10-16 00:32

技能介绍

用途:对 VS Code 聊天界面做性能基准与内存泄漏检查,支持本地 dev 构建与已发布版本对比。适用于修改聊天渲染代码(chatListRenderer.ts、chatInputPart.ts、markdown 渲染)、流式响应/SSE 处理、disposable 生命周期模式之后,也用于比较两个 VS Code 版本,或在 CI 中拦截涉及聊天 UI 的 PR。

主要能力:性能回归脚本 scripts/chat-simulation/test-chat-perf-regression.js(npm run perf:chat)通过 Playwright Electron 启动 VS Code,打开聊天面板,用 mock LLM 响应发送消息,测量时延、布局与渲染指标;默认下载 1.115.0 作为基线后与本地 dev 构建对比。内存泄漏脚本 scripts/chat-simulation/test-chat-mem-leaks.js(npm run perf:chat-leak)在一个会话内顺序发送 N 条消息并强制 GC,用线性回归计算每条消息的堆与 DOM 节点增长。场景定义在 scripts/chat-simulation/common/perf-scenarios.js,分内容、工具调用、多轮用户三类。

用法:npm run perf:chat -- --scenario text-only --runs 3;npm run perf:chat -- --no-baseline --runs 3;npm run perf:chat -- --production-build --baseline-build 1.115.0 --runs 5;npm run perf:chat-leak -- --messages 20 --verbose。常用参数含 --build、--baseline-build、--threshold、--resume、--setting 等,详见 --help。

限制:只有 timeToFirstToken、timeToComplete、layoutDurationMs、forcedReflowCount、longTaskCount 会触发回归失败,其余为信息性指标;--gc-object-stats 会破坏计时指标,不可用于基准测试;内存/heap 指标在单请求下噪声大;CI 产物保留期不同(perf-summary-* 仅 1 天,其余约 30 天)。