Языковая модель не считает. Она предсказывает, какой текст правдоподобно продолжает предыдущий, и число для неё — такой же фрагмент текста, как слово. На коротких примерах это незаметно: «2 + 2 =» встречалось в текстах столько раз, что правдоподобное продолжение совпадает с верным. На столбце из тридцати четырёх сумм с копейками совпадение перестаёт работать — правдоподобным становится число нужного порядка с правильным началом и убедительным хвостом.

Отсюда главная примета этой ошибки, из-за которой она и опасна: она почти всегда близка к правде. Модель не выдаёт четыре миллиона вместо сорока тысяч — она выдаёт 148 320 ₽ вместо 148 230 ₽. Число правильного порядка, с верными первыми разрядами, в нужной валюте, стоящее в нужном месте документа. Ошибка такого вида проходит и через взгляд бухгалтера, и через любую проверку «на глаз», потому что выглядит абсолютно нормально.

Дальше — рабочая схема, отдельная история про таблицы и модельный расчёт по состоянию на сентябрь 2026 года. Сценарий в примере: приёмка и сверка первичных документов, 620 актов и УПД в месяц, в среднем по 34 строки, средняя сумма документа — 148 000 ₽. Ставки: полная стоимость часа бухгалтера — 844 ₽, инженер-подрядчик — 3 000 ₽/час.

Рабочая схема: кто что делает

Схема известна, скучна и работает без исключений. Модель в ней занимается тем, что умеет надёжно — распознаванием структуры и формулированием, — и не занимается тем, чего не умеет вовсе.

  1. 1
    Числа извлекаются как есть

    Из документа или из учётной системы, без пересчёта и без округления по дороге. Задача модели на этом шаге — найти и разметить: вот номер строки, вот количество, вот цена, вот ставка НДС. Никаких вычислений здесь не происходит, и это принципиально.

  2. 2
    Считает код, а не модель

    Итог строки, итог документа, НДС, скидка, курсовая разница — всё это обычные арифметические операции, которые программа выполняет точно и бесплатно. Ни одно проверяемое число не должно приходить из ответа модели.

  3. 3
    Проверяются контрольные соотношения

    Сумма строк равна итогу документа. НДС равен базе, умноженной на ставку. Сумма сходится с заказом или договором. Каждая проверка — одна строка кода, стоит ноль и даёт не вероятность, а факт.

  4. 4
    Модель формулирует вокруг готовых чисел

    Комментарий к расхождению, письмо поставщику, краткая сводка по документу. Здесь свободный текст уместен и полезен — числа в него подставляются, а не сочиняются.

схема процессаpochemu-model-oshibaetsya-v-arifmetike--01
Правильная схема: модель размечает, код считает и проверяет, модель формулирует текст вокруг чисел

Горизонтальная схема из четырёх блоков со стрелками слева направо. Первый блок «Документ или учётная система», второй «Модель размечает: где количество, цена, ставка», третий «Код считает и проверяет: сумма строк = итог, НДС = база × ставка», четвёртый «Модель формулирует текст вокруг готовых чисел». Между вторым и третьим блоком проведена жирная вертикальная линия с подписью сбоку «здесь числа перестают быть словами». Под вторым и четвёртым блоками мелкая пометка «модель», под первым и третьим — «данные и код». Тонкие чертёжные линии, все надписи по-русски.

Единственная линия, которую нельзя пересекать: модель не производит проверяемых чисел
Строгий формат ответа арифметику не чинит

Частая подмена: подрядчик настраивает строгую схему ответа и считает вопрос закрытым. Схема заставит модель вернуть число в поле «сумма» — и она вернёт число. Но верное ли оно, схема не проверяет и проверить не может: форма и содержание контролируются разными механизмами. Строгий формат обязателен, он просто решает другую задачу.

Таблицы в документах: отдельный источник расхождений

Даже когда все вычисления делает код, числа в него надо сначала правильно прочитать. Таблицы в реальных документах устроены так, что ломают разбор ещё до всякой арифметики — и это чинится на этапе подготовки данных, а не формулировкой запроса к модели.

Что в документеЧто происходит при разбореКак чинится
Объединённая ячейка на несколько строкЗначение либо дублируется по всем строкам, либо теряется во всех, кроме первойРазворачивать объединения на этапе подготовки, до передачи в модель
Таблица переносится на следующую страницуПовторяющаяся шапка читается как обычная строка данных и попадает в суммуОтбрасывать повторы шапки по совпадению с первой строкой
Строка «Итого по разделу» внутри таблицыСкладывается наравне с обычными строками — двойной счёт, итог завышенПомечать и исключать строки подытогов до суммирования
Пустая ячейка вместо повтораСтрока теряет количество или цену и вылетает из расчёта целикомЯвно протягивать значение сверху и фиксировать, что это было сделано
Единицы измерения в отдельной колонкеШтуки и упаковки складываются между собойПриводить к базовой единице по справочнику, а не по тексту документа

Обратите внимание: все пять способов починки относятся к подготовке данных, ни один — к работе модели. Это общее правило для документов: качество результата определяется тем, что вы подали на вход, а не тем, как сформулирован запрос. Подробно эта часть работы разобрана в материале про подготовку базы знаний, и там же объяснено, почему она обычно оказывается самой дорогой в проекте.

Сколько стоит отсутствие контрольных сумм

Для расчёта нужна доля документов с расхождением итога. Она зависит от модели, от качества сканов и от сложности таблиц, поэтому мерить её надо на своём потоке. Возьмём 4 % — величина условная, нужная здесь только чтобы показать структуру расходов.

Без контрольных сумм: 620 документов в месяц
Документы с неверным итогом: 4 % от 62025 в месяц
Из них замечены позже, при сверке с контрагентом: 18 документов × 40 минут бухгалтера12 ч × 844 ₽ — 10 128 ₽/мес
Не замечены и ушли в оплату: 7 документов, расхождение в среднем 1,8 % от 148 000 ₽7 × 2 664 ₽ — 18 648 ₽/мес
Итого28 776 ₽ в месяц, и 65 % суммы — это ошибки, которых никто не увидел
С контрольными суммами, тот же поток
Расхождения ловятся до попадания в учёт: те же 25 документов25 в месяц
Разбор в очереди: сразу видно, какая проверка не сошлась — 8 минут вместо 403,33 ч × 844 ₽ — 2 813 ₽/мес
Разработка: извлечение, расчёт кодом, четыре контрольных соотношения, очередь разбора — 24 ч инженера72 000 ₽ разово
Итого2 813 ₽/мес против 28 776 ₽ — экономия 25 963 ₽/мес, вложение возвращается за 2,8 месяца

Разбор ускоряется с 40 минут до 8 не потому, что документов стало меньше, а потому, что меняется задача. Раньше бухгалтер искал, где разошлось, перебирая строки. Теперь система сразу сообщает: сумма строк даёт 147 940 ₽, в итоге документа стоит 148 230 ₽, расхождение 290 ₽ в строке 17. Дальше идёт не поиск, а решение. Та же логика лежит в основе автоматической сверки документов как отдельного решения.

графикpochemu-model-oshibaetsya-v-arifmetike--02
28 776 ₽ в месяц без контрольных сумм против 2 813 ₽ с ними, две трети потерь — незамеченные ошибки

Две вертикальные полосы. Левая высокая подписана «Без контрольных сумм — 28 776 ₽/мес» и разбита на два сегмента: нижний светлый «замечено при сверке: 18 документов — 10 128 ₽» и верхний заштрихованный «не замечено, ушло в оплату: 7 документов — 18 648 ₽», рядом с верхним выноска «65 % потерь». Правая полоса заметно ниже, подписана «С контрольными суммами — 2 813 ₽/мес», одним сегментом «разбор очереди, 8 минут на документ». Между полосами стрелка с подписью «вложение 72 000 ₽, возврат за 2,8 месяца». Оси в рублях, все надписи по-русски.

Видимая часть потерь — треть суммы. Считать надо по всей

Reasoning-модели: улучшают, но не отменяют проверку

Reasoning-модели тратят дополнительные токены на черновик рассуждения до ответа и за счёт этого заметно лучше справляются с многошаговым счётом: разложить задачу на шаги у них получается надёжнее. Соблазн понятен — заменить модель и закрыть вопрос. Арифметика этого решения выглядит так.

СпособЦена за запрос620 документов × 3 запроса в месяцЧто даёт
Обычная модель без проверок0,94 ₽1 748 ₽/месПравдоподобные числа
Reasoning-модель без проверок3,68 ₽6 845 ₽/месБолее правдоподобные числа
Обычная модель плюс контрольные суммы0,94 ₽1 748 ₽/мес плюс 72 000 ₽ разовоФакт: сошлось или не сошлось

Разница между первой и второй строкой — 5 096 ₽ в месяц, или 61 152 ₽ в год, и покупает она вероятность, а не гарантию. Третья строка стоит столько же, сколько первая, плюс разовое вложение, и покупает определённость. Отсюда рабочее правило: рассуждение — не замена проверке, а способ реже её проваливать. Где reasoning действительно окупается и как ограничить его выделенной веткой, разобрано в материале про reasoning-модели.

Три места, где ошибку в числах особенно легко не заметить

Проценты и доли. Модель уверенно пересчитывает наценку в маржу и наоборот, и результат всегда правдоподобен. Периоды. «За квартал» и «за три месяца с начала года» дают разные числа, а формулировка ответа одинаковая. Единицы. Тысячи рублей, рубли и рубли с копейками в одном документе — классический источник расхождения ровно в тысячу раз, которое, в отличие от прочих, хотя бы заметно. Все три случая лечатся одинаково: считает код, а модель только называет результат словами.

Что проверять при приёмке у подрядчика

  1. 1Попросите показать, где именно выполняется сложение. Правильный ответ — «в коде, вот эта функция». Ответ «модель считает и мы просим её перепроверить» означает, что проверки нет.
  2. 2Дайте документ с намеренной ошибкой в итоге. Строки на одну сумму, итог на другую. Система обязана поймать расхождение и назвать строку, а не пересказать документ.
  3. 3Дайте документ с подытогом внутри таблицы. Самая частая ловушка: проверьте, не сложился ли подытог наравне с обычными строками. Завышение итога ровно на величину подытога — характерный признак.
  4. 4Спросите, что происходит при расхождении. Нужна очередь с ответственным и сроком, а не молчаливое округление до ближайшего похожего значения. Молчаливая правка превращает заметный сбой в незаметную порчу данных.
  5. 5Проверьте документ на двух страницах. Таблица с переносом и повторной шапкой — второй по частоте источник завышенного итога.
сравнениеpochemu-model-oshibaetsya-v-arifmetike--03
Четыре контрольных соотношения: сумма строк, НДС, сверка с заказом и совпадение итогов документа

Четыре горизонтальные строки, в каждой слева формула-равенство, справа результат-отметка. Строки: «Сумма строк = Итог документа», «База × Ставка = НДС», «Итог документа = Сумма заказа», «Итог прописью = Итог цифрами». У первых трёх строк справа стоит галочка, у четвёртой — крест с выноской «расхождение 290 ₽, строка 17». Над всеми строками общий заголовок «Контрольные соотношения», справа вертикальная подпись «стоимость проверки — ноль». Тонкие чертёжные линии, все надписи по-русски.

Каждая проверка — одна строка кода: стоит ноль и отвечает фактом, а не вероятностью

Когда всё это не нужно

  • Числа никуда не идут дальше человека. Черновик коммерческого предложения, который менеджер всё равно правит и перепроверяет перед отправкой, в контрольных суммах не нуждается: проверка уже есть, она называется менеджером.
  • Меньше 100 документов в месяц. При 4 % расхождений это 4 документа, около 2 250 ₽ ручного разбора. Контур на 72 000 ₽ возвращался бы больше двух лет. Достаточно одной проверки — сумма строк против итога, — и она делается за пару часов.
  • Документы приходят структурированными. Всё, что доехало по электронному документообороту, уже содержит числа в разобранном виде: считать нечего, распознавать нечего. Модель здесь нужна для другого — и об этом мы писали в разборе ЭДО, подписи и МЧД.
  • Задача не про числа, а про смысл. Найти в договоре условие об ответственности, сравнить две редакции, собрать краткое содержание встречи — здесь модель работает по назначению, и никакой арифметики в результате нет. Как разбирать такие документы по частям, разобрано в соседнем материале.

Модель ошибается в арифметике не потому, что она слабая, а потому, что её никто не просил считать — её просили продолжить текст. И она продолжила его правдоподобно.