transform
ThinkThen ships ten jq programs that read saved runs. thinkthen transform prints them. It never runs one. jq does.
The catalog
The ten transforms, in name order.
thinkthen transform listOutput
band calibration compare cost counts monitor score sweep triage trials
exit 0
| Transform | What it answers |
|---|---|
band | How many answers a band settles, and how many of those are right. |
calibration | Whether answers given at a probability of 0.8 are right about eight times in ten. |
compare | What changed between two runs, and the likely cause. |
cost | The input tokens a run spent, and what they cost at your prices. |
counts | How many answers were yes, no, and not sure. |
monitor | How often each action of a policy ran, was reviewed, and was changed. |
score | How many answers are right at a cut, against your labels. |
sweep | What every cut would have done. |
triage | A policy: whether a support ticket is drafted, blocked, or reviewed, and why. |
trials | One row per record from repeated runs, before another transform reads them. |
band, score, sweep and trials read a band as the commands do. A probability exactly at the band's low edge is not sure. The Reference gives the rule.
Run one
thinkthen transform show NAME prints one transform exactly as shipped. Save it, then hand it to jq -f with a saved run. Each transform's first lines say what it reads and what arguments it takes. An unknown name prints nothing and exits 2.
counts reads a saved run and counts its answers. jq runs it. thinkthen does not.
thinkthen transform show counts > counts.jq
jq -n -f counts.jq shown.jsonl |
jq '{rows, yes, no, unsure}'Output
{
"rows": 10,
"yes": 9,
"no": 1,
"unsure": 0
}exit 0
On GitHub: github.com/botassembly/thinkthen