Newer
Older
AI_Lab_SCRUME_Co / skills / ailab / om-documentation-review / references / review-workflow.md

Схема «код + аудитор»

Одна модель текст проверяет плохо. Работает связка из трёх шагов:

  1. Извлечение — pypdf по страницам, текст в JSON. Проверить длину текста по каждой странице: 0 символов = нет текстового слоя, дальше нужен OCR.
  2. Сверка кодом — всё арифметическое считать Python/Decimal, НЕ моделью. Плюс механические проверки: нумерация таблиц, полный перечень обозначений НТД регуляркой, шифры штампов по страницам, количество×мощность.
  3. Независимый аудитор другого семейства — прямой вызов API (не субагент), модель ДРУГОГО производителя, в промпте выдержки первоисточника и список своих утверждений на перепроверку. Даёт то, что пропустил именно потому, что смотрит иначе: у меня так нашлись метки режимов.

Питфолл API-аудитора: у reasoning-моделей весь max_tokens уходит в reasoning_tokens, content возвращается ПУСТОЙ при completion_tokens == max_tokens. Ставить max_tokens ≥ 16000 и проверять len(content) > 200, иначе платишь впустую.

Лечение — сменить МОДЕЛЬ, а не только поднять лимит. Подъём до 16 тыс. не помогает, если модель всё равно рассуждает весь бюджет: ответ снова пустой при reasoning_tokens == max_tokens. Проверенный рабочий порядок: сначала прогнать неразмышляющую модель того же класса (openai/gpt-6.1-sol отработал 28 с и 3 тыс. символов там, где sonnet вернул ноль дважды), и держать вторую как запасную. В цикле перебирать модели и брать первый ответ с len(content) > 300. Перед прогоном урезать материал до 20–25 страниц по делу: 48 тыс. символов достаточно, а лишние страницы только увеличивают время рассуждений.

Статусы НТД модели не отдавать вообще — она их выдумывает. Только база (ИСС «Техэксперт»/«Кодекс»/ГОСТ Ассистент через MCP): поиск по номеру → чтение текста конкретного пункта по номеру строки.

При сведении двух проверок разбирать расхождения ПО ПЕРВОИСТОЧНИКУ и прямо писать, кто был прав, а не усреднять формулировки. Разные проверки дополняют друг друга: кодовый прогон силён в арифметике и внутренней согласованности, но слеп в статусах НТД и в чужих штампах.