Research · Evaluation report · September 2026

L3: Arabic language checking against
26 large language model configurations

On a linguist-reviewed benchmark of real Arabic sentences, L3 reached 80.29% edit F0.5, against 44.68% for Claude Fable 5.1, the strongest large language model configuration we tested.

Evaluation report

  • Published
  • Evaluation snapshot9 September 2026, version 1.0
  • AuthorshipLisan Research
80.29%Edit F0.5Measured · next best 44.68%, Claude Fable 5.1
84.54%Detection precisionMeasured · next best 64.21%, Claude Fable 5.1
66.85%Detection recallMeasured · next best 41.08%, GPT-5.6 Sol
96.38%Normalized correction accuracyMeasured · conditional on a correct detection
55.96%Sentence exact matchMeasured · Claude Fable 5.1 27.98%
98.84%ROUGE-1 F1Measured · word overlap with the reference · Claude Fable 5.1 96.56%
52.28Tokens per secondMeasured · second to Qwen 3.8 27B on Groq at 66.98
0.000014kWh per 1,000 tokens, accelerator scopeMeasured on an NVIDIA A10 · 0.000042 with the three-times full-stack factor, an estimate

F0.5 combines precision and recall and weights precision more heavily. Precision is the share of proposed changes that landed where the linguist also changed the text; recall is the share of the linguist's edits the system found. Full definitions in the methodology.

L3 leads on edit F0.5 at 80.29%, against 44.68% for Claude Fable 5.1

Edit F0.5, exact-span detection, top ten configurations. Higher is better. F0.5 weights precision above recall, because unnecessary changes cost more than missed ones.

Exact-span detection, micro-averaged, that is, pooled across every edit span before the rate is computed. Single output per system, L3 first suggestion only, the same verbatim four-line prompt. Every competitor score comes from our own run of that provider's service, not from the provider's publications. See the methodology; the table view lists every configuration.

L3, the Lisan language engine, ranked first on every primary metric in this evaluation: exact-span precision, recall, F1 and F0.5, exact and normalized correction accuracy, sentence exact match, ROUGE-1 and ROUGE-L. On F0.5 it scored 80.29%, a 35.61-point lead over Claude Fable 5.1 at 44.68%. Measured.

The strongest comparator changed with the metric, which is worth saying plainly. Claude Fable 5.1 was next on precision and on F0.5. Claude Opus 5 was next on F1, at 34.58% against 74.66% for L3. GPT-5.6 Sol was next on recall, at 41.08% against 66.85%. No single large language model configuration was second everywhere.

Two tasks, not one

Language checking is two decisions made in sequence. The system first has to decide where the text is wrong, and only then what to put in its place. We score the two separately, because a system can be good at one and poor at the other.

Detection is scored on exact spans. Every reference edit occupies a stretch of the source sentence, located by character positions, and a system earns a detection credit only when it changes exactly that stretch. Changing a neighbouring word, or half of the right one, counts as a miss and a false alarm at once. Insertions are zero-width positions, and a punctuation change can be its own span.

Correction is scored only where detection succeeded. Of the spans a system located correctly, we ask how many replacements match the linguist's reference, byte for byte and again after Arabic normalization. That makes correction accuracy a conditional figure, and we say so wherever it appears.

The headline metric is F0.5, which combines precision and recall but weights precision more heavily. In institutional language checking an unnecessary change usually costs more than a missed one: it has to be reviewed, rejected and sometimes reverted by hand. F0.5 encodes that asymmetry. We report F1, precision and recall alongside it, so nobody has to take the weighting on trust.

L3 is the only system with precision above 80% and recall above 60%

Exact-span precision against recall, every configuration with a results row. Higher is better on both axes. Recall on the horizontal axis, precision on the vertical; the shaded quadrant marks precision above 80% together with recall above 60%.

Exact-span detection. Guides at precision 80% and recall 60%. GPT-6 Astra was run in two reasoning settings; the report's appendices carry a single GPT-6 Astra row, so it appears as one point. Labelled: L3, Claude Fable 5.1 (most precise LLM), GPT-5.6 Sol (highest LLM recall), Claude Opus 5 (best LLM F1).

Precision and recall

L3 is the only system that combines precision above 80% with recall above 60% on this benchmark. Its 84.54% precision means that most of the changes it proposed landed on a stretch of text the linguist also changed. Its 66.85% recall means it found the majority of the reference edits, and missed the rest. Measured.

The large language models fall short in two different ways. Claude Fable 5.1 was the most precise at 64.21%, but it found only 20.15% of the reference edits: it changed little, and what it changed was usually right. GPT-5.6 Sol found the largest share of reference edits among the models at 41.08%, but at 25.03% precision, so most of its changes were not warranted. Most other configurations cluster in the lower left of the plot, close to one another on both axes.

That shape is the practical argument for F0.5 rather than a raw count of corrections. A cautious system with high precision and low recall leaves errors in the document. An aggressive one with the opposite profile fills the review queue with changes an editor has to reject. The benchmark rewards a system that can do both, and one did.

After a correct detection, L3's replacement matches the reference 96.38% of the time, 1.84 points ahead of Claude Fable 5.1

Correction accuracy, exact and after Arabic normalization, conditional on a true-positive detection. Higher is better. The axis starts at 70%.

Conditional on a true-positive detection, so read these rates beside recall: Claude Fable 5.1's rates apply to far fewer detected spans than L3's. Ten configurations shown, sorted by the normalized rate. Legend: exact replacement, after Arabic normalization.

Correction quality after detection

Once L3 located a span correctly, its replacement matched the reference byte for byte 89.79% of the time, and 96.38% of the time after Arabic normalization. Normalization removes diacritics and tatweel, the elongation character, and unifies alef, hamza and teh marbuta variants, so a correct suggestion is not marked wrong for one extra or missing vowel mark. Measured.

These figures are conditional, and the caveat is not a formality. Claude Fable 5.1 reached 89.07% exact and 94.54% normalized, 1.84 points behind L3 on the normalized rate. But those rates apply only to the spans it detected, which were a small fraction of the reference edits. A system that changes little and changes it well can post a high conditional accuracy while leaving most errors in place. Correction accuracy tells you how trustworthy an accepted suggestion is; recall tells you how much of the document it reached. Neither number substitutes for the other.

L3 matches the whole reference sentence on 55.96% of sentences, double Claude Fable 5.1's 27.98%

Sentence exact match, top ten configurations. Higher is better. The share of sentences whose complete output equals the complete reference, character for character.

Deliberately strict: one missed edit, one extra edit or one differing character makes the sentence incorrect. GPT-5.6 Terra and Gemini 2.5 Flash tie at 18.49% and keep the source order. Rates only; no sentence counts anywhere on the figure.

Whole-sentence accuracy

Span metrics describe edits. Editors receive sentences. Sentence exact match asks the end-to-end question: after the system is done, is the whole sentence identical to what the linguist would have written? L3 cleared that bar on 55.96% of sentences, double the rate of Claude Fable 5.1 at 27.98%. Measured.

The measure is strict by design. One extra diacritic, one missing period or one untouched error fails the sentence, which is why every rate here sits far below the conditional correction rates above. It is a useful summary of the whole pipeline, not an error rate, and it does not replace the span-level analysis.

L3 keeps the reference text intact while correcting it: 98.84% ROUGE-1 F1 against 96.56% for Claude Fable 5.1

ROUGE-1 F1 against the linguist's reference, top ten configurations. Higher is better. Sentence-level word overlap after removing diacritics and tatweel, the elongation character; the axis runs from 95 to 100.

Axis shows 95 to 100; all ten systems score above 95. ROUGE-L, which also requires word order, is in the tooltip and the table. Macro-averaged per sentence.

Reference fidelity

ROUGE measures how much of the reference sentence survives in the output, whatever the edit scoring says. High values mean the system corrected the text without rewriting it. L3 scored 98.84% on ROUGE-1 F1 and 98.83% on ROUGE-L F1, leading Claude Fable 5.1 by 2.28 and 2.29 points. Measured.

Two details matter here. The axis starts at 95 because every system in the top ten is above it; on a full axis the marks would look identical, and a truncated bar chart would exaggerate. And L3's ROUGE-1 and ROUGE-L values are nearly the same, which we read as retaining both the reference vocabulary and its order: the engine changes what is wrong and leaves the sentence structure alone. The legacy set-based overlap score, kept for traceability rather than as a primary metric, tells the same story at 91.45% against 88.93%.

What the corrections look like

Numbers describe the benchmark; sentences show it. The cards below are drawn from benchmark rows and show the source, the linguist's reference, L3's output and the outputs of several large language model configurations, verbatim. Outright errors come first. The last two cards are labelled editorial standard: the source sentence is grammatical, the reference applies the house convention the linguist worked to, and the models were told not to rephrase. Those rows show what the engine's editorial layer does, not the models failing at grammar, and the captions say so.

One honesty note applies throughout. Each system contributed a single output per sentence, L3 its first suggestion only, and the models were bound by a strict prompt. Where a model matched the reference, the card says so.

Example 1

Outright error

Two hamza seats and a closing period; L3 matched the reference exactly, and the models shown corrected the second hamza but left the first.

Source

نعم يمكن لكتاب واحد يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيئ (erroneous span) له طريقه إلى النجاح (erroneous span)

Reference

نعم يمكن لكتاب واحد يقرؤه (correction) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح. (correction)

L3
Match

نعم يمكن لكتاب واحد يقرؤه (correction) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح. (correction)

Claude Fable 5.1
Partial

نعم يمكن لكتاب واحد يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح (erroneous span)

Claude Opus 5
Partial

نعم يمكن لكتاب واحد يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح (erroneous span)

GPT-6 Astra
Partial

نعم يمكن لكتاب واحد أن يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح. (correction)

GPT-5.6 Sol
Partial

نعم يمكن لكتاب واحد أن يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح (erroneous span)

Gemini 3.1 Pro
Partial

نعم يمكن لكتاب واحد يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح (erroneous span)

DeepSeek V4 Pro
Partial

نعم يمكن لكتاب واحد يقرأه (erroneous span) الإنسان في مرحلة من عمره فيجد فيه ما يضيء (correction) له طريقه إلى النجاح (erroneous span)

Why the reference is right

The glottal-stop letter hamza sits on a different carrier depending on the surrounding vowels: in "reads it" it must sit on a waw because the hamza itself carries the u vowel (damma), which outranks the a vowel of the letter before it, and in "lights up" it must stand alone on the line after a long vowel; both source words used the wrong carrier, and the reference also closes the sentence with a period.

  • hamza seat
  • punctuation
Example 2

Outright error

A classical hamza-seat rule inside a very common technical term; no large language model configuration produced the reference spelling.

Source

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

Reference

ما المقصود بالتحليلات التنبئية (correction)؟

L3
Match

ما المقصود بالتحليلات التنبئية (correction)؟

Claude Fable 5.1
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

Claude Opus 5
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

GPT-6 Astra
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

GPT-5.6 Sol
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

Gemini 3.1 Pro
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

DeepSeek V4 Pro
Unchanged

ما المقصود بالتحليلات التنبؤية (erroneous span)؟

Why the reference is right

When the noun "prediction" becomes the adjective "predictive", the hamza moves from a waw carrier to a yeh carrier; the source kept the noun spelling inside the adjective, which is a spelling error every LLM left untouched.

  • hamza seat
Example 3

Outright error

Numbers three to ten take the opposite gender of the counted noun; five of the 26 configurations matched the reference, Gemini 3.1 Pro among the outputs shown, and the rest left the number as written.

Source

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

Reference

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمسة نجوم (correction)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

L3
Match

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمسة نجوم (correction)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

Claude Fable 5.1
Unchanged

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

Claude Opus 5
Unchanged

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

GPT-6 Astra
Unchanged

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

GPT-5.6 Sol
Unchanged

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئتي تجربة المرضى وسلامتهم.

Gemini 3.1 Pro
Match

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمسة نجوم (correction)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

DeepSeek V4 Pro
Unchanged

وكجزء من التقييم، حصل مستشفى آدم فيتال على تصنيف خمس نجوم (erroneous span)، وهو أعلى تصنيف متاح، ضمن فئة تجربة المرضى وسلامتهم.

Why the reference is right

Arabic numbers from three to ten take the opposite gender of the noun they count; "star" is masculine, so "five" must take the feminine form with a final ta marbuta.

  • number gender agreement
Example 4

Outright error

A feminine noun that looks masculine; several configurations, Claude Fable 5.1 among them, matched the reference here.

Source

كيف لأحد أن يمتلك مثل هذا الكبرياء (erroneous span)؟

Reference

كيف لأحد أن يمتلك مثل هذه الكبرياء (correction)؟

L3
Match

كيف لأحد أن يمتلك مثل هذه الكبرياء (correction)؟

Claude Fable 5.1
Match

كيف لأحد أن يمتلك مثل هذه الكبرياء (correction)؟

Claude Opus 5
Unchanged

كيف لأحد أن يمتلك مثل هذا الكبرياء (erroneous span)؟

GPT-6 Astra
Match

كيف لأحد أن يمتلك مثل هذه الكبرياء (correction)؟

GPT-5.6 Sol
Unchanged

كيف لأحد أن يمتلك مثل هذا الكبرياء (erroneous span)؟

Gemini 3.1 Pro
Match

كيف لأحد أن يمتلك مثل هذه الكبرياء (correction)؟

DeepSeek V4 Pro
Unchanged

كيف لأحد أن يمتلك مثل هذا الكبرياء (erroneous span)؟

Why the reference is right

The noun "pride" (al-kibriya') is grammatically feminine in Arabic, its final -aa' being the extended feminine ending, so the demonstrative "this" must take its feminine form.

  • gender agreement
Example 5

Outright error

Heavily garbled text; most models recovered the words, Gemini 3.1 Pro matched the reference among the outputs shown (GPT-5.6 Luna also matched in the full results), and L3 matched it byte for byte.

Source

تأتي اللغه (erroneous span) العربييي (erroneous span) ف (erroneous span) الوكز (erroneous span) الامس (erroneous span) كاكثر (erroneous span) اللغاة (erroneous span) تحدثن (erroneous span) في لعالم (erroneous span)

Reference

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction). (correction)

L3
Match

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction). (correction)

Claude Fable 5.1
Partial

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction)

Claude Opus 5
Partial

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction)

GPT-6 Astra
Partial

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction)

GPT-5.6 Sol
Partial

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction)

Gemini 3.1 Pro
Match

تأتي اللغة (correction) العربية (correction) في (correction) المركز (correction) الخامس (correction) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction). (correction)

DeepSeek V4 Pro
Partial

تأتي اللغة (correction) العربية (correction) في (correction) الوقت (differs from the reference) الحالي (differs from the reference) كأكثر (correction) اللغات (correction) تحدثا (correction) في العالم (correction)

Why the reference is right

The source is a badly mistyped sentence ("Arabic ranks fifth among the most spoken languages in the world"): nine words are misspelled through dropped letters, repeated letters, a missing hamza and wrong endings; the reference restores every word and adds a final period.

  • spelling
  • punctuation
Example 6

Outright errors, one editorial sub-edit

Includes an editorial change

Six fixes in one sentence, one of them editorial; GPT-6 Astra corrected every outright error and differs from the reference only on the passive-verb convention.

Source

تحدث ايلون مسك (erroneous span) مع المشاركون (erroneous span) في مؤتمر الإقتصاد (erroneous span) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاث (erroneous span) وثلاثين مليار (erroneous span).

Reference

تحدث إيلون ماسك (correction) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وأعلنت (correction) استثمارات بقيمة ثلاثة (correction) وثلاثين مليارا (correction).

L3
Match after normalization

تحدث إيلون ماسك (correction) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وأُعْلِنت (differs from the reference only in diacritics or spelling variant) استثمارات بقيمة ثلاثة (correction) وثلاثين ملياراً. (differs from the reference only in diacritics or spelling variant)

Claude Fable 5.1
Partial

تحدث إيلون مسك (differs from the reference) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليارا (correction).

Claude Opus 5
Partial

تحدث إيلون مسك (differs from the reference) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليارا (correction).

GPT-6 Astra
Partial

تحدث إيلون ماسك (correction) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليارا (correction).

GPT-5.6 Sol
Partial

تحدث إيلون ماسك (correction) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليار (erroneous span).

Gemini 3.1 Pro
Partial

تحدث إيلون مسك (differs from the reference) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليارا (correction).

DeepSeek V4 Pro
Partial

تحدث إيلون ماسك (correction) مع المشاركين (correction) في مؤتمر الاقتصاد (correction) العالمي وتم إعلان (erroneous span) استثمارات بقيمة ثلاثة (correction) وثلاثين مليار (erroneous span).

Why the reference is right

One short sentence packs six fixes: the name Elon Musk is spelled the standard way, the noun after the preposition "with" must take the oblique ending (-in, not -un), the word for economy must start with a plain alef because its opening vowel is elided, the number three must take the feminine form because Arabic numbers three to ten flip gender against the counted noun, the counted noun "billion" after a compound number must take the accusative ending, and the editor also prefers the plain passive verb over the "was carried out" construction.

  • spelling (proper name)
  • case/i'rab agreement
  • spelling (hamzat wasl)
  • number gender agreement
  • tamyiz accusative
  • editorial standard (verb instead of tam + masdar)
Example 7

Editorial standard

Editorial standard, not an error: the reference prefers the plain passive verb, and the models, told not to rephrase, kept the construction as written.

Source

تم بناء (erroneous span) هذا النموذج عام 2024.

Reference

بني (correction) هذا النموذج عام 2024.

L3
Match after normalization

بُنِي (differs from the reference only in diacritics or spelling variant) هذا النموذج عام 2024.

Claude Fable 5.1
Unchanged

تم بناء (erroneous span) هذا النموذج عام 2024.

Claude Opus 5
Unchanged

تم بناء (erroneous span) هذا النموذج عام 2024.

GPT-6 Astra
Unchanged

تم بناء (erroneous span) هذا النموذج عام 2024.

GPT-5.6 Sol
Unchanged

تم بناء (erroneous span) هذا النموذج عام 2024.

Gemini 3.1 Pro
Unchanged

تم بناء (erroneous span) هذا النموذج عام 2024.

DeepSeek V4 Pro
Unchanged

تم بناء (erroneous span) هذا النموذج في عام 2024.

Why the reference is right

"The building of this model was completed" is grammatical but house style prefers the direct passive "this model was built"; the LLM prompt forbade rephrasing, so this is a style convention the reference applies, not an outright error.

  • editorial standard
Example 8

Editorial standard

Editorial standard: many Arabic style guides prescribe a different verb for "considered"; the source is grammatical and the models were told not to rephrase.

Source

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

Reference

لطالما عد (correction) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

L3
Match

لطالما عد (correction) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

Claude Fable 5.1
Unchanged

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

Claude Opus 5
Unchanged

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

GPT-6 Astra
Unchanged

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

GPT-5.6 Sol
Unchanged

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنًا أخويًا، كما يرى مواطنو الكويت الإمارات امتدادًا طبيعيًا لأنفسهم.

Gemini 3.1 Pro
Unchanged

طالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطنا أخويا، كما يرى مواطنو الكويت الإمارات امتدادا طبيعيا لأنفسهم.

DeepSeek V4 Pro
Unchanged

لطالما اعتبر (erroneous span) مواطنو الإمارات الكويت وطناً أخوياً، كما يرى مواطنو الكويت الإمارات امتداداً طبيعياً لأنفسهم.

Why the reference is right

Many Arabic style guides hold that "i'tabara" strictly means "to take a lesson from" and prescribe "adda" for "considered / regarded as"; the source is grammatical and the LLM prompt forbade rephrasing, so this is a house convention rather than an error.

  • editorial standard

L3 is second on throughput, behind Qwen 3.8 27B on Groq

Standardized corrected-output tokens per second. Higher is better. End-to-end wall-clock request time, the same tokenizer for every system.

Corrected-text service throughput including request and prompt-processing overhead, not raw decoder throughput. Qwen 3.8 27B on Groq is faster than L3 and the chart shows it in first place. Ten configurations shown; the table lists all of them, without total seconds.

Speed

L3 processed 52.28 standardized output tokens per second, at 1.041 seconds per timed sentence. It was second. Qwen 3.8 27B on Groq was faster, at 66.98 tokens per second and 0.828 seconds per sentence, and it holds the top row of the chart. Claude Haiku 4.5 was third at 33.43. Claude Fable 5.1, the strongest model on quality, ran at 15.07 tokens per second and 3.585 seconds per sentence. Measured.

Throughput here is service throughput. For every valid corrected output we applied the Lisan tokenizer, summed the standardized token count and divided by end-to-end wall-clock request time, so the figure includes request and prompt-processing overhead for every system alike. It is not decoder speed, and it is not the batched, saturated rate used in the energy measurement below; the two describe different operating conditions and should not be compared.

Throughput and quality do not move together in this field. Qwen 3.8 27B on Groq, the fastest configuration, ranked last on the legacy set-based overlap score at 75.81%. At the other end, Gemini 3 Flash averaged 22.399 seconds per sentence.

L3's full-stack energy estimate is approximately 29 to 3,357 times below the cited large language model anchors

kWh per 1,000 processed tokens, log scale: each gridline is ten times the previous. Lower is better. L3 measured; the anchors are cited estimates. The same values are tabulated below.

L3's accelerator figure is a direct measurement on an NVIDIA A10; the full-stack figure applies a three-times overhead factor. The anchors are published or derived full-serving-stack values, cited estimates rather than measurements of the tested API models. The shaded band on the L3 row is the two-times to four-times sensitivity range.

Energy

We measured L3 directly on an NVIDIA A10 24 GB accelerator: at least 95% utilization, a 30-second warmup, a 10-minute steady state, power sampled at 1 Hz. Mean GPU power was approximately 100 W at approximately 2,000 tokens per second, which works out to 0.05 J per token, or approximately 0.000014 kWh per 1,000 tokens. Measured, accelerator scope.

That figure excludes host power, cooling, networking, storage and facility overhead. To compare like with like we multiply by three, a factor that rounds 1.5 for power-usage effectiveness, 1.3 for redundancy and reliability and 1.5 for remaining serving and grid overheads, giving a full-stack estimate of 0.000042 kWh per 1,000 tokens.

Energy per 1,000 processed tokens, the values plotted above. The Wh column is the kWh value multiplied by 1,000, so the figures can be read without leading zeros. L3 measured; the anchors are cited estimates, not measurements of the tested API models.
SystemkWh per 1,000 tokensWh per 1,000 tokensRelative to the baselineEvidence and scope
L30.0000140.014before the 3x factorDirect measurement on an NVIDIA A10 24 GB, accelerator scope
L30.0000420.0421x, the baselineThree-times full-stack normalization, the comparison baseline
Gemini Apps0.00121.228.6xGoogle disclosure of the full serving stack, cited
GPT-4o-mini0.00616.1145.2xIFP School estimate, linearly scaled and normalized, cited
GPT-5 medium0.074741,761.9xIFP School estimate, linearly scaled and normalized, cited
GPT-5 high0.1411413,357.1xIFP School estimate, linearly scaled and normalized, cited

The large language model figures are cited estimates, not measurements, because API providers expose no power telemetry. Google's disclosure of 0.24 Wh for a median Gemini Apps text prompt, at a 200-token assumption, gives 0.0012 kWh per 1,000 tokens and is already full stack. The IFP School per-query values of 0.61 Wh for GPT-4o-mini, 7.4 Wh for GPT-5 medium and 14.1 Wh for GPT-5 high at 300 tokens, scaled linearly to 1,000 tokens and multiplied by the same three-times factor, give 0.0061, 0.074 and 0.141 kWh. On that basis L3's full-stack estimate is approximately 29 to 3,357 times lower than the anchors. Tested models without a published per-token figure were mapped to these anchors by capability tier as a scenario estimate; that mapping is a comparison, not a measurement of any individual model.

The result is sensitive to the overhead factor, so we show the range rather than the midpoint alone. At two times, L3's estimate is 0.000028 kWh and the advantage over the most conservative anchor, Gemini Apps, is 42.9 times. At four times it is 0.000056 kWh and 21.4 times. Across that whole range L3 stays at least 21 times more energy-efficient than the lowest anchor. The Gemini Apps comparison is the one we would defend first, since it rests on a vendor disclosure rather than a third-party estimate.

Sensitivity of the L3 full-stack estimate to the overhead factor. Gemini Apps is the lowest cited anchor and GPT-5 high the highest; whatever factor is chosen between two and four, L3 stays at least 21 times below the lowest.
Overhead factorL3 kWh per 1,000 tokensAdvantage over Gemini Apps (0.0012)Advantage over GPT-5 high (0.141)
2x0.00002842.9x5,036x
3x, used in the report0.00004228.6x3,357x
4x0.00005621.4x2,518x
How the L3 accelerator-scope figure was measured, from the energy methodology in the report.
MeasurementValue
Reference acceleratorNVIDIA A10 24 GB
Steady-state utilizationat least 95%
Warmup and measurement window30-second warmup, then a 10-minute steady state
Power sampling1 Hz during the steady-state window
Mean GPU powerapproximately 100 W
Sustained throughputapproximately 2,000 tokens per second, batched and saturated
Energy per token0.05 J
Energy per 1,000 tokens50 J = 0.01389 Wh = 0.0000139 kWh, reported as 0.000014
Full-stack factor3x, which rounds 1.5 (power-usage effectiveness) × 1.3 (redundancy and reliability) × 1.5 (remaining serving and grid overheads)
Excluded from accelerator scopehost power, cooling, networking, storage and facility overhead

Methodology

  1. Benchmark construction

    Source material was segmented with the sentence tokenizer used by the engine. A linguistic expert reviewed each sentence and either wrote a corrected reference or retained the source unchanged when no edit was required. The result is a linguist-reviewed benchmark of real Arabic sentences, paired source and reference. Some rows carry no reference edit, so every system is also scored on leaving correct text alone.

  2. The prompt

    Every large language model received the same four-line Arabic instruction, verbatim:

    صحح الأخطاء في كل جملة من الجمل التالية إن وجدت.

    لا تعد صياغة الجملة أو تحذف من كلماتها فقط صحح الأخطاء الإملائية أو القواعدية بها.

    لا تضف التشكيل إلى الكلمات.

    إذا لم تجد خطأ، أعد الجملة نفسها تماماً.

    In English: correct the errors in each of the following sentences, if any; do not rephrase the sentence or delete any of its words, only correct the spelling or grammatical errors in it; do not add diacritics to the words; if you find no error, return the exact same sentence. The instruction constrained the model to spelling and grammatical correction, forbade rephrasing and word deletion, forbade adding diacritics, and required the source back unchanged when no error was found.

  3. Single output

    One final scored output per row per configuration. Transport or validation retries were used only to obtain a valid response, never to average several generations or pick the most favourable one. For L3 only the first proposed correction was used, so its output matched the constraint placed on the models.

  4. Output standardization

    Some models returned commentary or a declaration that the text was already correct. The preparation pipeline identified these wrappers and mapped them back to the original sentence where appropriate, so commentary was not scored as Arabic edits. Every configuration has a non-empty final output for every row; no row was excluded.

  5. Exact-span scoring

    The Java ProofreadingEvaluator backed by ArabicWordTokenizer and TextCorrectionExtractor. Tokenize source, reference and output; extract reference edits (source to reference) and system edits (source to output); represent each edit by its exact source interval, insertions as zero-width positions; match system and reference edits by identical source boundaries, the operation label not required; aggregate true positives, false positives and false negatives across all sentences before computing metrics (micro-averaged). Precision = TP / (TP + FP). Recall = TP / (TP + FN). F1 = 2PR / (P + R). F0.5 = 1.25PR / (0.25P + R). True negatives are not computed, because the number of possible non-error spans is not well defined. The scoring unit is an extracted source span, not a changed character.

  6. Correction accuracy

    Scored only on true-positive detections. Exact means the replacement equals the reference replacement byte for byte. Normalized compares both after Arabic normalization, which removes tashkeel and tatweel and standardizes alef, hamza and teh-marbuta variants.

  7. Sentence exact match

    The share of rows whose complete output equals the complete reference exactly.

  8. ROUGE

    Diacritics and tatweel removed, both texts tokenized with ArabicWordTokenizer. ROUGE-1 uses multiset unigram overlap; ROUGE-L uses the longest common token subsequence, preserving order. Precision, recall and F1 per sentence, macro-averaged.

  9. Set-based token overlap (legacy)

    Unique shared tokens over the full token-list lengths, macro-averaged per sentence. Retained for traceability, not as a primary accuracy measure.

  10. Throughput

    For every valid corrected output the Lisan tokenizer is applied and the accumulated standardized token count is divided by end-to-end wall-clock request time. This is corrected-text service throughput and includes request and prompt-processing overhead. The Qwen 3.8 27B row is on Groq hardware.

  11. Energy

    kWh per 1,000 processed tokens. L3 measured on an NVIDIA A10 24 GB under the conditions in the Energy section; three-times full-stack factor; anchors from Google's Gemini Apps disclosure and the IFP School per-query values, scaled to 1,000 tokens; tier mapping for models without a published figure; sensitivity across two-times to four-times overhead.

  12. Competitor scores

    Every large language model figure was produced by Lisan Research's own run against the provider's service, with hosting as noted in the roster. None is taken from a provider's published results.

Systems under test

The comparison field is 26 large language model configurations from six providers, alongside L3. GPT-6 Astra was run in two reasoning settings; the report's appendices carry a single GPT-6 Astra row. Grouped as the report groups them:

  • Lisan: L3, the Lisan language engine, scored on its first suggestion only.
  • Anthropic: Claude Opus 5, Claude Sonnet 5, Claude Haiku 4.5, Claude Fable 5.1.
  • OpenAI: GPT-6 Astra, GPT-5.6 Sol, GPT-5.6 Terra, GPT-5.6 Luna, GPT-5.1 (medium reasoning), GPT-5.4 (high reasoning), GPT-4o-mini, gpt-oss-120b (on Groq).
  • Google: Gemini 2.5 Flash, Gemini 3.1 Pro (Preview build), Gemini 3.5 Flash-Lite, Gemini 3.8 Flash, Gemini 3 Flash (Preview build), Gemma 3 27B (on Bedrock).
  • DeepSeek: DeepSeek V4 Flash, DeepSeek V4 Pro.
  • Meta: Llama 3.1 70B (on Bedrock), Llama 3.3 70B, Llama 4 Maverick.
  • Alibaba Qwen: Qwen 3.6 27B and Qwen 3.8 27B, both on Groq.

Every configuration received the same sentences, the same prompt, the same single-output rule and the same evaluator.

Evidence

ClaimScopeStatus
80.29% edit F0.5, first among all configurationsexact-span detection, micro-averaged, single output per systemMeasured
84.54% precision and 66.85% recall; the only system above 80% and 60% togethersame protocolMeasured
89.79% exact and 96.38% normalized correction accuracyconditional on a true-positive detectionMeasured
55.96% sentence exact match, double Claude Fable 5.1's 27.98%per-row, strict, character for characterMeasured
98.84% ROUGE-1 F1 and 98.83% ROUGE-L F1macro-averaged per sentence after normalizationMeasured
52.28 tokens per second, second to Qwen 3.8 27B on Groq at 66.98service throughput including request overheadMeasured
0.000014 kWh per 1,000 tokensNVIDIA A10, saturated batch, accelerator scopeMeasured
0.000042 kWh per 1,000 tokens full stack, approximately 29 to 3,357 times lower than the anchorsthree-times factor; anchors are cited estimates, not measurements of the tested modelsMeasured for L3, cited estimates for the anchors
Every correction carries an explanation; the engine deploys on-premisesWriteX productProduct capability

Limitations

  • The prompt forbade rephrasing, so rows where the reference applies an editorial convention favour the house standard the linguist worked to. Those rows show L3 applying that standard, not the models failing at grammar. Two further rows are prescriptive preposition rules that are common in modern usage; the reference treats them as errors, and a careful reader may disagree.
  • The energy anchors are cited estimates, not measurements of the tested API models. The three-times full-stack factor is the report's choice, and models without a published figure were mapped to an anchor by capability tier as a scenario estimate.
  • Throughput includes request and prompt-processing overhead and reflects each provider's serving stack at the time of the run, not the model in isolation.
  • This is a single benchmark snapshot, 9 September 2026, with one linguist reference per sentence and one output per system. Model APIs change; the numbers describe that snapshot.
  • The evaluation was designed and run by Lisan Research. It has not been independently verified. The definitions, the verbatim prompt and every rate are published in full so that the protocol can be repeated on other material; the benchmark sentences themselves are available to researchers on request.
  • L3 is not perfect. It missed reference edits and proposed changes the linguist did not make; 84.54% precision and 66.85% recall describe both sides.
  • Report version 1.0. Corrections and later snapshots will be versioned on this page.

Full results

Full results, evaluation snapshot 9 September 2026 · version 1.0. Rates only; span counts and total seconds are not published. See the methodology.

Appendix A: exact-span results, every configuration
All rows in F0.5 order. Rates only. best in column
RankSystemNotesPrecisionRecallF1F0.5Correction exactCorrection normalizedSentence exact
1L3single output, first suggestion only84.54 (best in column)66.85 (best in column)74.66 (best in column)80.29 (best in column)89.79 (best in column)96.38 (best in column)55.96 (best in column)
2Claude Fable 5.1single output64.2120.1530.6844.6889.0794.5427.98
3Claude Opus 5single output39.1930.9534.5837.2186.1290.3921.65
4Gemini 3.5 Flash-Litesingle output43.3921.7028.9336.1681.7389.3424.33
5Gemini 3.8 Flashsingle output33.8730.1831.9233.0684.6791.9716.55
6GPT-5.6 Terrasingle output32.5632.6032.5832.5785.4789.5318.49
7Gemini 3.1 Prosingle output, Preview build33.1228.9630.9032.2087.4591.2515.82
8GPT-6 Astrasingle output31.3534.8032.9931.9885.7691.4618.98
9Gemini 3 Flashsingle output, Preview build31.0535.0232.9231.7783.6591.1919.22
10Gemini 2.5 Flashsingle output34.6523.2427.8231.5577.7389.5718.49
11DeepSeek V4 Prosingle output31.6028.0829.7430.8385.8890.9816.30
12GPT-5.6 Lunasingle output28.2836.7831.9829.6586.5390.7215.57
13Claude Sonnet 5single output29.6626.1027.7728.8781.8687.7615.82
14DeepSeek V4 Flashsingle output28.3031.1729.6628.8374.9185.5115.33
15GPT-5.1 (medium reasoning)single output26.6138.3331.4128.3483.0587.937.06
16GPT-5.6 Solsingle output25.0341.0831.1127.1582.8487.4010.95
17GPT-5.4 (high reasoning)single output24.4037.2229.4826.2184.0288.467.54
18Qwen 3.6 27B on Groqsingle output, on Groq24.3124.3424.3324.3276.9280.5412.65
19GPT-4o-minisingle output23.1326.8724.8623.7976.6482.389.73
20Gemma 3 27Bsingle output, on Bedrock21.8135.0226.8823.5969.1881.765.84
21Qwen 3.8 27B on Groqsingle output, on Groq23.4522.4722.9523.2572.5582.3516.06
22gpt-oss-120bsingle output, on Groq21.7426.4323.8622.5472.0877.508.76
23Claude Haiku 4.5single output20.5727.2023.4221.6276.5280.167.54
24Llama 4 Mavericksingle output17.1033.0422.5418.9373.6778.672.68
25Llama 3.1 70Bsingle output, on Bedrock16.5722.9119.2317.5475.4880.297.06
26Llama 3.3 70Bsingle output11.2727.4215.9712.7767.4772.691.70
Appendix B: ROUGE, every configuration
Ordered by ROUGE-1 F1. best in column
RankSystemROUGE-1 PROUGE-1 RROUGE-1 F1ROUGE-L PROUGE-L RROUGE-L F1
1L398.98 (best in column)98.70 (best in column)98.84 (best in column)98.97 (best in column)98.70 (best in column)98.83 (best in column)
2Claude Fable 5.196.7996.3896.5696.7696.3596.54
3Gemini 3.1 Pro96.6296.3596.4796.6096.3396.45
4Gemini 3 Flash96.5196.3796.4296.4796.3396.38
5Gemini 3.8 Flash96.5296.3296.4196.4996.3096.38
6GPT-6 Astra96.5196.3296.4096.4796.2896.36
7Gemini 3.5 Flash-Lite96.5896.1096.3296.5596.0896.30
8Gemini 2.5 Flash96.4596.1196.2796.4296.0896.24
9Claude Opus 595.9896.0495.9995.9395.9995.94
10GPT-5.6 Terra95.8895.8595.8595.8195.7795.77
11GPT-5.6 Luna95.8495.8095.8095.7995.7695.76
12DeepSeek V4 Flash95.6595.6895.6595.6195.6495.61
13DeepSeek V4 Pro95.5495.3995.4495.4795.3195.37
14GPT-5.6 Sol95.2495.4995.3495.1695.4195.26
15GPT-5.1 (medium reasoning)95.5095.2295.3495.4095.1295.24
16Claude Sonnet 595.3095.0795.1795.2495.0295.11
17GPT-5.4 (high reasoning)94.9595.1695.0394.8995.1094.98
18Qwen 3.8 27B on Groq95.1794.8694.9995.0994.7994.92
19Qwen 3.6 27B on Groq94.9394.5294.7094.8994.4894.66
20GPT-4o-mini95.0094.2194.5894.9394.1394.50
21Gemma 3 27B94.3793.7294.0194.2493.6093.89
22gpt-oss-120b94.2193.7593.9694.1393.6793.87
23Claude Haiku 4.594.1793.5193.8194.1393.4893.78
24Llama 3.1 70B94.4793.0893.7294.3092.9193.55
25Llama 4 Maverick93.8992.3593.0793.7992.2592.96
26Llama 3.3 70B93.1089.3091.0792.9689.1690.93
Appendix C: legacy set-based overlap, every configuration
Retained for traceability, not a primary metric. best in column
RankSystemSet PSet RSet F1
1L391.47 (best in column)91.44 (best in column)91.45 (best in column)
2Claude Fable 5.189.0088.8988.93
3Gemini 3.1 Pro88.8588.8688.84
4Gemini 3.8 Flash88.7688.8288.78
5Gemini 3 Flash88.7388.8388.77
6GPT-6 Astra88.6688.7988.71
7Gemini 2.5 Flash88.7388.6388.67
8Gemini 3.5 Flash-Lite88.5788.6188.58
9Claude Opus 588.0888.3488.20
10GPT-5.6 Luna87.9688.1088.02
11GPT-5.6 Terra87.9588.0587.99
12DeepSeek V4 Flash87.6187.8087.64
13Claude Sonnet 587.5287.5487.52
14GPT-5.6 Sol87.3887.5487.45
15DeepSeek V4 Pro87.0887.8287.33
16GPT-5.1 (medium reasoning)87.2787.3487.29
17GPT-5.4 (high reasoning)87.1387.2787.19
18GPT-4o-mini86.4786.5886.50
19Qwen 3.6 27B on Groq86.4386.7986.42
20Gemma 3 27B86.2186.1386.14
21gpt-oss-120b85.9586.0886.00
22Claude Haiku 4.585.9286.1285.99
23Llama 3.1 70B84.9285.1184.96
24Llama 4 Maverick84.4184.7284.54
25Llama 3.3 70B80.6081.3080.92
26Qwen 3.8 27B on Groq74.9677.8875.81
Appendix D: throughput, every configuration
Ranks follow tokens per second; Qwen 3.6 27B on Groq and Claude Opus 5 keep the report order. Total seconds are not published. best in column
RankSystemTokens per secondms per tokenSeconds per sentence
1Qwen 3.8 27B on Groq66.98 (best in column)14.931 (best in column)0.828 (best in column)
2L352.2819.1281.041
3Claude Haiku 4.533.4329.9151.619
4gpt-oss-120b26.4437.8182.022
5GPT-4o-mini23.2742.9792.319
6Llama 3.1 70B23.0043.4852.324
7GPT-5.4 (high reasoning)22.7343.9932.331
8GPT-5.1 (medium reasoning)21.6746.1422.432
9DeepSeek V4 Flash21.1647.2682.585
10DeepSeek V4 Pro20.7148.2942.580
11GPT-5.6 Terra16.2861.4173.353
12Gemini 2.5 Flash16.0562.2983.389
13Claude Fable 5.115.0766.3523.585
14Gemma 3 27B14.5668.6793.726
15GPT-5.6 Luna12.5879.4824.340
16Claude Sonnet 512.2981.3864.379
17GPT-5.6 Sol8.38119.3506.545
18Gemini 3.1 Pro8.05124.2346.762
19Qwen 3.6 27B on Groq7.90126.5618.558
20Claude Opus 57.43134.6697.221
21Gemini 3.8 Flash6.25159.9968.720
22Llama 3.3 70B5.98167.3348.785
23Llama 4 Maverick5.53180.7619.724
24GPT-6 Astra3.93254.39413.874
25Gemini 3.5 Flash-Lite2.91343.28318.663
26Gemini 3 Flash2.43410.77522.399

Cite this report

Please cite the report by its own title, which differs from this page's heading:

Cite this page

Lisan Research (2026). Arabic Language Checking Evaluation: the Lisan Engine and 26 Large Language Model Configurations. Evaluation report, version 1.0, evaluation snapshot 9 September 2026. Lisan. https://lisan.com/company/research/l3/
BibTeX
@techreport{lisan2026l3,
  type = {Evaluation report},
  author = {Lisan Research},
  title = {Arabic Language Checking Evaluation: the Lisan Engine and 26 Large Language Model Configurations},
  institution = {Lisan},
  year = {2026},
  month = sep,
  number = {Version 1.0},
  note = {Evaluation snapshot 9 September 2026. Published 15 September 2026.},
  url = {https://lisan.com/company/research/l3/},
}

Check your own text

The benchmark is ours; your documents are the test that matters. The WriteX editor is free to start, institutions can run L3 on their own infrastructure under a pilot, and methodology questions go to support@lisan.com.

Frequently asked questions

Why F0.5 rather than F1?

Because in language checking an unnecessary change usually costs more than a missed one: it has to be reviewed, rejected and sometimes reverted by hand. F0.5 weights precision above recall to reflect that. We publish F1, precision and recall as well, and L3 leads on all four, so the choice of headline metric does not change the ranking at the top.

Is this evaluation independently verified?

No. Lisan Research designed and ran it. What we can offer instead is the full method: the verbatim prompt, the single-output rule, the exact-span scoring definitions, the normalization steps and every rate in the appendices. Anyone with a linguist-reviewed Arabic set can repeat the protocol, and the WriteX editor is free for that purpose.

Why do the large language models score low on recall?

Several reasons show up in the rows. The scoring is strict: a model earns credit only when it changes exactly the span the linguist changed, and a punctuation edit can be its own span. The prompt forbade rephrasing and diacritics, so editorial-standard rows and classical rules such as hamza seats inside common technical terms were often left untouched. And the profiles differ: Claude Fable 5.1 changed little and was usually right, while GPT-5.6 Sol changed a great deal and was usually not. Recall of 20.15% and 41.08% are the two ends of that range.

Does 96.38% mean L3 is 96% accurate?

No. That rate is conditional: of the spans L3 located correctly, 96.38% carried the right replacement after Arabic normalization. Its recall was 66.85%, and its strict whole-sentence match was 55.96%. Read the three together.

What does the energy comparison rest on?

L3's figure is a direct measurement on an NVIDIA A10 with a three-times full-stack factor applied. The large language model figures are cited anchors: Google's Gemini Apps disclosure and the IFP School per-query estimates, scaled to 1,000 tokens. They are not measurements of the tested API models, and we show the two-times to four-times sensitivity range so the reader can see how much the factor matters.