gstack /benchmark-models 指南:如何同题对比 Claude、GPT、Gemini 的延迟、成本与质量
【免费下载链接】gstackUse Garry Tan's exact Claude Code setup: 23 opinionated tools that serve as CEO, Designer, Eng Manager, Release Manager, Doc Engineer, and QA项目地址: https://gitcode.com/GitHub_Trending/gs/gstack
gstack /benchmark-models是 Garry Tan 开源工作流工具 gstack 中的跨模型基准测试技能。它把同一个提示词同时交给 Claude、GPT(通过 Codex CLI)和 Gemini 并行运行,用真实数据对比响应延迟、Token 消耗、成本与质量评分——用数据回答"哪个模型最适合这个技能",而不是凭感觉。
/benchmark-models 是什么:模型同题竞速
先划清边界:gstack 里有两个容易混淆的 benchmark 技能:
| 技能 | 测量对象 |
|---|---|
/benchmark | 网页性能(Core Web Vitals、加载时间、包体积),详见 benchmark/SKILL.md |
/benchmark-models | AI 模型性能(延迟、Token、成本、质量),详见 benchmark-models/SKILL.md |
/benchmark-models的工作方式是:同一个提示词 → 三家模型并行"跑分" → 一张对比表。它包装了 bin/gstack-model-benchmark 这个命令行工具,并串联起三个模型适配器:
claude→ Claude Code CLI,默认模型 claude-opus-4-7gpt→ OpenAI Codex CLI(codex exec),默认模型 gpt-5.4gemini→ Gemini CLI,默认模型 gemini-2.5-pro
三家并行执行(Promise.allSettled),跑得慢的模型不会阻塞跑得快的;任何一家的认证失败、超时或限流,都只会让表格中那一行显示错误原因,而不会中止整个批次。核心实现位于 test/helpers/benchmark-runner.ts。
完整使用流程:从选提示词到保存结果
跑分是交互式流程,一共六步,跟着提示选就行。
第 1 步:选择提示词
三种来源任选其一:
- 跑一个真实的 gstack 技能(推荐):工具会列出所有带
SKILL.md的技能文件供你挑选。用真实技能跑分最能暴露模型在工具调用上的实际差异,而不只是裸生成能力 - 内联提示词:直接输入一段文字,通过
--prompt "<text>"传递 - 磁盘文件:指定路径,工具会读取文件内容作为提示词
第 2 步:干运行预览认证状态
正式跑分前,工具会先执行--dry-run:它只验证参数、检查各模型的 CLI 是否安装且已登录,不发送任何提示词、不花一分钱。输出的 "Adapter availability" 部分会告诉你每个厂商是 OK 还是 NOT READY(并附带修复提示,比如claude login、codex login或export GOOGLE_API_KEY)。
然后由你选择参赛阵容:全部已认证厂商(推荐,对比信息最丰富)、仅 Claude、或指定两个。未登录的厂商会被干净地跳过,不会中断批次。
第 3 步:决定是否启用质量裁判
如果检测到 Anthropic 访问凭证,工具会询问是否启用--judge质量裁判。裁判用 claude-sonnet-4-6 对每个输出打分,每次运行额外花费约 $0.05。官方建议开启——既然要跨模型对比,质量才是重点,不只是速度。这一步必须手动确认,工具绝不会自动启用。
第 4 步:正式跑分
三家模型在同一个工作目录里并行运行,每个模型有独立的 5 分钟超时(--timeout-ms,默认 300000)。典型耗时 30 秒到 5 分钟,取决于提示词复杂度和是否开启裁判。输出会以表格形式流式打印。
第 5 步:解读结果
跑完后工具会直接给出四个结论:最快(最低延迟)、最便宜(最低成本)、质量最高(裁判评分最高,仅当启用--judge)、综合最优(需结合权衡判断)。任何一家出错(认证、超时、限流)都会单独标出并附修复路径。
第 6 步:保存基线
结果可以存为~/.gstack/benchmarks/<日期>-<技能名>.json。厂商会不定期更新模型,技能表现存在漂移——保存的基线能让你在未来跑分中捕捉到质量回退,趋势数据很值钱。
跑分报告:6 个指标 + 内置价格表
一份标准报告长这样(--output支持 table / json / markdown 三种格式):
| 指标 | 说明 |
|---|---|
| Model | 实际使用的模型名(以运行时真实返回为准) |
| Latency | 从调用到返回的总耗时 |
| In→Out Tokens | 输入 / 输出 Token 数 |
| Cost | 按内置价格表估算的美元成本,每次跑分都可见 |
| Quality | 裁判评分(0–10),未启用裁判时为- |
| Tool Calls | 工具调用次数——最能体现模型执行力的差异 |
成本不是拍脑袋算的,而是查内置价格表(2026 年 4 月版,按季度更新):
| 模型 | 输入 $/百万 Token | 输出 $/百万 Token |
|---|---|---|
| claude-opus-4-7 | 15.00 | 75.00 |
| claude-sonnet-4-6 | 3.00 | 15.00 |
| gpt-5.4 | 2.50 | 10.00 |
| gpt-5.4-mini | 0.60 | 2.40 |
| gemini-2.5-pro | 1.25 | 5.00 |
| gemini-2.5-flash | 0.30 | 1.20 |
完整价格表见 test/helpers/pricing.ts。缓存读取的 Token 按输入价的 10% 计费;表外的模型会打警告并计 0。
质量裁判:0-10 分怎么打
裁判的实现见 test/helpers/benchmark-judge.ts。它把原提示词和各家输出放在一起,从 4 个维度逐项打 0–10 分:
- correctness正确性:是否解决了提示词要求的问题
- completeness完整性:边缘情况和错误路径是否覆盖
- code_quality代码质量:命名、结构、显式性
- edge_cases边界处理:nil / 空 / 非法输入的处理
总分取 4 个维度的平均。裁判只给成功的输出打分,固定使用 claude-sonnet-4-6 保证评分稳定,每次运行成本约 $0.05。
成本可见 + 5 条铁律
/benchmark-models内置了几条防踩坑规则,值得新手记住:
- 没干运行,不跑分——花钱前必须先看到认证状态
- 不硬编码模型名——参赛模型永远来自你的选择
- 裁判绝不自动开启——它花真金白银,必须用户明确点头
- 零认证就停下——没有任何可用厂商时,跑分不会产生有用输出
- 成本必须可见——每次运行都在表格里展示各家成本,让你下一次运行前心里有数
新手常见疑问:NOT READY 怎么办?
- Claude 显示 NOT READY:确认
claudeCLI 已安装,并完成登录(或设置ANTHROPIC_API_KEY) - GPT 显示 NOT READY:确认
codexCLI 已安装,并执行过codex login(凭据存在~/.codex/) - Gemini 显示 NOT READY:确认
geminiCLI 已安装,并导出GEMINI_API_KEY(或GOOGLE_API_KEY)。注意 gemini CLI 已不再支持个人 OAuth 免费额度,需使用 AI Studio 的 API 密钥 - 单家超时或限流:表格中对应行标注
ERROR timeout/rate_limit及原因,其余厂商结果不受影响 - 想换模型?:适配器支持按厂商指定具体模型(
--models之外的模型覆盖参数),但新手用默认模型即可
小结
/benchmark-models是 gstack 中"用数据代替感觉"的代表技能:一个提示词、三家模型、一张对比表,把延迟、成本、质量三个维度一次性摊开。跑分前花 10 秒干运行,跑分后花 10 秒存基线,你就能看到模型选择的真实成本曲线。更多技能清单可参考 docs/skills.md 与 README.md。
【免费下载链接】gstackUse Garry Tan's exact Claude Code setup: 23 opinionated tools that serve as CEO, Designer, Eng Manager, Release Manager, Doc Engineer, and QA项目地址: https://gitcode.com/GitHub_Trending/gs/gstack
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考