跳到正文
DEV Community· RanThis·· 4 小時前AI 評分68

GPT-6.1 Terra、GPT-6 Astra 與 Claude Fable 5.1:雜亂銷售表測試

GPT-6.1 Terra vs GPT-6 Astra vs Claude Fable 5.1: Messy Sales Sheet Test

AI 導讀

RanThis 以 40 行銷售表比較 GPT-6.1 Terra、GPT-6 Astra 和 Claude Fable 5.1;Terra high 三次均得 10/10,與 Astra 同分,單次成本為 $0.0062,Astra 則為 $0.061。

正文

Originally published on RanThis.

Cover: AI-generated illustration.

OpenAI released GPT-6.1 Terra on 26 October as its cheaper, faster model for everyday work: $1 per million input tokens and $5 per million output, a tenth of GPT-6 Astra's list price. Cheap only helps if the answers hold up, so the day after launch we gave Terra, GPT-6 Astra and Claude Fable 5.1 the same messy sales sheet: 40 rows, six planted problems, three branch totals that have to be right to the dollar. On "high" effort Terra matched Astra's perfect score in all three runs at about a tenth of the cost. The more useful finding was elsewhere: one ambiguous cell changed a branch total by $10,800 from one run to the next, on the same model with the same settings.

Measured on 27 Oct 2026 through the OpenAI and Anthropic APIs, from a Python script. The data is invented; the task, answer key and scoring code were committed before any model was called, and the raw answers are kept with this article's source files.

Key results

  • Terra on "high" scored 10/10 in all three runs, the same as GPT-6 Astra, in a median 12.9 s vs 16.3 s, for $0.0062 vs $0.061 per run.
  • Terra on its default setting ("medium") was faster and cheaper still ($0.0053, 11 s) but scored 10, 9, 9. In two of three runs it dropped one row instead of counting it.
  • Claude Fable 5.1 scored 9, 10, 10 at $0.10 per run, the most expensive of the five setups.
  • "Max" effort scored 10/10 three times but took 39–106 s and 3,100–9,400 output tokens per run, 4× the cost of "high" for the same score.
  • Every model found all six planted problems in every run, and none flagged a clean row. Every lost point came from the same cell: row 18, a price written "1.2k".
  • What we did not test: Terra's headline feature, computer use (operating apps on screen), or the ChatGPT apps. This is one structured task through the API, three runs per setup.

Setup

  • Task: a CSV of 40 invented Q3 sales rows for an office furniture company with branches in Boston, Chicago and San Francisco, prices in US dollars. Every model got the same prompt: total revenue per branch, the top branch, and every abnormal row by number, returned as JSON.
  • Rules in the prompt: exclude rows that look like bad data; normalize rows that are only written differently (an abbreviation, another name for the same branch or price) and count them; count duplicates once.
  • Planted problems: a duplicated order (rows 13 and 39, both must be listed), the date 2026-09-31, a unit price written "1.2k", the branch written "SF", and a quantity of −2.
  • Scoring (code, not AI): 1 point per branch total correct to the dollar, 1 for the top branch, 1 per planted problem found, minus 1 for each clean row flagged. Maximum 10.
  • Models: gpt-6.1-terra at reasoning effort medium (the model's default), high and max; gpt-6-astra at high; claude-fable-5-1 at its default. Three runs each, interleaved, no streaming.
  • Cost: tokens × list price ($1/$5 per million for Terra, $10/$50 for Astra and Fable 5.1), output including reasoning tokens. We did not subtract OpenAI's cached-input discount, so the OpenAI figures are slightly high. All 15 runs together cost $0.61.

The 40-row test sheet with the six planted rows highlighted

The results

Model (effort) Score, 3 runs Median time Median output tokens Median cost per run
GPT-6.1 Terra (medium, default) 10, 9, 9 11.1 s 824 $0.0053
GPT-6.1 Terra (high) 10, 10, 10 12.9 s 995 $0.0062
GPT-6.1 Terra (max) 10, 10, 10 55.5 s 4,836 $0.025
GPT-6 Astra (high) 10, 10, 10 16.3 s 973 $0.061
Claude Fable 5.1 (default) 9, 10, 10 19.1 s 1,699 $0.101

Terminal output listing all 15 runs with score, seconds, cost and what happened to row 18

One cell, two different totals

Row 18 sold 9 filing cabinets at "1.2k", that is $1,200. Every other filing cabinet in the sheet sold at $3,200. Our answer key treats "1.2k" as a price written differently, so it should be normalized and counted. But a price that low can also look like a typo, and the sheet invites that reading: the shorthand and the odd price sit in the same cell.

Astra and Terra on high and max counted it in every run. Terra on default counted it once and dropped it twice; Fable 5.1 dropped it once and counted it twice. Same prompt, same data, same settings.

What the models wrote about the row is the part to watch. When Terra (default) counted it, its note said: "The unit price was normalized from 1.2k to 1200." When it dropped it, the note said only: "The price of 1.2k means $1,200, which differs from the $3,200 price of the other filing cabinets." That note never says the row was left out of the total; you find out only by checking the Chicago number. Fable's note in the run where it dropped the row was explicit: the price "does not match the Filing cabinet price of 3200 used everywhere else, so the row was excluded as bad data."

Earlier that day we had run the same 40 rows and six traps as a Vietnamese-language sheet (Vietnamese labels, prices and shorthand); the English sheet above was derived from it. The pattern flipped: there, Terra on default counted row 18 in all three runs and Terra on high dropped it in all three. So the effort setting is not what decides this row; it varies run to run. Only GPT-6 Astra and Terra on max counted it in all six runs across the two sheets.

What this means if you clean sheets with AI

  1. Ask what happened to each flagged row, not only why it is flagged. "Counted after fixing" and "excluded" should be separate answers. In our runs, a note about a price difference sometimes meant the row was dropped and sometimes did not.
  2. Write the rule for your edge case into the prompt. "A price written like 1.2k means 1,200; count it" removes the coin flip. The models followed the rules they were given; the gap was in a rule we left open.
  3. Run it twice, or check one total by hand. A single run can't show you the variance; two runs that disagree on a total tell you where to look.
  4. Don't jump to maximum effort. Terra on high matched max on accuracy here at a quarter of the cost and under a quarter of the time.

What worked

  • JSON output parsed on every run of every model; no run needed a retry for format.
  • All five setups caught the duplicate, the impossible date, the "SF" branch and the negative quantity in every run.
  • Pinning the task before calling any model kept the comparison fair: each model got byte-identical input.

What didn't work

  • Three runs per setup is enough to show that row 18 flips, not to measure how often. Terra on default dropped it in 2 of 3 runs here and 0 of 3 on the Vietnamese-language sheet.
  • One API request (Terra on max, run 3) hung for over nine minutes on our side; we stopped it and re-ran that run. The timing in the table is from the completed re-run.
  • One task cannot rank these models in general. OpenAI's launch claims for Terra (computer use, scores on Agents' Last Exam, a benchmark of agents using professional software) are theirs; we did not measure them.

Our verdict

For structured office work like checking and totalling a sales sheet, GPT-6.1 Terra on "high" did everything GPT-6 Astra did in our test, a little faster and at about a tenth of the price. The default setting is cheaper again but less steady on judgment calls. Whichever model you use, make it say whether each flagged row was counted or excluded, and spell out how to treat shorthand like "1.2k": on our sheet, that one cell was the difference between two Chicago totals $10,800 apart.

How this was made: an AI (Claude) helped write this article; the RanThis editor ran the test script, checked every number against the raw results and checked facts against the linked sources.

來源:DEV Community · dev.to