跳到主要内容
知仓学习社ZHICANG

trace-to-training-data

Convert evaluation traces and production logs into SFT examples and preference pairs. Use when graded traces or failure examples exist and need to b…

不碰外部(只输出文字)无严重或高危命中wshobson/agents

它会碰到什么

扫了多少2 个文本文件,14 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Trace To Training Data

This skill assumes eval-harness-first

already graded the traces being

converted here — goldens, graders,

and runs/<run-id>/results.json

all exist before conversion

starts. This is the flywheel edge

that skill names in its own flow:

"the same labeled traces become

the training set." Conversion

happens here; grading already

happened upstream.

Input: graded traces —

eval/goldens.jsonl plus

runs/<run-id>/results.json, each

row carrying a task_id, a

verdict from the grader, and a

reward when the task supports a

scalar score (judge score,

execution partial-credit, or an

RLVR verifier):

{"task_id": "t-042", "trace_id": "t-042-a3",
 "messages": [{"role": "user", "content": "..."}],
 "verdict": "pass", "reward": 0.91,
 "grader": "exact_match"}

Output format: rows shaped

exactly like dataset-curation's

Format Selection table — SFT

messages rows or DPO

prompt/chosen/rejected

pairs — so this skill's output is

that skill's input with no

reshaping step in between.

The Principle

The eval harness already did the

labeling work: every trace in

results.json carries a verdict,

and often a reward, before this

skill ever touches it. Converting

a graded trace into a training

row is mechanical — pick a shape

from dataset-curation's table,

map fields, write JSONL.

**Curation is the work that

remains** — which traces clear a

quality bar, which pairs are

informative, and which rows must

never enter the training set at

all.

Treat any conversion step that

requires re-judging a trace as a

sign the harness is missing a

grader, not a gap this skill

should paper over. A trace with

no verdict or reward isn't

convertible yet — route it back

to eval-harness-first first,

don't hand-label it here to

unblock conversion.

SFT From Traces

  • **Keep the top-reward fraction

of successful trajectories**,

not every passing one. Rank

passing traces by reward and

take a fraction (the

Agent-lightning pattern) rather

than every trace that merely

cleared the pass bar — a trace

that barely passed is a weaker

SFT signal than one that scored

well above threshold.

  • **Expert-corrected failures

become gold SFT examples

directly** (the Langfuse

pattern) — when a human edits a

failing trace's output into a

correct one, that correction

needs no reward threshold; a

human already validated it.

Route corrections straight into

the SFT set.

  • **Step-level masking beats

whole-trajectory discard for

multi-step traces.** When only

some steps in a multi-step

trajectory are bad, mask the

loss on the bad steps and keep

the good ones, rather than

discarding the whole trajectory.

SRFT reports 32.2% vs. 30.9% on

SWE-bench for step-level critic

masking over trajectory discard

— a real, if modest, gap from

the finer-grained cut.

Preference Pairs From Traces

  • **Build pairs from

passing-vs-failing trajectories

on the SAME task**, never from

unrelated best- and

worst-scoring traces pulled

across different tasks —

cross-task pairs teach the

model to prefer one task over

another, not one response over

another.

  • **Select the rejected member at

μ−2σ of the reward distribution

for that task, never the

absolute minimum.**

preference-optimization's

Pair Construction section owns

the full selection formula;

this skill supplies the graded

trajectories it consumes.

  • **Judge-scored delta selection

cuts pair volume without

cutting signal.** Score each

candidate pair by

chosen-minus-rejected judge

delta and keep only the

highest-delta subset — the top

5k of a 16.5k candidate pool

matched the full pool's

downstream result. Build the

full candidate set first, then

filter by delta; don't cap

generation at 5k up front.

Hygiene

  • **Scan for secrets and PII before any row ships,

and redact what's found.** Traces sourced from

production logs can carry credentials, API keys,

tokens, or customer data — run a secret/PII scan

over every SFT and DPO row and redact matches;

conversion fails closed (the row is dropped, not

shipped with the raw content) if sensitive fields

remain after redaction. Never commit secrets.

  • **Eval goldens must never leak

into training data.** Hold

every eval/goldens.jsonl ID

out of every converted SFT and

DPO set — a trace that also

appears as a golden trains on

the exact item the checkpoint

gets graded against later,

silently inflating every

subsequent eval run.

  • **Dedup against the training

set**, not just within the

newly converted rows —

exact-match or

embedding-similarity, matching

dataset-curation's dedup

method field, run against

whatever training data already

exists before this batch merges

in.

  • **Provenance goes into the

dataset card.** Every converted

row must trace back to its

source run_id and trace_id

dataset-curation's

Provenance field checks for

exactly this link back to

trace-to-training-data

output; a row with no traceable

source isn't ready to merge.

Related Skills

  • eval-harness-first — produces

the graded traces this skill

converts; a trace with no

verdict or reward isn't

convertible yet, route it back

there before conversion.

  • dataset-curation — owns the

target formats and the dataset

card this skill's provenance

data feeds; converted rows must

match its Format Selection

table field names exactly, not

an approximation of them.

  • preference-optimization

consumes the DPO pairs this

skill builds and owns the full

μ−2σ rejection-selection

formula referenced above.

Worked JSONL-to-JSONL conversions

— graded trace to SFT row, trace

pair to DPO pair, correction to

SFT row, the rejection-sampling

loop, and the goldens-holdout

check — live in

references/conversion-recipes.md.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。