Data report, 4 November 2026
d1-Omni-2B on four GPUs
A 2B decision model that takes text, images, audio and video, measured on one labelled set across three Radeon GPUs and an Apple Silicon Mac: accuracy, calibration, latency and memory.
On the 366 text, audio and image answers that all four devices produced, d1-Omni-2B gets 360 right on every device. The six misses are one question, a German voice note labelled work that the model files under travel, and the text version of the same sentence is wrong too. Median text latency is 0.10 to 0.13 s on the three Radeon runs. The model is underconfident: every yes/no confidence bin is fully right, and mean probability on the correct answer is 0.899 against 0.949 for Clef-Flash 9B on the same text and image questions.
Server memory runs from 2.44 GiB at a physical batch size (ubatch) of 1024 to 4.56 GiB at 8192, and ubatch decides which video clips fit at all. The set is small: 37 records, 126 questions, 152 with stills. Read this as a first measurement, not a benchmark.
Model
d1-Omni-2B
| Part | Value |
|---|---|
| Model | d1-Omni-2B, LFM3 backbone, 2B parameters. A decision model: it answers typed questions with probabilities and writes no text. |
| Files | GGUF Q8_0, 1.85 GB, plus a separate Q8_0 multimodal projector (mmproj) |
| Source | LiquidAI/d1-Omni-2B-GGUF |
| Question types | noul (yes/no), choice and score. multiple, extraction and boxes are not supported yet (model card). |
| Engine | llama.cpp, build b11998. The model card asks for b11960 (v0.8.0) or newer. Vulkan (RADV) on the Radeon devices, Metal on the Mac. |
| Server flags | -ngl 999, flash attention on, --jinja, --parallel 1, -b and -ub set to the same value N, context equal to N (ad hoc runs) |
The engine requirement and the unsupported question types are vendor-reported and were not re-tested. Everything else in this report was measured.
Method
The set, the repeats and the wire
The set is 37 labelled records and 126 questions: 12 text controls, 12 synthetic voice notes (8 English, 4 German), 9 silent screen recordings and 4 screen recordings with a spoken soundtrack. Voice notes come from macOS text-to-speech at 16 kHz mono. Recordings are rendered frames, 1280x720 H.264 at 2 fps. Labels are known by construction. The last frame of each recording is also sent as a JPEG still, which adds 13 records and 26 questions, so d1 answers 152 questions per pass. The earlier "126 questions" figure counts only the original set.
| Modality | Records | Questions | Question types | Asked |
|---|---|---|---|---|
| text | 12 | 48 | noul, choice, score | is_task, topic, urgency, language |
| audio | 12 | 48 | noul, choice, score | same four as text |
| image (stills) | 13 | 26 | noul, choice | shows_error, app |
| video | 9 | 18 | noul, choice | shows_error, app |
| video+audio | 4 | 12 | noul, choice | shows_error, app, production |
| all | 37 + 13 stills | 126 + 26 = 152 | 54 noul, 74 choice, 24 score |
urgency is a 4-level score (can wait, this week, today, right now). production asks whether the speaker says they are working on the production system.
Repeats. Each request was sent 3 times. d1 returned the same answers and nearly the same probabilities each time (the 8060S miss reads 0.182 on every repeat), so the repeats confirm determinism and give latency spread, not accuracy variance. The effective sample is 152 questions, not the 456 rows.
Wire. One System One request per record, with a task string in state and the questions in questions. Audio and video travel as base64 data URIs in files (WAV, MP4). A recording with a soundtrack sends the MP4 and its WAV as two files. Stills travel in images. Text controls carry the voice note's transcript in state.
Scoring. A yes/no answer is yes at probability 0.5 or above. A choice or score answer is the highest-probability option. p(correct) is the probability the model gave the labelled answer. Latency is wall-clock time per request, so p50 and p95 are over requests, with nearest-rank percentiles. Brier is the mean of (1 - p(correct))^2.
Devices
Results by device
Four devices ran the set. The Mac was shared with other work, so its latency is indicative only.
| Device | Backend | ubatch | Rows | Accuracy | Mean p | p50 text | p50 audio | p50 image | p50 video | p95 all |
|---|---|---|---|---|---|---|---|---|---|---|
| Radeon 8060S (Strix Halo) | Vulkan | 8192 | 456 | 0.987 | 0.886 | 0.13 s | 0.21 s | 0.68 s | 2.98 s | 5.56 s |
| Radeon AI PRO R9700 | Vulkan | 1024 | 366 | 0.984 | 0.883 | 0.10 s | 0.19 s | 0.30 s | did not fit | 0.33 s |
| Radeon RX 7900 XTX | Vulkan | 4096 | 405 | 0.985 | 0.890 | 0.11 s | 0.20 s | 0.40 s | 2.30 s (5 of 9 clips fit) | 2.31 s |
| Apple Silicon Mac (shared) | Metal | 8192 | 366 | 0.984 | 0.885 | 0.40 s | 1.42 s | 2.48 s | failed to decode | 3.52 s |
Rows differ by device because video did not run everywhere (section on memory), so this accuracy column is not like-for-like. "p95 all" mixes modalities. The like-for-like table keeps only the text, audio and image rows every device ran:
| Device | ubatch | Rows | Correct | Accuracy | Mean p | Brier |
|---|---|---|---|---|---|---|
| Radeon 8060S (Strix Halo) | 8192 | 366 | 360/366 | 0.984 | 0.885 | 0.0306 |
| Radeon AI PRO R9700 | 1024 | 366 | 360/366 | 0.984 | 0.883 | 0.0305 |
| Radeon RX 7900 XTX | 4096 | 366 | 360/366 | 0.984 | 0.885 | 0.0306 |
| Apple Silicon Mac (shared) | 8192 | 366 | 360/366 | 0.984 | 0.885 | 0.0305 |
All four devices give 360/366, and the same six rows are wrong on each. The 0.984 to 0.987 spread in the first table comes from which modalities ran, not from the device.
| Device | Modality | Requests | p50 s | p95 s |
|---|---|---|---|---|
| Radeon 8060S (Strix Halo) | text | 36 | 0.13 | 0.23 |
| Radeon 8060S (Strix Halo) | audio | 36 | 0.21 | 0.37 |
| Radeon 8060S (Strix Halo) | image | 39 | 0.68 | 0.69 |
| Radeon 8060S (Strix Halo) | video | 27 | 2.98 | 3.71 |
| Radeon 8060S (Strix Halo) | video+audio | 12 | 5.57 | 5.58 |
| Radeon AI PRO R9700 | text | 36 | 0.10 | 0.11 |
| Radeon AI PRO R9700 | audio | 36 | 0.19 | 0.23 |
| Radeon AI PRO R9700 | image | 39 | 0.30 | 0.33 |
| Radeon RX 7900 XTX | text | 36 | 0.11 | 0.12 |
| Radeon RX 7900 XTX | audio | 36 | 0.20 | 0.24 |
| Radeon RX 7900 XTX | image | 39 | 0.40 | 0.47 |
| Radeon RX 7900 XTX | video | 15 | 2.30 | 2.45 |
| Radeon RX 7900 XTX | video+audio | 3 | 3.55 | 4.67 |
| Apple Silicon Mac (shared) | text | 36 | 0.40 | 1.24 |
| Apple Silicon Mac (shared) | audio | 36 | 1.42 | 5.21 |
| Apple Silicon Mac (shared) | image | 39 | 2.48 | 3.35 |
RX 7900 XTX video is 15 requests (five clips) and video+audio is 3 (one clip), so read those rows as single points. The Mac has no video rows: video failed to decode there.
Modality and question type
Results by modality and question type
Cells are correct/rows and mean p(correct). Rows are questions times 3 repeats, so the 3 text misses and 3 audio misses are the same question repeated.
| Modality | Radeon 8060S | Radeon AI PRO R9700 | Radeon RX 7900 XTX | Apple Silicon Mac |
|---|---|---|---|---|
| text | 141/144 p 0.888 | 141/144 p 0.888 | 141/144 p 0.888 | 141/144 p 0.889 |
| audio | 141/144 p 0.864 | 141/144 p 0.863 | 141/144 p 0.864 | 141/144 p 0.864 |
| image | 78/78 p 0.918 | 78/78 p 0.912 | 78/78 p 0.918 | 78/78 p 0.917 |
| video | 54/54 p 0.899 | not run | 30/30 p 0.937 | not run |
| video+audio | 36/36 p 0.879 | not run | 9/9 p 0.918 | not run |
Only the 8060S run covers all five modalities:
| Modality | Requests | Rows | Correct | Accuracy | Mean p | Brier | p50 s | p95 s |
|---|---|---|---|---|---|---|---|---|
| text | 36 | 144 | 141/144 | 0.979 | 0.888 | 0.0302 | 0.13 | 0.23 |
| audio | 36 | 144 | 141/144 | 0.979 | 0.864 | 0.0412 | 0.21 | 0.37 |
| image | 39 | 78 | 78/78 | 1.000 | 0.918 | 0.0116 | 0.68 | 0.69 |
| video | 27 | 54 | 54/54 | 1.000 | 0.899 | 0.0165 | 2.98 | 3.71 |
| video+audio | 12 | 36 | 36/36 | 1.000 | 0.879 | 0.0255 | 5.57 | 5.58 |
| all | 150 | 456 | 450/456 | 0.987 | 0.886 | 0.0285 | 0.68 | 5.56 |
Audio has the lowest mean p of the single-input modalities (0.864) and carries the miss. Stills are the cleanest (78/78, 0.918). video+audio is the slowest because the clip and its soundtrack are both encoded.
By question type
| Type | Radeon 8060S | Radeon AI PRO R9700 | Radeon RX 7900 XTX | Apple Silicon Mac |
|---|---|---|---|---|
| noul | 162/162 p 0.910 | 111/111 p 0.921 | 132/132 p 0.924 | 111/111 p 0.925 |
| choice | 216/222 p 0.909 | 177/183 p 0.908 | 195/201 p 0.913 | 177/183 p 0.910 |
| score | 72/72 p 0.761 | 72/72 p 0.761 | 72/72 p 0.761 | 72/72 p 0.761 |
Every miss is a choice question. Score questions (urgency) are all correct and carry the lowest mean p, 0.761 on every device.
By question and by modality, Radeon 8060S
| Question | Type | Rows | Correct | Mean p |
|---|---|---|---|---|
| app | choice | 78 | 78/78 | 0.906 |
| is_task | noul | 72 | 72/72 | 0.921 |
| language | choice | 72 | 72/72 | 0.956 |
| production | noul | 12 | 12/12 | 0.764 |
| shows_error | noul | 78 | 78/78 | 0.923 |
| topic | choice | 72 | 66/72 | 0.866 |
| urgency | score | 72 | 72/72 | 0.761 |
| Modality | noul (yes/no) | choice | score |
|---|---|---|---|
| text | 36/36 p 0.935 | 69/72 p 0.924 | 36/36 p 0.771 |
| audio | 36/36 p 0.907 | 69/72 p 0.898 | 36/36 p 0.751 |
| image | 39/39 p 0.933 | 39/39 p 0.903 | none |
| video | 27/27 p 0.911 | 27/27 p 0.887 | none |
| video+audio | 24/24 p 0.842 | 12/12 p 0.954 | none |
video+audio yes/no questions have the lowest mean p of the yes/no cells (0.842), driven by production (0.764), the one question that depends on the spoken soundtrack.
Calibration
Underconfident, and right in every bin
For a yes/no question the probability of the answer given is stored exactly, so a true reliability table can be built. Pooled over the four device runs (516 rows, same model and quant), every confidence bin is 100% right. d1 reports 0.625 mean confidence on 15 rows that were all right. Clef-Flash, 75 rows, shows the same pattern with three rows per bin below 0.9, so its bins say little. Expected calibration error is 0.0806 for d1 and 0.0632 for Flash, both driven by underconfidence.
| Confidence in the answer given | d1 rows | d1 accuracy | d1 mean confidence | Flash rows | Flash accuracy | Flash mean confidence |
|---|---|---|---|---|---|---|
| 0.50 to 0.60 | 0 | 0 | ||||
| 0.60 to 0.70 | 15 | 1.000 | 0.625 | 3 | 1.000 | 0.677 |
| 0.70 to 0.80 | 6 | 1.000 | 0.764 | 3 | 1.000 | 0.768 |
| 0.80 to 0.90 | 63 | 1.000 | 0.859 | 3 | 1.000 | 0.833 |
| 0.90 to 0.95 | 381 | 1.000 | 0.939 | 27 | 1.000 | 0.928 |
| 0.95 to 1.00 | 51 | 1.000 | 0.955 | 39 | 1.000 | 0.984 |
| all | 516 | 1.000 | 0.919 | 75 | 1.000 | 0.937 |
Across all question types the picture is the same. Bins are by the probability on the correct answer, pooled over 1,593 d1 rows:
| p(correct) bin | Rows | Answered correctly | Share correct | Mean p |
|---|---|---|---|---|
| 0.00 to 0.20 | 12 | 0 | 0.000 | 0.184 |
| 0.20 to 0.40 | 12 | 0 | 0.000 | 0.307 |
| 0.40 to 0.60 | 24 | 24 | 1.000 | 0.503 |
| 0.60 to 0.70 | 87 | 87 | 1.000 | 0.648 |
| 0.70 to 0.80 | 114 | 114 | 1.000 | 0.757 |
| 0.80 to 0.90 | 270 | 270 | 1.000 | 0.848 |
| 0.90 to 0.95 | 561 | 561 | 1.000 | 0.936 |
| 0.95 to 1.00 | 513 | 513 | 1.000 | 0.969 |
The 24 wrong answers all sit below 0.31 on the correct option. The lowest p(correct) among right answers is 0.495, a score question. Per-option probabilities were not stored, so the probability of the wrong answer actually given is unknown for choice and score misses, and a confidence-in-answer table cannot be built for those types.
Brier score against Clef-Flash
d1 is the Radeon 8060S run restricted to the 222 text and still rows Flash also answered. Brier here is on the correct-option probability only: exact for yes/no, a lower bound on the full multiclass score for choice and score. Lower is better.
| Type | d1 rows | d1 accuracy | d1 mean p | d1 Brier | Flash rows | Flash accuracy | Flash mean p | Flash Brier |
|---|---|---|---|---|---|---|---|---|
| noul | 75 | 1.000 | 0.934 | 0.0052 | 75 | 1.000 | 0.937 | 0.0096 |
| choice | 111 | 0.973 | 0.917 | 0.0233 | 111 | 1.000 | 0.970 | 0.0016 |
| score | 36 | 1.000 | 0.771 | 0.0633 | 36 | 1.000 | 0.911 | 0.0106 |
| all | 222 | 0.986 | 0.899 | 0.0237 | 222 | 1.000 | 0.949 | 0.0058 |
Pooled over all modalities and four devices, d1 is 0.0103 on yes/no, 0.0277 on choice and 0.0678 on score. The gap to Flash is mostly the score questions (0.0633 against 0.0106) and the single wrong choice question.
Comparison
Against Clef-Flash 9B Q8_0 and Clef-Omni
Clef-Flash, same set, same run day
| Measure | d1-Omni-2B | Clef-Flash 9B Q8_0 |
|---|---|---|
| Rows (text and still questions, 3 repeats) | 222 | 222 |
| Accuracy | 0.986 (219/222) | 1.000 (222/222) |
| Mean p(correct) | 0.899 | 0.949 |
| Mean p, score questions | 0.771 | 0.911 |
| p50 text latency, RX 7900 XTX | 0.11 s | 0.17 s |
| p50 image latency, RX 7900 XTX | 0.40 s | 0.62 s |
| Input tokens, text | 298 to 326 | 455 to 462 |
| Input tokens, image | 1,869 to 1,873 | 1,133 to 1,135 |
| Audio input | yes | no |
| Video input | yes (needs ffmpeg in the build) | no |
d1 is faster on both modalities and less accurate by 3 rows (the German note, repeated 3 times) and less confident. Both models ran on the same Radeon RX 7900 XTX.
Earlier Clef-Omni runs
Clef-Omni was run on the same 37 records and 126 questions on an earlier harness: MLX on an Apple M4 Pro on 2026-10-10, and PyTorch with int4 experts on the GPUs on 2026-10-11. Those runs got one pass, no stills and a different engine, and were read from their stored results, not re-run. p(correct) and latency are therefore not controlled comparisons. d1 below is restricted to its 126 non-still questions.
| Run | Device | Passes | Correct on the 126 questions | Mean p |
|---|---|---|---|---|
| d1-Omni-2B Q8_0, llama.cpp Vulkan (this report) | Radeon 8060S | 3 x 126, plus 26 stills | 372/378 on the 126-question subset | 0.880 |
| Clef-Omni 4-bit, MLX (earlier run, 2026-10-10) | Apple M4 Pro | 1 x 126 | 125/126 | 0.828 |
| Clef-Omni int4, PyTorch (earlier run, 2026-10-11) | Radeon 8060S | 1 x 126 | 126/126 | 0.826 |
| Clef-Omni int4, PyTorch (earlier run, 2026-10-11) | Radeon AI PRO R9700 | 1 x 126 | 126/126 | 0.825 |
| Clef-Omni int4, PyTorch (earlier run, 2026-10-11) | Radeon RX 7900 XTX | 1 x 126 | 126/126 | 0.824 |
The earlier summary lists Clef-Omni's mean p as not recorded. The stored rows carry it (field p) and it is computed here: 0.824 to 0.828. The one Clef-Omni miss, on the M4 Pro, is a different question from d1's: voice07 language, an English note read as German at p 0.578. d1 got that question right.
| Device (earlier Clef-Omni vs d1) | Omni text | d1 text | Omni audio | d1 audio | Omni video | d1 video |
|---|---|---|---|---|---|---|
| Radeon 8060S | 5.68 | 0.13 | 6.97 | 0.21 | 9.43 | 2.98 |
| Radeon AI PRO R9700 | 2.62 | 0.10 | 2.86 | 0.19 | 3.21 | did not fit |
| Radeon RX 7900 XTX | 2.29 | 0.11 | 2.59 | 0.20 | 2.80 | 2.30 |
| Apple Silicon (M4 Pro, MLX, earlier) vs Mac (Metal, shared) | 0.53 | 0.40 | 0.63 | 1.42 | 2.16 | failed to decode |
Median latency in seconds. On the Radeon 8060S d1 is lower by 43.6x (text), 33.6x (audio), 3.2x (video) and 1.9x (video+audio). The RX 7900 XTX pair is the same card under the earlier PyTorch harness and under llama.cpp. The Apple Silicon pair compares an M4 Pro with an unspecified Mac that was shared with other work; d1 is slower on audio there, 1.42 s against 0.63 s.
Memory: earlier Clef-Omni peaks were 21.0 GB (M4 Pro, MLX), 21.1 GiB (RX 7900 XTX) and 23.5 GiB (8060S and R9700), as reported by those runs. d1 uses 2.44 to 4.56 GiB. The measures differ (peak during a run against server memory), so a ratio of roughly 5 to 10 is indicative.
The miss
One German voice note, wrong as audio and as text
The note is "Bitte ruf heute noch den Kunden wegen des Angebots zurück" (call the customer back today about the offer), labelled work. d1 answers travel in every repeat on every device, and also when the same sentence is sent as text, so the cause is the model's reading of the sentence, not audio decoding and not a device. p(work) is 0.18 to 0.19 for audio and 0.31 for text.
| Run | Voice note, topic | p(work) | Text twin, topic | p(work) |
|---|---|---|---|---|
| Radeon 8060S (Strix Halo) | 3/3 wrong, travel x3 | 0.182 | 3/3 wrong, travel x3 | 0.305 |
| Radeon AI PRO R9700 | 3/3 wrong, travel x3 | 0.185 | 3/3 wrong, travel x3 | 0.310 |
| Radeon RX 7900 XTX | 3/3 wrong, travel x3 | 0.182 | 3/3 wrong, travel x3 | 0.305 |
| Apple Silicon Mac (shared) | 3/3 wrong, travel x3 | 0.188 | 3/3 wrong, travel x3 | 0.308 |
| Radeon 8060S, ubatch 2048 | 3/3 wrong, travel x3 | 0.182 | 3/3 wrong, travel x3 | 0.305 |
| Text via a proxy, device not recorded | not sent | 3/3 wrong, travel x3 | 0.305 | |
| Clef-Flash 9B Q8_0, RX 7900 XTX (same text) | no audio input | 0/3 wrong | 0.893 | |
| Clef-Omni 4-bit, M4 Pro (earlier run) | right | 0.982 | right | 0.971 |
d1 got the other three questions on the same note right, and the other three German notes (voice09 to voice11) were 12/12 each, at mean p 0.888, 0.902 and 0.844. Clef-Flash (text twin only) and the earlier Clef-Omni run (voice and text) both labelled this note work. Why d1 reads the sentence as travel was not investigated.
Memory
Memory against ubatch, and which media fit
Within one device the growth is 0.22 GiB per 1024 of ubatch from 1024 to 2048 (R9700) and 0.245 GiB per 1024 from 4096 to 8192 (8060S). Across the mixed devices, end to end, it is 0.30 GiB per 1024 (2.12 GiB over 7168 tokens). An earlier summary rounded the figure to 0.25 GiB.
llama.cpp refuses a request whose input exceeds the physical batch size ("input (4484 tokens) is too large to process, increase the physical batch size"). Text, audio and still images fit at every ubatch tested, including 1024. Video does not:
| Clip | Kind | Tokens in the rejection message | Tokens in the usage field (accepted run) | ub 1024 | ub 2048 | ub 4096 | ub 8192 |
|---|---|---|---|---|---|---|---|
| screen-page-404 | video | 3596 | 7213 | no | no | yes | yes |
| screen-page-500 | video | 3596 | 7213 | no | no | yes | yes |
| screen-page-ok | video | 3596 | 7213 | no | no | yes | yes |
| screen-tests-fail | video | 3596 | 7213 | no | no | yes | yes |
| screen-tests-ok | video | 3596 | 7213 | no | no | yes | yes |
| narr-local-test | video+audio | 3652 | 10979 | no | no | yes | yes |
| screen-build-fail | video | 4484 | 8989 | no | no | no | yes |
| screen-build-ok | video | 4484 | 8989 | no | no | no | yes |
| screen-edit-code | video | 4484 | 8989 | no | no | no | yes |
| screen-edit-notes | video | 4484 | 8989 | no | no | no | yes |
| narr-prod-500 | video+audio | 4529 | 13610 | no | no | no | yes |
| narr-deploy-prod | video+audio | 4540 | 13643 | no | no | no | yes |
| narr-staging-ok | video+audio | 4540 | 13643 | no | no | no | yes |
Rejection-message counts run from 3,596 to 4,540 tokens (3.6K to 4.5K). At 4096 the 3.6K clips fit and the 4.5K ones do not; at 1024 and 2048 no clip fits; at 8192 all 13 do. The usage field of the accepted runs reports about twice the rejection count for video (7,213 against 3,596) and about three times for video+audio (10,979 against 3,652). Both are shown and the reason was not established. Stills are 1,069 tokens in the usage field at ubatch 1024 against 1,869 at 2048 and above, so the image encoder produced fewer tokens at the smaller batch.
Practical limits
What stops a deployment
- No ffmpeg, no video. The Metal build on the Mac had no ffmpeg. Every video and video+audio request failed with "Failed to load image or audio file", while audio and stills worked. The Linux runs used a build with ffmpeg. The cause comes from the run notes.
- No audio input on Clef-Flash. It was run on text and stills only.
- Video needs a large ubatch. Clips of 3.6K to 4.5K tokens need 4096 or 8192, which is 3.13 to 4.56 GiB.
- Concurrency. Servers ran one slot (
--parallel 1). Throughput under load was not measured.
Sizing media by base64 length overestimates audio
A proxy in front of the server admitted requests by estimating input tokens from base64 length, against a 2048-token physical batch limit. It rejected all 36 audio requests with estimates of about 29,800 to 56,800 tokens, when the server used 366 to 494.
| Modality | Requests rejected | Estimated tokens | Tokens in the usage field | Estimate over usage |
|---|---|---|---|---|
| audio | 12 | 29,768 to 56,782 | 366 to 494 | 81.3x to 114.9x (median 98.3x) |
| video | 9 | 3,389 to 8,418 | 7,213 to 8,989 | 0.5x to 1.1x (median 0.7x) |
| video+audio | 4 | 51,581 to 66,832 | 10,979 to 13,643 | 3.8x to 6.1x (median 4.7x) |
The estimate is 81x to 115x too high for audio (median 98x), roughly right for video and 3.8x to 6.1x high for video+audio. A proxy for decision wires that carry media needs a per-modality estimate. The same proxy rejected all 39 stills as unsupported images. Text through it: d1 0.979 accuracy at 0.11 s p50, Clef-Flash 1.000 at 0.16 s.
Limitations
What this does not show
- Small set. 37 records, 126 questions (152 with stills). With 150 of 152 distinct questions right, the Wilson 95% interval on accuracy is 0.953 to 0.996. Per-modality cells hold 9 to 13 records.
- Synthetic voice. One text-to-speech system at 16 kHz, no noise, accents or overlap. Four of twelve notes are German; no other language was tested.
- Rendered video. Screen recordings are drawn frames of terminals, browsers and editors at 2 fps, not captured sessions.
- One run day. All d1 and Flash measurements come from a single day. Repeats return identical answers.
- One judgement label. The topic label of the German note is a judgement call, and the only miss depends on it.
- Unequal runs. ubatch differs by device (1024, 4096, 8192) and video ran on two devices, so per-device accuracy is not like-for-like outside the text, audio and still rows.
- Not measured: energy and power, long-context behaviour, noisy or real-world audio, throughput under concurrency, and the multiple, extraction and boxes question types.
Sources
Sources and caveats
- Computed here: every accuracy, mean p, latency, calibration and Brier figure, from the stored per-row results of each run.
- From the run reports, not the result files: the memory figures (2.44, 2.66, 3.13, 3.58 and 4.56 GiB) and the device each was measured on.
- From the model card, not re-tested: the llama.cpp requirement and the unsupported question types.
- Earlier run: Clef-Omni numbers, read from stored results of an earlier harness and not re-run.
- Second 8060S run: a ubatch 2048 run on the Radeon 8060S is used only in the video fit table and the miss table. The main 8060S results are the ubatch 8192 run.
- Two token counts: video token counts differ between the rejection message and the usage field. Both are reported.
- Brier: on the correct-option probability only, so exact for yes/no and a lower bound for choice and score.