GOCLAWAGENT EVALUATION
GoClaw 首页

33. Inspect EvalLog、Trace、Hook、EvalSet 与 Extension

Inspect AI · 4~6 小时

学习目标

  1. 把 Inspect Run 变成可观测实验
  2. 理解 Hooks 的平台集成价值
  3. 设计 EvalSet 与失败恢复

前置知识

本章产物: 创建一个 Hook,将 Sample 结果输出为平台事件。

33.1 EvalLog

Inspect 每次 Eval 都会产生日志,包含任务、Sample、消息、事件、分数等。

这非常适合做:

Debug
Audit
Offline Re-score
Experiment Artifact

33.2 不要让 Go 平台依赖内部二进制格式

如果上层平台是 Go:

Inspect .eval
   ↓
Inspect API / CLI / Hook
   ↓
Normalized JSON/Event
   ↓
Go Platform

不要自己 reverse-engineer 日志格式。

33.3 Hooks

Inspect Hooks 可以在:

触发生命周期代码。

因此可以做:

Inspect
 ↓
GoclawHook
 ↓
EvalRunStarted
SampleFinished
ScoreProduced
EvalCompleted

33.4 EvalSet

EvalSet 适合:

上层 Experiment 可以启动 EvalSet,并保存:

experiment_id ↔ eval_set_id

33.5 Extension

建议建立:

inspect-goclaw

扩展:

GoclawAgent
GoclawScorer
GoclawSandbox
GoclawHook

不修改 Inspect Core。

33.6 Trace 规范化

上层平台统一事件模型:

{
  "run_id": "...",
  "sample_id": "...",
  "type": "tool_call",
  "ts": "...",
  "payload": {}
}

这样未来即使增加其他 Eval Runtime,也不破坏平台数据模型。

33.7 验收问题


本章依据

  1. Inspect AI — Eval Logs
  2. Inspect AI — Hooks
  3. Inspect AI — Extensions