INVAR-Agri: Detecting Discrepancies in Multilingual Operator Manuals of Agricultural Implements with a Fine-Tuned LLM
Organizations: Technical University of Munich, Germany; Chair of Agrimechatronics; Munich Institute of Robotics and Machine Intelligence (MIRMI)
Abstract
Operator manuals of agricultural implements are delivered in many languages, and the standards require that competent persons review every translation, which makes this review the bottleneck. This paper presents a proof of concept that compares two training workflows on the same LLM, EuroLLM-1.7B-Instruct, trained on operator manuals of one manufacturer. In approach A, a back-translator translates each language version back into English, and an English reader compares it with the English version. In approach B, a checker reads the English version and the translation together, where the checker reports differences. The test sets contain errors planted in numbers, units, opposite words, obligations, negations, and conditions in 24 languages, and they include unmodified text and meaning-preserving edits for alerts and false alarms. The trained back-translator concealed many planted errors, most of all weakened obligations, while translation-quality scores rose. In contrast, the separately trained checker detected most planted errors, although it was weak for units and for number changes unlike those in training. A check by the author confirmed the concealment. In addition, a simple rule check caught the number and unit changes, but it alerted on harmless rewrites. A check of alerts on real Finnish translations showed that most alerts were false, caused by language-specific wording, so the precision on real text remains a limitation. Within this setting, a trained checker might support, not replace, the review by competent persons, and firmer conclusions need more data.
Figures & tables
| Error type | Planted by | Items | English version | Finnish version, planted or removed words in bold |
|---|---|---|---|---|
| number | rule | after 30 hours of operation. | 30 käyttötunnin jälkeen. 300 käyttötunnin jälkeen. | |
| unit | rule | Retighten the bolts to a tightening torque of 85 Nm. | Kiristä ruuvit kiristystiukkuuteen 85 Nm. Kiristä ruuvit kiristystiukkuuteen 85 N . | |
| polarity | LLM | Switch off the PTO shaft drive. | Kytke nivelakselin käyttö pois päältä. Kytke nivelakselin käyttö päälle . | |
| obligation | LLM | The empty weight of the tractor must be greater than the weight of the machine. | Traktorin omapainon on oltava koneen painoa suurempi. Traktorin omapainon tulisi olla koneen painoa suurempi. | |
| negation | LLM | The electrical supply to the tractor must not be connected when the lighting equipment is being fitted. | Asentaessa valaistusjärjestelmää paikalleen traktorin virransyöttö ei saa olla liitettynä. Asentaessa valaistusjärjestelmää paikalleen traktorin virransyöttö saa olla liitettynä. | |
| condition | LLM | Lubricate all bearings after cleaning. | Voitele kaikki laakerit puhdistuksen jälkeen . Voitele kaikki laakerit. |
| A: back-translator | B: checker | |
| training examples | pairs | examples |
| shown per pass (one per English text) | ||
| optimiser steps per pass | 165 | 109 |
| development measure | chrF | balanced accuracy |
| best pass, seeds 1 / 2 / 3 | 6 / 7 / 5 | 12 / 5 / 13 |
| passes run (early stopping) | 9 / 10 / 8 | 15 / 8 / 16 |
| Models | |
| LLM of both approaches | utter-project/EuroLLM-1.7B-Instruct, revision a25c7fa |
| COMET | Unbabel/wmt22-comet-da, revision 2760a223 |
| helper models | Gemma 4 (26B), gpt-oss-120b, Clef; Ollama 0.35.1 |
| audit of plantings | Claude (Opus 5.5), 192 plantings in the 16 added languages |
| Decoding and training | |
| decoding | greedy; at most 512 new tokens (back-translation), 128 (checker) |
| Untuned | Fine-tuned | Seed range | |
| A: back-translation of the unmodified test text | |||
| COMET, all units | 80.0 | 84.9 | 84.8 to 84.9 |
| COMET, new text | 76.9 | 77.6 | 76.7 to 78.2 |
| chrF, all units | 50.9 | 70.7 | 70.1 to 71.1 |
| chrF, text close to training text | 52.6 | 83.0 | 81.1 to 84.7 |
| chrF, new text | 48.5 | 50.6 | 48.9 to 51.8 |
| A (%) | B (%) | |||
|---|---|---|---|---|
| Error type | untuned | fine-tuned | untuned | fine-tuned |
| number | 97 | 93 | 26 | 85 |
| unit | 100 | 88 | 15 | 62 |
| polarity | 70 | 60 | 17 | 93 |
| obligation | 94 | 30 | 20 | 96 |
| negation | 85 | 66 | 28 | 98 |
| number | unit | without conditions | alerts | false alarms | |
|---|---|---|---|---|---|
| rule check | 100 | 100 | 35 | 0.8 | 37.7 |
| checker | 85 | 62 | 90 | 3.4 | 12.7 |
| rule check + checker | 100 | 100 | 97 | 4.0 | 38.7 |
| A (%) | B (%) | ||||
|---|---|---|---|---|---|
| Similarity group | untuned | fine-tuned | untuned | fine-tuned | |
| exact copy | 1243 | 85 | 61 | 24 | 93 |
| high (at least 0.8) | 662 | 87 | 58 | 26 | 92 |
| partial (0.5 to 0.8) | 689 | 83 | 65 | 19 | 88 |
| new text | 1725 | 90 | 75 | 21 | 89 |
Language Model Error Detection
Language model error detection identifies unreliable answers, reasoning steps, and actions so systems can flag, verify, or repair them.
See all 90 papers