Претензионная работа — это перепечатывание
Вагон сняли с поезда по неисправности. Виноват тот, кто делал последний ремонт — значит, ему претензия. Чтобы её написать, юрист открывает пакет сканов и вручную вытаскивает оттуда даты, номера деталей, суммы по каждой строке ремонта.
Дальше идут решения: какие именно работы относятся к вине подрядчика, а какие компания оплатила бы и так. Сложить убытки. Найти подписанта в доверенности. Подставить нужную статью ГК. И перенести всё в шаблон, ничего не перепутав.
Одна претензия — часы. Пакетов — поток. А цена ошибки высокая: не то юрлицо в шапке или не та сумма — и документ не работает.
Сначала система понимает, что ей вообще принесли
Пакет приходит одним PDF, без оглавления и в произвольном порядке. Поэтому первый шаг — разложить его по страницам и определить тип каждой.
Многостраничные документы система склеивает обратно: три листа одной ведомости она считает одним документом. В пакете с картинки шестнадцать страниц и десять разных типов бумаг — система разложила их по типам и вытащила четырнадцать наборов фактов.
Факты сгруппированы по документам — видно, из какой бумаги взялась каждая цифра.
Семь стадий: от скана до Word
Конвейер линейный: каждая стадия делает одну вещь и передаёт результат дальше. Там, где задача просто считается, языковая модель не нужна вообще — эти шаги делает обычный код.
Модель думает. Python проверяет за ней арифметику
Языковая модель хорошо понимает смысл документа, но её нельзя оставлять наедине с деньгами. Поэтому после анализа дела включается отдельная проверка на обычном коде: она пересчитывает суммы, ищет задвоения и выкидывает нулевые строки.
Вот реальный прогон. Модель посчитала убытки в 161 тысячу — и дважды учла стоимость новой детали: один раз в запчастях, второй раз внутри строк ремонта. Проверка это поймала.
Лучше остановиться, чем выдать красивую неправду
Юридический документ либо верный, либо бесполезный. Поэтому система не пытается собрать претензию любой ценой: если ключевого документа нет или скан не читается, дело помечается ошибкой и уходит человеку.
Все вызовы модели идут с нулевой температурой: один и тот же пакет даёт один и тот же результат. Это важнее «красивого» текста — юрист должен получать предсказуемый документ.
Любую цифру можно поправить прямо в расчёте
Система не подменяет юриста и не прячет от него логику. Каждое значение в расчёте кликается и правится руками, итог пересчитывается сам, а правки уезжают в итоговый Word.
Так же правятся строки ремонта, список запчастей и ставки аренды. Юрист занимается решением — суммы система складывает сама.
На выходе — готовый документ
Претензия собирается из одиннадцати блоков. Пять — по шаблону, там где текст обязан быть одинаковым от дела к делу: шапка, сумма, таблица расчёта, требование, список приложений.
Шесть пишет модель — там, где нужно связно изложить обстоятельства конкретного дела и подобрать основание. Каждый блок правится отдельно, и правки уходят в итоговый Word.
Обстоятельства, договор, правовое основание, устранение, ставки аренды и итог модель пишет по фактам, извлечённым из пакета. По номерам, датам и суммам конкретных бумаг.
Того, чего в документах нет, система не дописывает. Пропуск остаётся видимой меткой {…} — юрист сразу видит, что подставить руками.
Тот же конвейер подходит для других документов
Вагоны здесь — только предметная область. Система устроена просто и повторяемо: разложить пакет, понять типы, вытащить факты, принять решение, собрать документ, проверить цифры кодом.
Меняются справочники, формы документов и логика расчёта. Конвейер остаётся тем же.
Соберём такой же конвейер под ваш документооборот
Начинаем с одного типа документа и одного расчёта: показываем работающий прогон на ваших реальных пакетах, а потом расширяем. Сроки и стоимость считаем до старта.