前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片NEW
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 业务场景题真实业务问题与追问
  • 查漏补缺常见问题解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
    • AI 定制路线NEW按你的简历现排
    • AI 知识地图NEW串起全站知识点
  • 动态
    • AI 热点NEWAI 每日动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
AI 助手NEW
旧版
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片NEW
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 业务场景题真实业务问题与追问
  • 查漏补缺常见问题解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
    • AI 定制路线NEW按你的简历现排
    • AI 知识地图NEW串起全站知识点
  • 动态
    • AI 热点NEWAI 每日动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
AI 助手NEW
旧版
返回 AI 情报前线
All News · 全部资讯8611
  • 自托管Llama部署成本全解析:GPU之外容易被忽视的隐性开销
  • Builder.io开源Agent-Native框架:让人与AI共享同一操作层
  • 让AI编程代理在中断后从断点恢复:session化执行轨迹方案
  • CI如何验证AI代理真的跑了测试而不是伪造结果
  • AI产品定价数学:固定费率如何悄悄亏损
  • ZCode事件:AI编程工具静默上传全部Git历史
  • Anthropic自评:R&D自动化率26%,但完全自主为0
  • 阿里Qwen-Image-2.1:70亿参数开源图像生成拳打闭源模型
  • OWASP CRS 规则引擎:给 LLM 和 MCP 加上 WAF
  • 智谱 MaaS 上线数据不留存机制,可申请开通
  • 如何界定可完成的AI工程范围
  • Cursor中直接查询技术文档的MCP方案
  • AI Agent的过度自信陷阱
  • Cursor与.NET周报:七个实战规则
  • Qwen-Image-2.1开源:7B参数兼顾生图与编辑
  • 阿里开源 Qwen-Image-2.1:7B 参数兼顾透明图生成与多图编辑
  • 免费模型Trace不能支持的五个评估主张
  • AI重构前的副作用冻结术:先录 Ledger 再动格式
  • Agent能改Oracle则Green Build不足为信:独立检查三原则
  • AI编程导致代码质量下降?根子在质量管理
  • AI连接数据库必须先脱敏:PII保护实战指南
  • Anthropic与埃森哲20亿美元共建AI安全评估体系
  • Copilot CLI恢复检查点导致1GB未跟踪文件被删
  • AI代码审查升级:结果直发PR评论,淘汰复制粘贴
  • Higgsfield:开源万亿参数模型分布式训练框架
  • LlamaIndex多Agent工作流:事件驱动共享状态编排
  • 用AI从45条Ruff PR评论中挖掘团队隐式代码规范
  • LLM Agent工具授权最佳实践:五步检查清单
  • Agent补丁评分应只看其未写的断言
  • 2026年9月 Ollama 编程模型实测推荐
  • 国产大模型价格实测:GPT-5 三到八倍溢价
  • Codex-X:OpenAI Codex桌面端可视化综合管理工具
  • Docling:支持复杂PDF结构的文档解析库,集成主流AI框架
  • NVIDIA PAIR:开源本地多Agent推理路由,支持Ollama/LM Studio
  • 阿里Qwen发布Qwen3.8-LiveTranslate:60语言实时翻译,延迟仅2.3秒
  • Supermemory:AI记忆与上下文引擎开源实现
  • OpenSpec:AI编程时代的规格驱动开发框架
  • MCP Agent工具集成测试实战指南
  • Claude Code 在 Zed 中的 ACP 协议传输机制实测
  • Mubayyin:基于结构化知识库做 AI 发布决策的智能体
  • 阶跃发布 Step 5 Preview:开源模型前三,单任务成本仅 Claude Opus 5 的 1/8
  • OpenClaw 2026.9.5:原子更新、插件热重载、对话分享与GPT Live扩展
  • Jev:返回类型化校准决策的System One模型
  • Gemini越狱事件:测试中入侵三家公司,Google隐瞒四月
  • Qwen3.8-Omni-Flash:匹敌Gemini多模态能力,价格更低
  • SpaceX 工程师月均 2000 条 PR 背后的验证工程实践
  • Unity发布官方插件:让Claude Code和OpenAI Codex使用最新教程
  • 已加载 47 / 8611
8.0
热点
AI SCORE
编程提效2026-09-20 20:09

免费模型Trace不能支持的五个评估主张

dev.to · AI#AI评估#Agent#测试
Editor brief · 编辑速览

揭示Agent评估中的常见误区:完成运行≠质量测量、提供评估工具≠真实评估、覆盖率上升≠行为正确等。

文章思维导图
Knowledge map
拖拽缩放
Full translation

完整中文译文

那张截图是评估报告吗?还是只是一段长对话?

我不断收到看起来很正式的 traces。绿色的勾、Token 计数器、一个宣称测试通过了的模型。然后有人把窗口截图粘贴到设计文档里。

那个窗口不是评估报告。它是一场穿着元数据外衣的对话。本文 FAQ 列举了我依然经常听到的五个说法。每个说法都会附上证据,然后给出一个修正后的心智模型。

你还会有一个小小的测试工具链。把它当作一个提案。我不是在卖排行榜。

为什么这个差距越来越大

本周关于测量的话题又热闹起来了。人们争论着那些模型早已能够刷分的测试。本地 traces 仍然被当作实验室证书对待。

Agent 在免费会话里完成了一个任务?行。但你先把 fixtures 和 assertions 冻结了吗?这才是真正的问题。

Disclosure: This article was prepared as part of MonkeyCode's product outreach.

MonkeyCode 提供免费模型访问和免费服务器选项。我把两者都当作起草测试工具链的草稿纸。我不把它们当作证据。没有模型名字。没有配额表演。没有凭空捏造的 p50。

Myth 1: 已完成的 trace 已经测量了质量

说法:运行结束了,所以质量已经被测量了。

你实际持有的证据:一份工具调用和 prose 的日志。也许有一个 diff。也许什么也没有打分。

修正后的模型:评估需要冻结的输入、机器检查的断言、以及一份环境回执。

在引用通过率之前先问自己这些问题:

  • Agent 启动之前,哪些 fixture 文件被哈希了?
  • 哪些命令不经过人工点头就会失败?
  • 哪些机器事实下周还能重新恢复?

如果这些答案都是空的,别再引用分数了。你只是在叙述一段会话。

# proposal: gate any "eval" label on three files
test -f fixtures/input.md || echo "missing fixture"
test -f tests/test_eval.py || echo "missing assertions"
test -f env/receipt.json || echo "missing receipt"

一个完成的 trace 是原材料,不是结果。保存它。别给它加冕。

Myth 2: Token 数量多意味着评估很认真

说法:我们烧了一大堆免费 Token,所以这项研究是真实的。

你实际持有的证据:消耗量。那是一个财务数字,不是准确度。

修正后的模型:Token 衡量的是消耗。它们不衡量适配度、安全性或延迟。

一个廉价的失败测试可以是极好的证据。一次庞大的聊天可以证明一种 vibe,别的什么都证明不了。你会接受发票大小作为单元测试吗?

保持各列的真实含义:

assertions_passed / assertions_total  -> quality signal
tokens_in + tokens_out                -> cost signal
wall_clock_seconds                    -> time signal

永远不要把它们混成一个虚荣指数。如果删掉 assertions 之后你的"分数"依然存在,那你打分的其实是开销。

# proposal: refuse mixed dashboards
if grep -q tokens artifacts/summary.csv && ! test -f artifacts/pytest.out; then
  echo "spend without assertions is not an eval"
  exit 1
fi

Myth 3: 免费的服务器是一个固定的实验室

说法:它跑在免费的机器上,所以环境是已知的。

你实际持有的证据:一台借来的机器。镜像会迁移。进程会崩溃。限制会不声不响地出现。

修正后的模型:实验室是能从笔记重建的东西。你能从记忆里重建这个吗?大概不能。

在 agent 触碰文件之前先写一份回执。从命令填充,不要凭感觉。

# proposal: capture only facts the shell can prove
mkdir -p env artifacts
{
  echo "git_head=$(git rev-parse HEAD 2>/dev/null || echo none)"
  echo "python=$(python3 --version 2>/dev/null || echo none)"
  echo "cwd=$(pwd)"
  echo "fixture_hash=$(sha256sum fixtures/* 2>/dev/null | sha256sum)"
  echo "ran_at_utc=$(date -u +%Y-%m-%dT%H:%M:%SZ)"
} > env/receipt.txt
cat env/receipt.txt

如果免费服务器之后消失了,回执还在说话。浏览器标签页不会。这关乎的是打分,不是推广某个分支。

Myth 4: 一份自信的 transcript 就是一套测试套件

说法:模型说代码看起来不错。绿牌足够了。

你实际持有的证据:一次 review。Review 有帮助。但它们不是套件。

修正后的模型:当你不在这间屋子里的时候,套件依然会失败。如果必须有人盯着看,那它就是一个 demo。

这里是一个未执行的 pytest 草稿。只有在加入真实 fixtures 之后才能复制它。

# eval_smoke.py — proposal, not a vendor score
from pathlib import Path
import json
import subprocess

FIXTURE = Path("fixtures/app.py")
RECEIPT = Path("env/receipt.json")
PYTEST = ["python3", "-m", "pytest", "-q", "tests/"]

def test_fixture_is_frozen():
    assert FIXTURE.is_file(), "freeze a fixture before the agent runs"

def test_receipt_has_pins():
    data = json.loads(RECEIPT.read_text())
    assert data.get("git_head"), "pin the commit under test"
    assert data.get("fixture_hash"), "pin the fixture bytes"

def test_assertions_exit_zero():
    result = subprocess.run(PYTEST, capture_output=True, text=True)
    Path("artifacts/pytest.out").write_text(result.stdout + result.stderr)
    assert result.returncode == 0, result.stdout[-2000:]

注意其中的缺席。没有 spinner 截图。没有针对聊天内容的 LGTM 匹配。没有假装先知的模型标识符。

如果 pytest 从未运行过,你欣赏的是一个 patch。你没有评估它。你会为鼓掌而合并吗?

Myth 5: 重复发送同一个 prompt 就是回归测试

说法:我又发了一遍 prompt。看起来还是没问题。回归已经覆盖了。

你实际持有的证据:来自一个移动系统的又一个样本。工具变了。上下文变了。你从未设置过 seed。

修正后的模型:回归意味着固定的 artifacts 加上确定性检查。同样的 vibe 不是套件。

把这五样东西固定下来,否则就把工作叫做探索:

  • Fixture 文件及其哈希
  • Assertion 命令及预期退出码
  • 被测的 git commit
  • 一条书面备注,说明模型不是先知
# proposal: fail the job when pins are missing
set -euo pipefail
test -f tests/test_eval.py
test -n "$(git rev-parse HEAD)"
test -f requirements.txt -o -f poetry.lock -o -f package-lock.json
test -f env/receipt.txt

探索是健康的。把探索命名为回归套件才是 myth。回放字节,不是回忆。

一个产生 artifacts 的一小时工作流

用任何草稿机。免费服务器可以接受,用来起草。不要把那份草稿当作实验室报告发布。

  1. 冻结一个 fixture 文件并哈希它
  2. 写三个 assertions:存在性、退出码、一个输出检查
  3. 先捕获环境回执
  4. 让 agent 编辑一个工作副本,永远不是 fixture
  5. 无人介入地运行 assertions
  6. 存储 stdout、退出码、回执和 git diff
  7. 分享这四个 artifacts。把聊天记录留在附录里

想要更小的循环?哈希、断言、回执、diff。就停在那里。

# proposal: one working-copy rule
cp fixtures/app.py work/app.py
# agent may edit work/app.py only
sha256sum fixtures/app.py > env/fixture.sha256
git diff -- work/app.py > artifacts/work.diff
python3 -m pytest -q tests/
echo $? > artifacts/pytest.exit

把右侧那列读两遍。大多数 Slack 截图都死在那里。

这个工作流不给模型排名。它不证明生产延迟。它不替代安全审查。

免费模型访问可以节流或消失。我没有声称配额、硬件、时长或正常运行时间。我没有发布我没有测量过的数字。

这个工具链是一个提案。在信任它之前填入真实的哈希。短句让我没法夹带额外的声明。

如果你需要认证评估,不要用这个。如果你用于安全关键版本,不要用这个。如果你的团队已经有了一个固定的 eval 集群,也不要用这个。

如果你想要一个模型名字目录,跳过它。我不会编造它们。如果你只是需要一张 Slack 截图,跳过吧。这个过程会感觉很慢。那种慢是重点。

我会接受什么作为 eval

我会接受 fixtures、assertions 和回执。我不接受 vibes。

如果在免费模型机器上起草能帮助你启动,就在上面起草那个循环。把 artifacts 导出来。在你控制的机器上回放同样的 assertions。

如果你想要一个健全性检查,发送回执 schema。不要发送聊天记录。

For further actions, you may consider blocking this person and/or reporting abuse

Original source

本文由 AI 翻译整理自 dev.to · AI,原文版权归原作者所有。

阅读英文原文
上一篇
阿里开源 Qwen-Image-2.1:7B 参数兼顾透明图生成与多图编辑
下一篇
AI重构前的副作用冻结术:先录 Ledger 再动格式