Skip to research note
CERRA
Research note

Choosing an AI
assistant for CERRA

Task success, response time, GPU memory, and the limits of a transportation assistant benchmark.

An assistant needs to answer from the source data, make only the requested map changes, and respond promptly. This note brings together CERRA’s case study of 14 model options to explain what the evidence supports—and how it informs the model you use.

Working paper · 2 October 2026

Beyond Answer Accuracy

A CERRA Case Study of Language-Model Assistance in Transportation Analytics. This October 2 draft covers the earlier local comparisons, a contemporaneous four-model GPT comparison including GPT‑5.5 and a broader benchmark design. Later local experiments are reported on this page and are not included in this PDF.

01 / Model choice

A practical balance of quality and waiting time

Default local model

Gemma 4 12B Q4_K_M

60/72 strict successes (83.3%), with a 3.21 s median reply in the October 9 paired Gemma evaluation. It remains the balanced default for interactive work.

26B at 8-bit runs, with a tradeoff: Gemma 4 26B A4B Q8_0 passed 57/72 attempts (79.2%), with an 8.16 s median reply and partial CPU placement. This small paired test does not establish a quality advantage for either configuration. The 26B package is evaluated here but has not been added to the production selector.

The local choices remain Gemma 4 12B and Qwen3.5 9B. In their earlier September 29 paired campaign, Qwen3.5 passed 59/72 attempts (81.9%), with a 2.95 s median reply; Gemma passed 60/72 with a 3.18 s median. That small observed gap does not establish superiority or equivalence. Retired local choices remain in the historical results; a saved retired choice returns to Gemma.

Latest Qwen measurement: Qwen3.8 27B Q4_K_M with full GPU residency retained 63/72 strict successes with a 4.25 s median reply on October 7. One benchmark model ran at a time while existing GPU workloads remained active. The older 14.50 s median below describes the separate September 29 run with CPU offload.

GPT‑6.1 Sol remains hidden from production choices. A new four-model comparison including GPT‑5.5 addresses the limits of comparing earlier runs with different settings; it does not establish a general model ranking. GPT choices use OpenAI’s API and send your question and relevant source evidence to that service. Gemma and Qwen run on CERRA’s local model service and release their model allocation after each request. You can change models in the assistant.

02 / Study design

Evaluate the whole assistant workflow

The study covers Maryland crash-data questions, Baltimore High Injury Network (HIN) source queries, and changes to live map filters. Most numerical facts are calculated by CERRA after the model selects a query plan. A correct count therefore measures the combined application workflow, not the model’s arithmetic in isolation.

  1. Keep the tasks fixed. Each model answers 24 primary tasks three times, giving 72 scored attempts. Four reference controls add 12 attempts per model and are excluded from the primary score.
  2. Require the intended outcome. Strict success requires the right operation, source-grounded evidence, model identity, relevant caveats and exact requested UI effect. Unrequested filter changes fail.
  3. Test actions in the browser. Nine tasks per model use the real Maryland UI; the other 19 use authenticated requests to the same application endpoints. There are 21 scored browser attempts, or 27 including controls.
  4. Retain failures and uncertainty. No failed attempt is omitted or externally retried. Intervals resample 24 task clusters while keeping each task’s three repetitions together. HIN narratives receive AI-assisted, identity-blind rubric review, not human expert validation.

Reply timing includes planning, source-data lookup, internal validation retries and model loading where applicable. It stops before the completed UI render. One interrupted Sol request in the earlier September 30 two-model comparison has no completed application timing; it remains a primary failure and is excluded only from timing summaries, with the observed count stated. P90 describes the slower end of observed replies; none of these timings is a response-time guarantee.

03 / Results

Read quality, latency and memory together

The table contains 14 model identifiers and 26 configuration–campaign observations across 11 campaigns. Repeated models retain separate rows because settings or execution conditions can differ. Rows within the historical production group are ordered by observed strict score, not by a claim of statistically established superiority.

Task success and waiting time

Each point is one model in one campaign. The horizontal axis measures strict end-to-end task success, including the requested application action; it is not isolated answer accuracy. The vertical axis is median application request time, including measured failures. Colors identify models or local families; shapes and observation codes identify campaigns. The historical overview supplies context across different dates, reasoning settings, hardware and execution paths—not a single controlled ranking.

Further right = more tasks passed. Lower = shorter waits. Choose a point or its label for the model’s settings. The overview uses a logarithmic time axis; select a campaign for a linear view.

Strict task success versus median request latency26 configuration and campaign observations. Horizontal and vertical lines show separate 95 percent intervals for success and median latency; they are not a joint confidence region. Historical campaigns differ in settings and runtime. Tab through points to inspect details.20%30%40%50%60%70%80%90%100%0.5124816Strict task success (%) →Median request latency (seconds; log scale)Separate task-cluster intervalsA1 · Qwen3 8B · Sep 18 · production localA2 · Llama 3.1 8B · Sep 18 · production localA3 · Gemma 3 4B · Sep 18 · production localB1 · GPT-4.1 mini · Sep 23 · production APIB2 · GPT-5.4 mini · Sep 23 · production APIB3 · GPT-5.4 · Sep 23 · production APIC1 · Qwen3 14B · Sep 24 · production localC2 · Gemma 4 12B · Sep 24 · production localD1 · Qwen3 14B · Sep 29 · paired local (Qwen)D2 · Qwen3.8 27B Q4_K_M · Sep 29 · paired local (Qwen)E1 · GPT-6.1 Sol · Sep 29 · Sol API extensionF1 · Gemma 4 12B · Sep 29 · paired local (lighter)F2 · Qwen3.5 9B Q4_K_M · Sep 29 · paired local (lighter)G1 · GPT-5.4 · Sep 30 · matched API pairG2 · GPT-6.1 Sol · Sep 30 · matched API pairH1 · GPT-5.4 · Sep 30 · matched API tripletH2 · GPT-6 Astra · Sep 30 · matched API tripletH3 · GPT-6.1 Sol · Sep 30 · matched API tripletI1 · GPT-5.4 · Oct 2 · matched API quartetI2 · GPT-5.5 · Oct 2 · matched API quartetI3 · GPT-6 Astra · Oct 2 · matched API quartetI4 · GPT-6.1 Sol · Oct 2 · matched API quartetJ1 · Qwen3 14B Q4_K_M · Oct 7 · Qwen full GPU residencyJ2 · Qwen3.8 27B Q4_K_M · Oct 7 · Qwen full GPU residencyK1 · Gemma 4 12B Q4_K_M · Oct 9 · Gemma Q4 / Q8 pairK2 · Gemma 4 26B A4B Q8_0 · Oct 9 · Gemma Q4 / Q8 pairK2 · Gemma 4 26B A4B Q8_0

K2 · Gemma 4 26B A4B Q8_0Oct 9 · Gemma Q4 / Q8 pair

Strict success
57/72 · 79.2%95% interval 62.5%–95.8%
Median request
8.16 s95% interval 7.90 s–8.82 s · n=72
Reasoning / thinking
Thinking offthink=false; hybrid GPU/CPU model placement; shared RTX 5090.
Recorded budget
8,192 context; up to 1,000 generated tokens/callP90 request: 15.94 s; not the plotted interval

Horizontal and vertical bars are separate marginal 95% task-cluster intervals, not a joint confidence ellipse. The original success intervals are unchanged. Median-latency intervals for the earlier 18 observations were added post hoc, using 10,000 draws of 24 task clusters, seed 20261001. The four October 2 observations use the same task-cluster method specified before collection, seed 20261002. Both retain all three attempts per sampled task and use common draws within a campaign. The earlier Sol pair (G2) has 71 measured durations; its missing duration is not imputed and the attempt remains a scoring failure. P90 is a different descriptive statistic. Bar overlap does not replace the paired comparisons below.

The October 7 Qwen and October 9 Gemma median intervals were added post hoc on October 9, using 10,000 shared draws of 24 task clusters within each campaign, retaining all three repetitions and measured failures, seed 20261009. The original strict-success intervals and historical observations remain unchanged.

Read the reasoning setting alongside the score. The latest four GPT models all explicitly requested medium, with an 8,192-token combined reasoning/visible-output cap per call. Earlier API rows without an effort parameter are labeled “Not explicitly set”; no default is reconstructed. Local “Thinking off” reports the recorded switch, not an equivalent hosted effort level. No audited run explicitly requested Ultra. Matching requested effort and token caps still does not equalize internal compute.

Scroll the table to see reasoning settings, reply times and GPU memory →

Table 1. Strict success includes every primary attempt; timing uses retained measurements, including failed requests
Model / test GPU2026 runReasoning / thinking · token capStrict success95% task intervalMedianP90Recorded GPU memory
Production-site path · September 18–24
B3 GPT-5.4Provider-hosted APINot explicitly set300/350 planner; 700 narration
91.7%66/72
79.2%–100.0%1.27 s2.94 sNot exposedProvider GPU / VRAM unavailable
B2 GPT-5.4 miniProvider-hosted APINot explicitly set300/350 planner; 700 narration
80.6%58/72
65.3%–93.1%1.12 s2.76 sNot exposedProvider GPU / VRAM unavailable
C2 Gemma 4 12BRTX 5090 · 32 GB capacityBalanced defaultThinking offPer call; capped at 1,000 generated tokens
80.6%58/72
63.9%–95.8%3.51 s6.71 s6.86 GiBCUDA weights onlyAll layers on GPU
B1 GPT-4.1 miniProvider-hosted APINot explicitly set300/350 planner; 700 narration
79.2%57/72
62.5%–93.1%1.20 s2.59 sNot exposedProvider GPU / VRAM unavailable
A1 Qwen3 8BRTX 5090 · 32 GB capacityThinking offPer call; capped at 1,000 generated tokens
70.8%51/72
52.8%–87.5%1.06 s2.17 sNot recordedNo model-specific telemetry
C1 Qwen3 14BRTX 5090 · 32 GB capacityThinking offPer call; capped at 1,000 generated tokens
70.8%51/72
54.2%–87.5%2.93 s5.56 s8.23 GiBCUDA weights onlyAll layers on GPU
A2 Llama 3.1 8BRTX 5090 · 32 GB capacityNot set (local)Per call; capped at 1,000 generated tokens
55.6%40/72
36.1%–75.0%2.00 s3.77 s4.30 GiBCUDA weights onlyAll layers on GPU
A3 Gemma 3 4BRTX 5090 · 32 GB capacityNot set (local)Per call; capped at 1,000 generated tokens
47.2%34/72
27.8%–66.7%2.40 s4.18 s≈3.1 GiBCUDA weights onlyRounded log value; all layers on GPU
Paired local path · September 29
D1 Qwen3 14BRTX 5090 · 32 GB capacityThinking offPer call; capped at 1,000 generated tokens
68.1%49/72
50.0%–84.7%3.77 s7.20 s7.42 GiBCUDA weights only37/41 layers on GPU; CPU offload
D2 Qwen3.8 27BRTX 5090 · 32 GB capacityThinking offPer call; capped at 1,000 generated tokens
87.5%63/72
75.0%–100.0%14.50 s29.81 s6.82–7.22 GiBCUDA weights only29–31/66 layers on GPU; CPU offload
Frozen local application / OpenAI API · September 29
E1 GPT-6.1 SolProvider-hosted APIMedium8,192 combined reasoning + visible output
88.9%64/72
76.4%–100.0%2.15 s4.88 sNot exposedProvider GPU / VRAM unavailable
Lighter-model paired local path · September 29
F1 Gemma 4 12BRTX 5090 · 32 GB capacityBalanced defaultThinking offPer call; capped at 1,000 generated tokens
83.3%60/72
66.7%–95.8%3.18 s6.35 s7.80 GiBSampled residency99/99 inference calls sampled
F2 Qwen3.5 9BRTX 5090 · 32 GB capacityThinking offPer call; capped at 1,000 generated tokens
81.9%59/72
66.7%–95.8%2.95 s6.19 s5.34 GiBSampled residency77/93 inference calls sampled
Earlier matched GPT pair · same local application / API settings · September 30
G1 GPT-5.4Provider-hosted APIMedium8,192 combined reasoning + visible output
90.3%65/72
77.8%–100.0%3.51 s72 recorded timings8.58 sNot exposedProvider GPU / VRAM unavailable
G2 GPT-6.1 SolProvider-hosted APIMedium8,192 combined reasoning + visible output
87.5%63/72
73.6%–98.6%2.83 s71 recorded timings5.97 sNot exposedProvider GPU / VRAM unavailable
Earlier three-model GPT comparison · same local application / API settings · September 30
H2 GPT-6 AstraProvider-hosted APIMedium8,192 combined reasoning + visible output
87.5%63/72
75.0%–100.0%2.49 s72 recorded timings4.92 sNot exposedProvider GPU / VRAM unavailable
H1 GPT-5.4Provider-hosted APIMedium8,192 combined reasoning + visible output
88.9%64/72
76.4%–98.6%3.82 s72 recorded timings11.16 sNot exposedProvider GPU / VRAM unavailable
H3 GPT-6.1 SolProvider-hosted APIMedium8,192 combined reasoning + visible output
88.9%64/72
75.0%–100.0%3.19 s72 recorded timings5.91 sNot exposedProvider GPU / VRAM unavailable
Four-model GPT comparison · same local application / API settings · October 2
I1 GPT-5.4Provider-hosted APIMedium8,192 combined reasoning + visible output
87.5%63/72
75.0%–100.0%3.91 s72 recorded timings11.35 sNot exposedProvider GPU / VRAM unavailable
I2 GPT-5.5Provider-hosted APIMedium8,192 combined reasoning + visible output
94.4%68/72
84.7%–100.0%3.35 s72 recorded timings9.02 sNot exposedProvider GPU / VRAM unavailable
I3 GPT-6 AstraProvider-hosted APIMedium8,192 combined reasoning + visible output
87.5%63/72
75.0%–100.0%2.54 s72 recorded timings5.06 sNot exposedProvider GPU / VRAM unavailable
I4 GPT-6.1 SolProvider-hosted APIMedium8,192 combined reasoning + visible output
90.3%65/72
77.8%–100.0%3.24 s72 recorded timings6.81 sNot exposedProvider GPU / VRAM unavailable
Qwen paired local path · full model GPU residency, shared device · October 7
J1 Qwen3 14B Q4_K_MRTX 5090 · 32 GB capacityThinking off8,192 context; up to 1,000 generated tokens/call
70.8%51/72
54.2%–87.5%2.49 s4.76 s9.75 GiBSampled full GPU residencyOne benchmark model at a time; shared GPU
J2 Qwen3.8 27B Q4_K_MRTX 5090 · 32 GB capacityThinking off8,192 context; up to 1,000 generated tokens/call
87.5%63/72
75.0%–100.0%4.25 s8.41 s15.88 GiBSampled full GPU residencyOne benchmark model at a time; shared GPU
Gemma paired local path · 12B Q4_K_M and 26B Q8_0 with hybrid GPU/CPU placement · October 9
K1 Gemma 4 12B Q4_K_MRTX 5090 · 32 GB capacityBalanced defaultThinking off8,192 context; up to 1,000 generated tokens/call
83.3%60/72
66.7%–95.8%3.21 s6.49 s7.80 GiBSampled model allocation in VRAM99/99 calls covered; CPU buffers not excluded
K2 Gemma 4 26B A4B Q8_0RTX 5090 · 32 GB capacityThinking off8,192 context; up to 1,000 generated tokens/call
79.2%57/72
62.5%–95.8%8.16 s15.94 s24.46 GiBSampled model allocation in VRAM93/93 calls covered; 2.36 GiB non-VRAM; hybrid GPU/CPU

The tasks and strict rubric are shared; dates, application versions and runtimes vary. The local-application campaigns from September 29 onward exclude the public-site network path; API campaigns include the request to OpenAI. Cross-run timing is contextual, and scores are not pooled. The intervals describe uncertainty within this small task suite. The earlier two-model Sol timing row has 71 measurements because one interrupted outcome was not retained. The September 30 three-model campaign retained all outcomes and timings. The October 2 campaign is reported separately below.

What the GPU numbers measure

Local tests used a shared NVIDIA RTX 5090 with 32 GB nominal VRAM (32,607 MiB reported in the run metadata), not an RTX 6000. Card capacity is different from the memory assigned to a model. Values above use GiB (1 GiB = 1,024 MiB).

CUDA weights are model-weight buffers recovered from the inference service’s timestamped logs during the original run. They exclude KV cache, compute buffers, separately logged vision allocations and other processes. Sampled residency is Ollama’s reported model allocation during inference calls. These are different measures; neither is a continuously measured peak or a minimum hardware requirement. Model download sizes are not used.

Qwen3 8B has no retained model-specific memory measurement for its scored run. For API models, provider-side GPUs and memory are not exposed by the recorded responses. Later GPU cleanup and smoke checks are not substituted for historical benchmark measurements. Measurement coverage and allocation details ↓

Gemma 4 12B and Qwen3.8 each completed all 15 supported filter changes with no observed UI-state violations in their paired campaigns. The October 9 Gemma 26B Q8_0 run also passed all 15 supported changes, but produced three UI-state violations in its 21 scored browser attempts. In the September 29 API extension, GPT‑6.1 Sol completed 15/15 supported filter changes, with 0/21 observed UI-state violations. These checks complement answer accuracy.

GPT‑5.5 in a four-model comparison

GPT‑5.5, GPT‑5.4, GPT‑6 Astra and GPT‑6.1 Sol were tested together on October 2 using the same frozen application, source data, prompts and 28 tasks. Each model completed three attempts per task: 72 primary attempts and 12 separate controls. Historical observations remain separate.

All four requested Medium reasoning, an 8,192-token combined reasoning/output budget and a 60-second model-call timeout through the US Responses API. No temperature was set. The provider returned gpt-5.5-2026-04-23 for GPT‑5.5 and gpt-5.4-2026-03-05 for GPT‑5.4; Astra and Sol returned their aliases. These settings match at the API boundary, while provider-internal compute and hardware remain unknown.

The four models ran adjacently for each task and repetition. A balanced schedule gives each model equal exposure to every position across the primary tasks and, separately, the controls. With three repetitions, each model visits three of four positions per task. Identity checks were registered and tested before collection; scoring requirements and source oracles were retained.

Within-campaign differences in strict task success
ComparisonDifference95% paired task-cluster interval
GPT-5.4 minus GPT-5.5-6.94 points-19.44 to +2.78 points
GPT-5.4 minus GPT-6 Astra0.00 points-12.50 to +12.50 points
GPT-5.4 minus GPT-6.1 Sol-2.78 points-15.28 to +9.72 points
GPT-5.5 minus GPT-6 Astra+6.94 points-2.78 to +20.83 points
GPT-5.5 minus GPT-6.1 Sol+4.17 points-2.78 to +13.89 points
GPT-6 Astra minus GPT-6.1 Sol-2.78 points-8.33 to 0.00 points

Six exploratory, unadjusted comparisons using 10,000 paired task-cluster resamples. These intervals do not establish a universal ranking or model equivalence. The chart’s marginal success and median-latency intervals were specified before this campaign; they are separate from the paired-difference intervals.

GPT-5.4: 63/72 strict successes, 3.91 s median and 11.35 s P90 (72 recorded primary timings); 12/12 controls. GPT-5.5: 68/72 strict successes, 3.35 s median and 9.02 s P90 (72 recorded primary timings); 12/12 controls. GPT-6 Astra: 63/72 strict successes, 2.54 s median and 5.06 s P90 (72 recorded primary timings); 12/12 controls. GPT-6.1 Sol: 65/72 strict successes, 3.24 s median and 6.81 s P90 (72 recorded primary timings); 12/12 controls.

GPT-5.5 has the highest observed strict score in this campaign: 68/72 (94.4%), compared with Sol 65/72 (90.3%) and GPT-5.4 and Astra each 63/72 (87.5%). Its advantage over GPT-5.4 is 6.94 percentage points, with a paired 95% interval from -2.78 to +19.44 points. All six exploratory pairwise intervals include or touch zero. These data establish neither a stable ranking nor equivalence. Astra has the shortest observed median request time (2.54 s); GPT-5.5 takes 3.35 s.

All four models passed 12/12 separate controls and 15/15 supported filter changes, with zero unrequested state violations in 21 primary browser attempts each. All 336 application outcomes and timings were retained, including two GPT-5.4 HTTP 422 validation rejections on MD07.

On MD01, all 12 original model plans request the correct filtered-data scope. The unchanged application then switches them to viewport scope and returns zero instead of 266 reports. All four fail the end-to-end task because of this shared reconciliation defect.

On MD04, GPT-5.5 returns the correct Baltimore County total of 151,679 plus all eight annual rows in all three attempts. Sol supplies the required rows twice; Astra gives the correct aggregate but no yearly rows; GPT-5.4 refuses all three. The frozen rubric requires annual rows although the question does not explicitly request them, so this difference partly concerns an ambiguous output contract.

On MD07, GPT-5.5, Astra and Sol pass all three selected-crash queries. GPT-5.4 fails all three: two validation rejections and one unsupported-operation response. Conversely, GPT-5.4 and GPT-5.5 pass all three MD09 original-versus-estimated location comparisons, while Astra and Sol refuse them. These are task-specific differences, not evidence that one model is worse across every capability.

One GPT-5.5 HIN14 answer correctly refuses a causal road-diet effect estimate but additionally asserts that project designs and exposure changes are absent. The supplied evidence does not establish those extra absences, so the sealed identity-blind review fails claim support for that answer. This is a semantic judgment by one independent AI reviewer, not human domain-expert validation.

All 336 scheduled attempts enter their designated primary or control denominator. The campaign retained 336 application outcomes; 0 interrupted outcomes are recorded as failures. The 48 narrative records received independent, identity-blind AI-assisted review before aggregate results were released. This is not human domain-expert validation.

The shared MD01 scope-reconciliation defect and MD04 annual-row ambiguity remain part of the frozen historical test. The proposed English transportation benchmark is a separate, untested review draft.

Earlier three-model comparison: GPT‑6 Astra

GPT‑6 Astra, GPT‑5.4 and GPT‑6.1 Sol were evaluated together on September 30 using the same frozen application, source data, 28 tasks and prompts. Each task was repeated three times per model. This contemporaneous comparison and the earlier two-model campaign remain separate historical observations.

All three used the US Responses API, explicit medium reasoning, an 8,192-token combined reasoning/output budget and a 60-second model-call timeout. Each task’s three models ran adjacently, with counterbalanced order: each model occupied each position once per task across repetitions. Matching exposed settings does not equalize internal compute or provider load.

Within-campaign differences in strict success
ComparisonDifference95% paired task-cluster interval
GPT-6 Astra minus GPT-5.4-1.39 points-15.28 to +11.11 points
GPT-6 Astra minus GPT-6.1 Sol-1.39 points-4.17 to 0.00 points
GPT-6.1 Sol minus GPT-5.40.00 points-12.50 to +12.50 points

Three exploratory pairwise comparisons, each using 10,000 task-cluster resamples. These intervals are not adjusted for multiple comparisons and do not establish a universal ranking or model equivalence.

GPT-6 Astra: 63/72 strict successes, 2.49 s median and 4.92 s P90 (72 recorded primary timings); 12/12 separate controls. GPT-5.4: 64/72 strict successes, 3.82 s median and 11.16 s P90 (72 recorded primary timings); 12/12 separate controls. GPT-6.1 Sol: 64/72 strict successes, 3.19 s median and 5.91 s P90 (72 recorded primary timings); 12/12 separate controls.

All three configurations passed 12/12 controls and had zero UI-state violations in 21 scored browser attempts. Astra and Sol completed 15/15 supported filter actions; GPT-5.4 completed 14/15. Its one strict failure redundantly included unchanged controls, so the inherited functional-equivalence sensitivity credits it (65/72 versus 64/72 strict).

All nine raw plans for MD01 selected the correct filtered scope. The shared application changed that scope to the viewport and returned zero instead of 266 reports. On MD04, Astra returned the correct aggregate but omitted the rubric-required annual rows in all three attempts; Sol supplied them once and GPT-5.4 twice. This question does not explicitly request yearly rows, so the rubric ambiguity affects interpretation.

On the supported selected-crash query MD07, Astra and Sol passed all three attempts; GPT-5.4’s plans led to three HTTP 422 application-validation rejections. On the supported location-comparison query MD09, GPT-5.4 passed all three, while Astra and Sol each refused all three. These are distinct workflow failures, not evidence of a broad capability ranking.

Scorer registration correction. The inherited HIN scorer did not recognize Astra’s new model identifier. Its allowlist was amended after collection, with the original grades retained. The correction changes only model registration; task requirements, source oracles and the sealed narrative review are unchanged. Independent replay verified exactly 30 affected Astra records (24 primary and six controls), with all other checks unchanged and 1,260 historical grades preserved. Astra’s incomplete-registry result was 39/72 primary and 6/12 controls; registration gives 63/72 and 12/12. The former counts reflect the scorer defect, not model performance. Final scores use this disclosed amendment; no inference was repeated.

The frozen MD01 scope-reconciliation defect and MD04 output-granularity ambiguity remain in this comparison. Their correction belongs to the separately reviewed next benchmark version, so a change in the application or scoring cannot be mistaken for a model improvement.

Why GPT‑5.4 remains competitive here

In the September 30 three-model campaign, GPT‑5.4 and Sol tie at 64/72; Astra passes 63/72. The earlier 66/72 GPT‑5.4 result used a different date and unspecified reasoning effort with smaller output caps. It cannot establish that GPT‑5.4 generally outperforms the newer models. Model age alone does not predict performance on this particular application contract.

CERRA constrains the model to choosing supported query plans and actions, while the application calculates most numerical results. Models can therefore differ in how well they follow these specific interfaces. The observed tradeoffs run in both directions: GPT‑5.4 passes all three MD09 location comparisons where Astra and Sol refuse, but fails all three MD07 selected-crash attempts where both newer models pass. Shared application defects and ambiguous task requirements also affect scores. With only 24 primary task clusters, this is evidence about configured assistants in CERRA, not a causal explanation based on training, model generation or general transportation expertise.

Earlier two-model GPT comparison

GPT‑5.4 and GPT‑6.1 Sol were rerun with the same frozen application, 28 tasks, source data, prompts and graders. Both used the US Responses API, explicit medium reasoning, an 8,192-token combined reasoning/output limit and a 60-second model-call timeout. Adjacent model pairs used balanced first-model order in each repetition. Matching requested settings does not imply equal internal compute, and this experiment does not change GPT‑5.4’s production settings.

GPT‑6.1 Sol minus GPT‑5.4 · matched settings

-2.78 percentage points

Strict success: 63/72 (87.5%) versus 65/72 (90.3%). Paired 95% task-cluster interval: −12.50 to +4.17 points. This small study establishes neither superiority nor equivalence.

Sol’s median/P90 recorded request times were 2.83/5.97 s (71 measurements), versus 3.51/8.58 s for GPT‑5.4 (72). Both completed 15/15 supported filter changes, had zero unrequested state violations in 21 scored browser attempts, and passed 12/12 separate controls. The earlier 66/72 GPT‑5.4 and 64/72 Sol scores remain historical observations with different settings and dates.

One infrastructure interruption is retained. The runner stopped during Sol’s second MD07 attempt after its provider call returned, but before the application outcome was recorded. It was not retried or reconstructed from provider output. It counts as a primary non-success, with no invented request time. Excluding both members of that pair gives Sol 63/71 versus GPT‑5.4 64/71 (difference −1.41 points; paired interval −11.27 to +5.80). The missing outcome permits 63–64 Sol successes out of 72, so it can account for one of the two observed pass-count differences. These are disclosed post-interruption sensitivity checks.

Raw plans now make one shared failure attributable: both models requested the correct filtered-data scope in all six MD01 attempts, but the application changed it to the visible map and returned zero instead of 266 reports. On MD04, GPT‑5.4 refused all three attempts; Sol returned the correct total but omitted yearly rows twice, and passed once. The frozen rubric requires those rows although the question does not explicitly request them. On MD09, Sol refused the supported location comparison in all three attempts while GPT‑5.4 passed all three. Both passed all MD11 year-filter changes. These localized differences do not support the claim that Sol is worse across almost every capability.

Historical GPT‑6.1 Sol API extension

The earlier run retained all 84 attempts, including 12 reference controls, and used the same 28 frozen tasks, data snapshot and strict rubric. It passed all three repetitions on 21/24 primary tasks; 64/72 primary attempts were strictly successful within 30 seconds. Its 12 HIN narratives received the same identity-blind, AI-assisted review procedure.

The tested configuration uses gpt-6.1-sol through the US Responses API, with medium reasoning and an 8,192-token combined reasoning/output budget per call. Earlier API configurations used the application’s smaller output budgets without explicitly setting reasoning effort. The new budget accommodates reasoning tokens; prompts, validators, source queries, internal repair rules and the 60-second model-call timeout are unchanged. This is a configured-assistant observation, not an isolated model-generation comparison.

04 / Local comparisons

Configuration and model placement both matter

Gemma paired evaluation · 9 October 2026

Gemma 4 26B A4B Q8_0 alongside 12B Q4_K_M

The larger, 8-bit configuration completed the same full assistant evaluation as the 12B baseline: 168 retained attempts across both models, with 72 primary attempts and 12 separate controls per model. The 26B Q8_0 result is an evaluated local configuration; the production selector and its 12B default remain unchanged.

Gemma configurations tested together on the RTX 5090; all primary attempts retained
ConfigurationStrict successMedian / P90Reported model allocation: VRAM / non-VRAMSupported UI changesControls
Gemma 4 12B Q4_K_MFull reported model allocation in VRAM60/72 · 83.3%95% interval 66.7%–95.8%3.21 s / 6.49 s7.80 GiB / 0.00 GiBSampled model allocation15/150/21 UI-state violations12/12
Gemma 4 26B A4B Q8_0Hybrid GPU / CPU57/72 · 79.2%95% interval 62.5%–95.8%8.16 s / 15.94 s24.46 GiB / 2.36 GiBSampled model allocation15/153/21 UI-state violations12/12

The 26B Q8_0 configuration passed 57/72 primary attempts, compared with 60/72 for 12B Q4_K_M. The paired strict-success difference, 26B minus 12B, was -4.2 percentage points, with a 95% task-cluster interval of -20.8 to +12.5 points. This interval includes no difference; the experiment does not establish a reliable quality advantage or equivalence.

The 26B model changed a year filter instead of asking for clarification on all three repetitions of one ambiguous-location request. The 12B model preserved the interface and clarified that request in all three repetitions. Both models passed every supported filter-change task and all HIN source and reasoning tasks in this campaign.

Strict scores also penalize response-contract differences. Under the unchanged historical post-hoc functional-equivalence diagnostic, 12B rises to 63/72 and 26B to 66/72. The 26B model supplied correct weather evidence on six attempts but used a different operation label; both models also safely refused an unsupported weather-filter request while omitting an explicit explanation. The diagnostic credits these outcomes, but the 26B model’s three actual UI changes remain failures. These secondary scores do not replace the strict comparison.

The 26B 8-bit configuration used both GPU and CPU memory. The 12B samples showed the full Ollama-reported model allocation in VRAM; that does not mean every buffer or tensor was on the GPU. Its runtime still logged a CPU input buffer. Only one benchmark model was loaded at a time, while the desktop and existing GPU services continued running. Sampled residency covered 192/192 model calls, with a maximum observed sampling gap of 0.204 s. Brief unobserved transitions cannot be excluded.

VRAM is the inference service’s reported size_vram; non-VRAM is its reported size − size_vram. This difference is not a measurement of total system RAM or CPU buffers. Neither value is a whole-card peak or minimum hardware requirement.

Both configurations used an 8,192-token context, temperature 0.1, disabled thinking, at most 1,000 generated tokens per call and release after every call. Actual inputs were 783–1,585 tokens; this was not a full-context stress test. Request times include model loading, application planning, source retrieval and validation, and stop before the final browser render. Filesystem caches were not cleared. These timings describe the full assistant workflow, rather than isolated token generation speed.

This comparison changes more than quantization. The 12B Q4_K_M and 26B A4B Q8_0 packages differ in model size, architecture and memory placement as well as precision. The results cannot isolate an 8-bit benefit. The tested Q8_0 package is also distinct from the SFP8 format in the earlier capacity estimate. All 24 narrative outcomes received independent identity-blind AI-assisted review, not human expert validation.

Latest Qwen comparison · 7 October 2026

Qwen3.8 with the full model resident on the GPU

Qwen3.8 27B Q4_K_M passed 63/72 primary attempts (87.5%), with a 4.25 s median and 8.41 s P90 request time. The contemporaneous Qwen3 14B Q4_K_M baseline passed 51/72 (70.8%), with a 2.49 s median. Both completed the full 28-task, three-repetition protocol: 168 retained attempts, including separate controls.

Same pinned Qwen packages and inference settings; separate dated campaigns
ConfigurationRun / observed placementStrict successMedianP90
Qwen3 14B Q4_K_MSep 29 · partial CPU offload49/723.77 s7.20 s
Qwen3 14B Q4_K_MOct 7 · full GPU residency51/722.49 s4.76 s
Qwen3.8 27B Q4_K_MSep 29 · partial CPU offload63/7214.50 s29.81 s
Qwen3.8 27B Q4_K_MOct 7 · full GPU residency63/724.25 s8.41 s

One benchmark model at a time, on a shared GPU. All 197 model calls had in-flight samples showing their full reported model allocation in VRAM: 15.88 GiB for Qwen3.8 and 9.75 GiB for Qwen3. Existing services and desktop workloads stayed active. These results therefore measure full model residency, not exclusive use of an otherwise idle RTX 5090.

The October 7 paired strict-success difference was +16.7 percentage points for Qwen3.8, with a 95% task-cluster interval of 0.0 to +37.5 points. The interval includes no difference. Qwen3.8 retained its 63/72 score with shorter observed waits than on September 29; date, other workloads and stochastic generation also vary, so the cross-campaign timing change cannot be attributed solely to residency.

Both packages used Q4_K_M, an 8,192-token context, temperature 0.1, thinking disabled, at most 1,000 generated tokens per call and release after every call. Timings include loading and application validation. Qwen3.8 passed all 15 supported filter changes with no unintended changes in 21 scored browser attempts; the Qwen3 baseline passed 12/15 with three UI-state violations. This evaluation does not change the production model selector.

Historical Qwen comparison · September 29

To examine the newer Qwen configuration under a shared setup, we reran Qwen3 14B alongside Qwen3.8 27B using the same frozen application, data, questions and scoring. Each model completed 72 primary attempts and 12 controls: 168 attempts in total.

Qwen3.8 minus the contemporaneous Qwen3 baseline

+19.4 percentage points

Strict success: 63/72 versus 49/72. Paired 95% task-cluster interval: +1.4 to +38.9 points.

This supports higher strict success for the newer, larger configuration within this suite and runtime. It also took longer: median replies were 14.50 s versus 3.77 s, and P90 replies were 29.81 s versus 7.20 s.

Both used Q4_K_M weights, temperature 0.1, an 8,192-token context and disabled thinking. Retained runtime logs show both models used partial CPU offload on the shared RTX 5090. Model generation, parameter count, architecture, cold loading and shared load are not separated by this design. The paired interval applies to these two Qwen configurations; it is not a Qwen3.8–Gemma comparison.

A lighter model: Qwen3.5 9B versus Gemma 4 12B

A separate completed run kept the same 28 tasks, source snapshots and strict scoring, with 168 attempts and 24 identity-blind narrative reviews. Qwen3.5 passed 59/72 primary attempts, with a 2.95 s median reply; the contemporaneous Gemma run passed 60/72, with a 3.18 s median. The Qwen-minus-Gemma paired 95% task-cluster interval was −20.8 to +19.4 percentage points, so the small observed difference establishes neither superiority nor equivalence.

Sampled model residency was 5.34 GiB for Qwen3.5 and 7.80 GiB for Gemma, with no CPU offload observed in retained samples. Qwen3.5 completed 12/15 supported filter changes, versus Gemma’s 15/15; both had zero unrequested changes in 21 scored browser attempts. Qwen omitted the requested GPS-filter reset and one HIN narrative added an unsupported claim. Gemma remains the production default; Qwen3.5 is the lighter production alternative.

Both used Q4_K_M, an 8,192-token context, temperature 0.1, disabled thinking and unloading after each call. Package sampling defaults differ, and loading is included in reply times. This campaign retained the shared GPU workload and preceded the later removal of idle Qwen3 8B residency.

05 / Failure patterns

A higher score still leaves important gaps

Map actions and source queries are different capabilities

In the October 9 Gemma pair, both configurations passed 15/15 supported filter changes and all 24 HIN source/reasoning attempts. On one ambiguous-location task, however, the 26B Q8_0 model changed the year filter on all three repetitions instead of clarifying; the 12B Q4_K_M model clarified and preserved the interface. The 26B model’s 3/21 UI-state violations remain failures under both strict and secondary scoring.

Qwen3.8 passed 15/15 supported filter changes in both Qwen campaigns. Its Qwen3 baseline passed 11/15 on September 29 and 12/15 on October 7. The baseline applied the requested year before clarifying the ambiguous Baltimore location in three attempts in each campaign, violating the frozen clarify-first policy. In the earlier production evaluations, GPT-5.4 left the map unchanged on all six ambiguous or unsupported UI requests; GPT-5.4 mini completed 14/15 supported changes, versus 12/15 for GPT-5.4. Neither GPT model had an observed UI-state violation in its scored browser attempts.

Some failures persist across models

All eight configurations in the production evaluations failed the current-crash-selection data-query task. Both models in the September 29 Qwen paired run also failed that task and the year-breakdown task. These are end-to-end failures. The shared application forces viewport scope when it detects “visible,” including “outside the visible map”; raw planner outputs were not retained, so the model’s separate contribution cannot be isolated. For the year-breakdown task, both returned the correct aggregate and filters but missed the frozen requirement for yearly rows, which the prompt did not state explicitly. Qwen3.8 additionally failed all three selected-crash weather queries with HTTP 422 validation rejections—a regression relative to its paired baseline.

In the September 29 extension, GPT‑6.1 Sol failed all three repetitions of the current-selection and year-breakdown tasks, with the same scope limitation and yearly-row rubric ambiguity. It returned “unsupported” on two of three available original-versus-estimated location comparisons; the third repetition passed. All 84 application requests returned HTTP 200, illustrating why a successful request alone is insufficient evidence of task success.

Strict failures need interpretation

Operation labels, exact response fields and relevant caveats are part of the frozen contract. A strict failure can therefore occur even when a displayed number is correct. The inherited functional-equivalence check raises Qwen3 from 49/72 to 55/72 on September 29 and from 51/72 to 57/72 on October 7; Qwen3.8 stays at 63/72 in both. These secondary results do not replace the strict score.

The earlier Gemma 4 review found two narratives that confused the segment-boundary caveat with the intersection-distance caveat. Three Qwen3 control answers omitted the distinction between people and crash counts. Such errors matter even when the application returns the right data.

See the complete task-family breakdown and UI outcomes below ↓

06 / Interpretation

A decision aid, within a bounded test

This is a small, implementation-aware convenience sample. It does not establish a universal model ranking or validate a scientific HIN method. Data retrieval, planning, validation and narration all contribute to the outcome; failures cannot always be attributed to the model alone.

Several apparent differences remain uncertain. In the production tests, GPT-5.4’s 11.1-point advantage over GPT-5.4 mini had a paired 95% interval of −4.2 to +26.4 points. Gemma 4’s 9.7-point advantage over Qwen3 14B had an interval of −8.3 to +29.2 points. Neither establishes a reliable general advantage.

Local configurations vary in size, quantization, sampling and execution conditions. Historical API runs use provider aliases rather than independently pinned snapshots; the matched GPT‑5.4 and GPT‑5.5 runs verify dated provider identities, while Astra and Sol remain aliases. Network time and service load also vary. The September 29 paired Qwen interval excludes zero, while the October 7 interval reaches zero. Neither comparison isolates a release-generation effect, and neither supports a universal model ranking.

For current interactive use, the evidence supports a practical policy: start with Gemma 4 for a balance of observed quality and response time, offer the smaller Qwen3.5 alternative, and make the model choice explicit. Source evidence and the assistant’s caveats remain essential whichever model is selected.

Next: review the questions before expanding the claims

The v0.2 transportation benchmark review draft proposes 20 English crash-analytics tasks, four separate controls and 16 broader transportation and asset-management candidates. Baltimore HIN remains in this historical case study and is excluded from the proposed general core. The draft has no new scores: domain review, independent answers, data and implementation checks must precede a new frozen evaluation.

Future records will separate the model’s original plan, application changes, data/tool results and final interface state. Scoring will make scope, units, required rows and permitted UI changes explicit, with semantic-equivalence rules decided before testing. Reviewers can annotate the question CSV or the blank worksheet, or submit Feedback using a question ID.

Appendix

Evidence and sources

Detailed task scores, scoring sensitivity, reproducibility records and the original downloadable figures are collected here.

Task-family scores and map behavior All 26 observations
Strict passes / attempts by task family
Model · runMaryland data queriesUI filter changesUI boundariesHIN source queriesHIN reasoning & limitsUI-state violations
GPT-5.4Sep 23 · Production24/2712/156/615/159/90/21
GPT-5.4 miniSep 23 · Production19/2714/152/615/158/90/21
Gemma 4 12BSep 24 · Production18/2715/153/615/157/90/21
GPT-4.1 miniSep 23 · Production22/2712/152/615/156/93/21
Qwen3 8BSep 18 · Production24/276/153/612/156/96/21
Qwen3 14BSep 24 · Production15/2712/150/615/159/93/21
Llama 3.1 8BSep 18 · Production18/2714/150/66/152/97/21
Gemma 3 4BSep 18 · Production13/2712/150/69/150/93/21
Qwen3 14BSep 29 · Local paired15/2711/150/615/158/93/21
Qwen3.8 27BSep 29 · Local paired18/2715/156/615/159/90/21
GPT-6.1 SolSep 29 · Local app / API19/2715/156/615/159/90/21
Gemma 4 12BSep 29 · Local lighter-model pair18/2715/153/615/159/90/21
Qwen3.5 9BSep 29 · Local lighter-model pair21/2712/153/615/158/90/21
GPT-5.4Sep 30 · Matched API pair20/2715/156/615/159/90/21
GPT-6.1 SolSep 30 · Matched API pair18/2715/156/615/159/90/21
GPT-6 AstraSep 30 · Three-model matched API18/2715/156/615/159/90/21
GPT-5.4Sep 30 · Three-model matched API20/2714/156/615/159/90/21
GPT-6.1 SolSep 30 · Three-model matched API19/2715/156/615/159/90/21
GPT-5.4Oct 02 · Four-model matched API18/2715/156/615/159/90/21
GPT-5.5Oct 02 · Four-model matched API24/2715/156/615/158/90/21
GPT-6 AstraOct 02 · Four-model matched API18/2715/156/615/159/90/21
GPT-6.1 SolOct 02 · Four-model matched API20/2715/156/615/159/90/21
Qwen3 14B Q4_K_MOct 07 · Local full GPU residency15/2712/150/615/159/93/21
Qwen3.8 27B Q4_K_MOct 07 · Local full GPU residency18/2715/156/615/159/90/21
Gemma 4 12B Q4_K_MOct 09 · Local Gemma Q4 / Q8 pair18/2715/153/615/159/90/21
Gemma 4 26B A4B Q8_0Oct 09 · Local Gemma Q4 / Q8 pair18/2715/150/615/159/93/21

“UI filter changes” require the exact requested controls to change while unrelated controls remain intact; a supported county change may fit the map to that county. “UI boundaries” test ambiguous or unsupported requests that should leave the map unchanged. A UI-state violation is an actual value change against the frozen task policy; the policy can require clarification before applying an otherwise requested partial change.

Secondary scoring and reference controls Kept separate from strict success

A separate post-hoc diagnostic introduced functional-equivalence rules for the original evaluation; those rules were retained for subsequent runs. They credit an equivalent outcome when it differs from the exact response contract. Secondary scores were Gemma 3: 48/72 (66.7%, including 14 adjusted trials); GPT-4.1 mini: 63/72 (87.5%); GPT-5.4 mini: 62/72 (86.1%); GPT-5.4: 66/72 (91.7%).

In the September 24 run, Qwen3 14B scored 57/72 (79.2%) and Gemma 4 scored 61/72 (84.7%) under the secondary rules. Their controls passed 9/12 and 12/12, respectively. In the September 29 paired run, secondary scores were Qwen3 55/72 (76.4%) and Qwen3.8 63/72 (87.5%); controls passed 9/12 and 12/12. Controls do not enter the primary score or its reply-time distribution.

In the October 7 full-residency Qwen pair, secondary scores were Qwen3 57/72 (79.2%) and Qwen3.8 63/72 (87.5%). Controls again passed 9/12 and 12/12. Qwen3 missed the required people-versus-crashes distinction in all three scoring-method controls.

In the October 9 Gemma pair, the inherited functional-equivalence rules yield 63/72 (87.5%) for 12B Q4_K_M and 66/72 (91.7%) for 26B Q8_0, compared with strict scores of 60/72 and 57/72. These diagnostics use a different acceptance threshold and do not replace the primary scores or excuse unintended UI changes. Both models passed 12/12 controls.

In the GPT‑6.1 Sol extension, functional-equivalence success was 64/72 (88.9%), and controls passed 12/12. Controls remain separate from the primary score.

In the September 30 matched API pair, secondary scores equal strict scores: GPT‑5.4 65/72 and Sol 63/72. Both pass 12/12 controls. The paired complete-case sensitivity excludes both members of the interrupted MD07 pair and weights the remaining 71 attempts equally; its task-cluster bootstrap retains two repetitions for MD07 and three for every other task. It is a disclosed secondary analysis, not a replacement primary score.

In the three-model campaign, secondary functional-equivalence scores are GPT-6 Astra 63/72; GPT-5.4 65/72; GPT-6.1 Sol 64/72. All three pass 12/12 separate controls. There was no infrastructure interruption or missing timing in this campaign.

Run provenance and reproducibility Sources, settings and manifest hashes

Production local baseline · September 18

CERRA v36, source d28c83e2eeb66a190ec420d90bb654674c986deb. Original task manifest SHA-256: a73f5b9e835ec7765beae747d9c3df04b63a7c60d1b660233deaef0af830b80e.

Production API evaluation · September 23

CERRA v48, source 68dd817f5859a34eee5bbfb550ebdb956ddb0341. All 252 outcomes were recorded, including three HTTP 422 responses, 81 browser attempts and 36 identity-blind narrative reviews. Run manifest SHA-256: 9239d992da1869f98116f87cb5e708f6414d15dfc588d517e1478c114c708deb.

Production local extension · September 24

CERRA v51/v52 shared the same deployment archive and environment revision. Sources: 4f726372597df52a210facf94ae83d71a52f522d and 0d51120af67dbd5a4df766f008521a1e99251ff5. Deployment history corrects the frozen manifest’s initial v50 lookup. The run retained all 168 outcomes, including nine HTTP 422 responses, 54 browser attempts and 24 blind narrative reviews. Both models used Q4_K_M, temperature 0.1, an 8,192-token context and disabled thinking on an RTX 5090; unloading after each call permits cold-load time in replies. Manifest SHA-256: a2fb59169c45f21572d7d33fcac909a118271b6f7c35286b98812a2502ecb814.

Paired local evaluation · September 29

Frozen application source 6ed65fc06f525e8bbe8cb800ce80487642f6120a, with model-routing additions. All 168 attempts, 54 browser records and 24 blind narrative reviews were verified. Each model had three HTTP 422 application-validation rejections; these were not measured transport outages. Manifest SHA-256: a32cb875e9e9b2ac1f48e00fd5905ff5bb9ae0c3f63d770f0fab98a6e5073863.

Qwen full model GPU residency · October 7

All 168 attempts, 54 browser records and 24 independent identity-blind narrative reviews were verified, with six HTTP 422 validation rejections retained. The application source 6ed65fc06f525e8bbe8cb800ce80487642f6120a, all 119 application/build hashes, all 11 source-data hashes, the task protocol and the package digests match the September 29 parent. The internal campaign directory retains an October 2 name; the actual scored run was October 7. Manifest SHA-256: 0d7f14ba7ffd5e0f9f6eb4c4efcec3c40e626b5e9111631ca6b1e454f9426aca.

Package identities: qwen3:14b, SHA-256 bdbd181c33f2ed1b31c972991882db3cf4d192569092138a7d29e973cd9debe8; qwen3.8:27b-q4_K_M, SHA-256 25b843619e944cd0ae6069f94ff4e5e26a16e109ccbc0a66a0f05979ed70098e. No scored attempt was externally retried. Median-latency intervals were added post hoc on October 9 using 10,000 shared task-cluster draws and seed 20261009; every bootstrap median was independently recomputed.

Gemma Q4 / Q8 paired evaluation · October 9

All 168 outcomes, 54 browser records, 24 independent identity-blind narrative reviews and 192 model calls were verified. Six HTTP 422 validation rejections, all from the 12B configuration, remain in the score and timings. The isolated application derives from source 6ed65fc06f525e8bbe8cb800ce80487642f6120a with model-routing additions; the original 28 tasks, source data, scoring and three-repetition schedule were retained. Manifest SHA-256: 990387e96f2c2e17b4ddcc7599fe406c5c4363bdeadb63f6d716923563637f0a.

Package identities: gemma4:12b (Q4_K_M), SHA-256 4eb23ef187e2c5462566d6a1d3bbbc2f1346d0b4327cbb66d58fffbcc9b2b05c; gemma4:26b-a4b-it-q8_0 (Q8_0), SHA-256 6bfaf9a8cb378e03991da10daa94ea8e85905276d6baaeed67f0b3ae9996fede. Ollama 0.34.3 ran one request and one benchmark model at a time. Model allocations were released between calls, but filesystem caches were not cleared. The configured context was 8,192 tokens; actual inputs ranged from 783 to 1,585 tokens. This is not a long-context, concurrency or vision stress test. The scheduling/bootstrap seed does not fix stochastic generation.

The 26B-minus-12B paired interval reverses the orientation of the frozen summary’s 12B-minus-26B contrast without changing its values. Median-latency intervals were added post hoc with 10,000 shared task-cluster draws and seed 20261009; all bootstrap medians were independently recomputed. Raw responses and private runtime records remain outside website assets.

Frozen local application / API extension · September 29

GPT‑6.1 Sol used the same historical application base and frozen source data, with new model routing and an explicit reasoning budget. All 84 outcomes, 27 browser records and 12 blind narrative reviews were verified. Provider response identity and usage metadata were recorded for each inference call; the alias is not an immutable weight snapshot. Manifest SHA-256: b2777e4a29be6c5516904a81cebbb3e1cd1e27799a9599cb42f0f57924039c77.

Lighter-model paired evaluation · September 29

Qwen3.5 9B and Gemma 4 12B used frozen application source 6ed65fc06f525e8bbe8cb800ce80487642f6120a, with model routing and runtime telemetry added. All 168 outcomes, 54 browser records and 24 blind narrative reviews were verified; six application requests returned HTTP 422 and remain in the results. Controls passed 12/12 for each model. Secondary functional-equivalence scores were 62/72 and 63/72, respectively. Manifest SHA-256: 4716c4dfc609ebf27713d90fdf9b4097d7cee3e8373f77e98baaa65c23969f94.

Earlier contemporaneous GPT pair · September 30

The campaign settled 168 scheduled attempts: 167 completed application responses and one interrupted outcome retained as a failure. All 54 browser records, 24 independently reviewed blind narratives, 189 scored provider calls and task-cluster calculations were verified. All 81 initial inference-input pairs matched byte for byte apart from model identity; three deterministic control pairs required no inference. The provider returned gpt-5.4-2026-03-05 and gpt-6.1-sol; the latter remains an alias, not a pinned snapshot. Manifest SHA-256: 45249e285c585719fcea722cf6ae1f09007d24992a448146fe0c455152bf1999.

Five preflight calls are excluded from scoring. An initial non-scored GPT‑5.4 identity-guard rejection retained response identity and usage but incomplete raw response fields; all scored raw records match their metadata. The original protocol, interrupted-attempt receipt and post-interruption analysis amendment remain preserved. Independent verification rechecked all 29 frozen dependency files, 140 application files and 11 source-data snapshots.

Three-model GPT comparison · September 30

The campaign retained all 252 scheduled application outcomes, including three HTTP 422 validation rejections, with 0 interrupted outcomes. The 81 browser records, 36 independent blind narrative reviews and 282 scored provider calls were verified. All 81 first-inference input triplets matched apart from model identity; nine deterministic control attempts required no model call. Six provider smoke calls are excluded. Manifest SHA-256: de9b252a331c78eb421b2cc3142e39eb12759ddc221964d2d8112436522b8351.

Across 84 adjacent task triplets, each of six model orders occurred 14 times. Each model occupied every position once per task over three repetitions. All three used explicit medium reasoning, an 8,192-token combined reasoning/output budget and a 60-second model-call timeout. Provider identities were gpt-5.4-2026-03-05, gpt-6-astra and gpt-6.1-sol; Astra and Sol remain aliases. Narrative reviews were sealed before aggregate scoring. Independent verification checked frozen source, data, grades and task-cluster calculations. This campaign retains the original rubric and known shared application limitations; the proposed v0.2 benchmark has not been run.

Four-model GPT comparison · October 2

The campaign retained 336 application outcomes from 336 scheduled attempts, with 0 interrupted outcomes kept as failures. Its 108 browser attempts, 48 blind narrative reviews and 376 scored provider calls were verified. The first provider requests in 81 four-model groups matched except for the model field; 12 deterministic controls required no inference. Eight non-scored smoke calls are excluded. Manifest SHA-256: 79359ef7cf632123be55e878238abd8389fbf1bb78c67fd3f801bb10853ffc69.

The four-model schedule balances every model’s position separately within primary tasks and controls. Each of four Williams orders occurs 21 times; three repetitions cover three positions per model and task. GPT‑5.5 identity registration, wrong/unknown identity checks and latency uncertainty were specified before collection. New versus preceding canonical grader replay changed none of 1,512 historical records. The 30 pre-existing Qwen3.5 registry differences from its own campaign are disclosed in the audit; its published results are unchanged. No post-run scoring correction was applied to this campaign.

The source-data SQLite and HIN JSON hashes matched across runs. All 11 original data hashes and the September 24 task definitions were preserved for all three September 29 evaluations. Questions, contexts, source-based oracles and trial order were frozen before scoring. In the two-model extensions, order alternated and each model ran first 42 times overall; three repetitions cannot balance order within every task.

The September 24 and September 29 narrative reviews include the original case-specific scoring notes and anonymous historical calibration, so secondary explanations do not become new mandatory requirements. Raw responses, accounts, credentials and research logs are not published as website assets.

GPU measurement coverage Allocation logs, residency samples and missing values

Historical allocation values were recovered from service logs restricted to each original run window and matched to the tested model. September 18 records contain 102 Llama and 110 Gemma 3 weight-allocation declarations; September 24 contains 100 Qwen3 14B and 99 Gemma 4 declarations. Those weight-buffer values were constant within each run. Gemma 3’s service logged only a rounded 3.1 GiB value. Counts describe loads, including internal retries, rather than benchmark attempts.

The first September 29 Qwen campaign retained 195 inference loads matched by time to the recorded calls: 99 Qwen3 14B loads at 7,598.16 MiB of CUDA model weights, and 96 Qwen3.8 loads at 6,983.86–7,389.36 MiB. Qwen3 used 37/41 GPU layers; Qwen3.8 used 29/66 layers on nine loads and 31/66 on 87 loads. CPU placement explains why the larger model’s GPU weight allocation can be smaller. This is not evidence of a smaller total memory requirement.

The later Qwen3.5–Gemma campaign sampled Ollama’s size_vram during inference calls. Retained benchmark samples report 5,729,167,604 bytes for Qwen3.5 and 8,372,921,302 bytes for Gemma. Coverage was 77/93 and 99/99 calls, respectively; 16 Qwen calls had no residency sample. No CPU offload was observed in captured samples. The values exclude unrelated processes, are not continuous peak measurements, and cannot be compared directly with the earlier weight-only allocations.

The October 7 Qwen campaign required positive size_vram == size in Ollama residency samples. All 197/197 model calls had in-flight full-residency evidence: 10,468,448,009 bytes for Qwen3 and 17,047,822,007 bytes for Qwen3.8. Polling was approximately every 50 ms; the maximum observed gap was 0.162 s. Sampling cannot exclude briefer unseen transitions. Whole-card telemetry included unrelated processes, and the existing services and desktop continued running.

The October 9 Gemma campaign covered 99/99 calls for 12B and 93/93 for 26B. The 12B samples reported 8,372,921,302 bytes of model allocation, all in VRAM, while runtime logs retained a CPU input buffer. The 26B samples reported 28,799,936,755 total bytes, including 26,268,684,778 in VRAM and 2,531,251,977 outside VRAM (24.46 and 2.36 GiB). These service-reported allocations do not include every CPU buffer or unrelated GPU process. The maximum sample gap was 0.204 s; only one benchmark model at a time was observed.

Qwen3 8B ran through a separate resident Transformers service without retained per-model memory telemetry for its scored run. Whole-device snapshots also include desktop and other services, so they are not assigned to that model. Remote API execution does not reveal provider-side GPU allocation. Original results and timing remain unchanged by this retrospective audit.

Original figures and downloads Historical overview and paired experiment
Historical eight-model overview from September 18–24. GPT-5.4 scored 91.7%; GPT-5.4 mini and Gemma 4 scored 80.6%. Success intervals and reply-time distributions are shown.
Figure 1. Eight configurations evaluated on the production-site path, September 18–24. The later paired local run is separate.
Paired local comparison of Qwen3 14B and Qwen3.8 27B: strict success 49/72 versus 63/72, median replies 3.77 versus 14.50 seconds, with categories and every task repetition.
Figure 2. Paired local Qwen comparison, September 29. All primary attempts, including failures, remain in the score and timing denominators.

Source and model references