3,583 papers
arXiv:2607.22885 70 24 июля 2026 г. FREE

Поточечная проверка соответствия: как разбить сравнение документа со стандартом на много маленьких вопросов

КЛЮЧЕВАЯ СУТЬ
93 пункта стандарта в одном запросе — модель выдаёт размытое 'в целом соответствует, но есть нюансы'. Разбей на 93 отдельных вопроса — получишь точный вердикт по каждому с цитатой из текста. Метод позволяет проверять регламент компании на соответствие стандарту (ISO 27002, 152-ФЗ, GDPR) без дорогого аудита и без GPU. Фишка: не нужно копировать весь текст известного стандарта в промпт — модель часто помнит формулировки сама, достаточно назвать пункт. Один запрос = один пункт правила = одно бинарное решение да/нет/частично.
Адаптировать под запрос

TL;DR

Если попросить модель оценить весь документ на соответствие большому стандарту сразу — она путается и даёт поверхностный, размытый ответ. Вместо этого документ и стандарт нужно разбить на отдельные пункты и гонять их через модель по одному: один пункт правила — один вердикт "соответствует / не соответствует" с объяснением.

Исследователи проверяли, можно ли автоматизировать аудит политик информационной безопасности (например, на соответствие ISO 27002) с помощью небольших LLM без GPU. Оказалось: даже слабые модели неплохо справляются, если не заваливать их всем стандартом целиком, а идти по чек-листу пункт за пунктом. Второй важный вывод — многие модели уже неплохо "знают" популярные стандарты из своего обучения, поэтому не всегда нужно вставлять весь текст стандарта в промпт — можно опереться на её собственные знания и сильно сэкономить место в контексте.

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


🔬

Схема метода

ШАГ 1: Разбить документ на смысловые фрагменты (главы, разделы, абзацы)
ШАГ 2: Взять список требований/пунктов стандарта — по одному
ШАГ 3: Для каждого требования найти релевантный фрагмент документа
        (можно вручную, можно попросить саму модель найти)
ШАГ 4 (отдельный запрос на каждый пункт): 
        "Соответствует ли документ этому требованию?" → Да/Нет/Частично + цитата + объяснение
ШАГ 5: Собрать все ответы в единый отчёт о пробелах

Шаги 3-4 выполняются отдельным запросом на каждый пункт стандарта — это не один промпт, а серия однотипных запросов.


🚀

Пример применения

Задача: Владелец небольшой компании готовит регламент работы с персональными данными перед проверкой на соответствие 152-ФЗ и хочет заранее найти пробелы, не платя за дорогой аудит.

Промпт (повторяется для каждого требования из чек-листа):

Ты — аудитор по защите персональных данных. 
Вот фрагмент внутреннего регламента компании:
{фрагмент_документа}

Вот конкретное требование закона/стандарта:
{текст_требования}

Оцени только это требование:
1. Документ соответствует ему полностью, частично или не соответствует?
2. Процитируй фрагмент документа, на основании которого сделан вывод.
3. Если не соответствует — укажи, какую формулировку нужно добавить в регламент.

Отвечай только по этому пункту, не смешивай с другими требованиями.

Результат: По каждому пункту закона — короткий вердикт (соответствует/частично/нет), цитата из документа и конкретная рекомендация, что дописать. Если прогнать так весь чек-лист требований, в конце получится таблица-отчёт: какие пункты закрыты, какие нет и что именно исправить.


🧠

Почему это работает

Модель плохо держит в голове много критериев одновременно. Если дать ей весь стандарт (десятки пунктов) и весь документ разом, она невольно обобщает: где-то смешивает требования, где-то теряет детали, где-то просто отвечает поверхностно "в целом соответствует".

Зато модель отлично справляется с узкой, однозначной задачей: сравнить один конкретный текст с одним конкретным правилом и дать бинарный ответ с обоснованием. Это простая операция сопоставления, а не жонглирование десятками условий сразу.

Метод превращает одну большую нечёткую задачу в много маленьких чётких вопросов. У модели просто не остаётся пространства для "размывания" — на каждом шаге она видит только один пункт и один кусок текста.

Рычаги управления: - Формат вывода — можно расширить: попросить не просто "да/нет", а оценку риска (низкий/средний/критичный) для каждого пробела - Опора на знания модели vs вставка текста стандарта — если стандарт популярный (ISO 27001, GDPR, 152-ФЗ), можно не копировать его текст полностью, а просто назвать пункт — модель часто помнит формулировку сама. Экономит место в разговоре - Гранулярность разбивки — чем короче кусок правила, тем точнее вердикт, но тем больше запросов придётся сделать

🚀 Быстрый старт — вставь в чат:

Вот шаблон поточечной проверки документа на соответствие стандарту. Адаптируй под мою задачу: {твоя задача — например, проверка регламента компании на соответствие 152-ФЗ}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит, какой у тебя документ и какой стандарт/чек-лист использовать — потому что без этого не получится разбить проверку на отдельные пункты.


⚠️

Ограничения

⚠️ Только документальное покрытие: метод проверяет, есть ли в тексте документа упоминание нужной меры — но не проверяет, реально ли эта мера работает на практике. Это подтверждают и сами авторы: их "соответствие" означает только "написано в документе", не "внедрено и работает".

⚠️ Зависит от точности нарезки: если релевантный кусок документа не попал в промпт для конкретного требования, модель ошибочно скажет "не соответствует", хотя нужный текст просто есть в другом месте документа.

⚠️ Много запросов: для стандарта с десятками пунктов (в исследовании — 93 контроля ISO 27002) нужно столько же отдельных проверок. Это медленно и расходует много сообщений в диалоге.

⚠️ Не для творческих или субъективных оценок: метод хорош там, где есть чёткий чек-лист с формальными критериями. Для более размытых задач (оценить "качество" или "стиль" документа) поточечная проверка не даёт выигрыша.


🔗

Ресурсы

ReCon: A Resource-Constrained Benchmark for LLM-Based Cybersecurity Compliance Across Ingestion and Retrieval Pipelines — Rohit Negi, Rishik Jain, Soumyo V Chakarborty, Amit Negi, Sandeep K Shukla (IIT Kanpur, IIIT Hyderabad). Стандарт: ISO/IEC 27002:2022. Инструменты в исследовании: Ollama, ChromaDB, tiktoken.


📋 Дайджест исследования

Ключевая суть

93 пункта стандарта в одном запросе — модель выдаёт размытое 'в целом соответствует, но есть нюансы'. Разбей на 93 отдельных вопроса — получишь точный вердикт по каждому с цитатой из текста. Метод позволяет проверять регламент компании на соответствие стандарту (ISO 27002, 152-ФЗ, GDPR) без дорогого аудита и без GPU. Фишка: не нужно копировать весь текст известного стандарта в промпт — модель часто помнит формулировки сама, достаточно назвать пункт. Один запрос = один пункт правила = одно бинарное решение да/нет/частично.

Принцип работы

Не давай модели весь стандарт и весь документ разом — она начнёт обобщать и терять детали. Дай ей ровно один пункт требования и ровно один релевантный кусок текста. У модели просто не остаётся места для размывания ответа — она видит одну пару 'правило-текст' и должна сравнить их, а не жонглировать десятками условий одновременно.

Почему работает

Модель как студент, которому дали сразу 93 вопроса экзамена — он путается и отвечает поверхностно на все сразу. Но если спрашивать по одному вопросу — отвечает чётко. В исследовании проверяли 93 требования ISO 27002 — при поштучной проверке точность выше, чем при попытке оценить документ целиком. Модель отлично справляется с узкой задачей сравнения одного текста с одним правилом — это просто сопоставление, а не жонглирование условиями.

Когда применять

Проверка документов на соответствие чек-листу → регламенты, договоры, политики безопасности, юридические требования → особенно когда список критериев чёткий и формальный (законы, ГОСТы, ISO-стандарты). Не подходит для субъективных оценок типа 'оцени качество текста' или 'насколько убедителен договор' — там нет бинарного критерия для сравнения.

Мини-рецепт

1. Разбей документ: на смысловые куски — главы, разделы, абзацы.
2. Возьми чек-лист по одному пункту: не весь стандарт целиком, а список требований построчно.
3. Найди пару для каждого пункта: релевантный фрагмент документа под конкретное требование — вручную или попроси саму модель найти.
4. Спрашивай узко: для каждой пары отдельный запрос — Соответствует ли документ этому требованию: {текст_требования}? Ответь да/нет/частично, процитируй фрагмент, предложи формулировку если не хватает.
5. Собери отчёт: сведи все ответы в таблицу — какие пункты закрыты, какие нет, что дописать.

Примеры

[ПЛОХО] : Вот весь наш регламент по защите данных и весь 152-ФЗ. Проверь на соответствие и дай общий вывод.
[ХОРОШО] : Вот фрагмент регламента: {текст}. Вот требование статьи 18.1 закона: {текст}. Соответствует полностью, частично или нет? Процитируй фрагмент-основание. Если не соответствует — предложи формулировку для добавления. Отвечай только по этому пункту, не смешивай с другими требованиями.
Источник: ReCon: A Resource-Constrained Benchmark for LLM-Based Cybersecurity Compliance Across Ingestion and Retrieval Pipelines
ArXiv ID: 2607.22885 | Сгенерировано: 2026-07-28 04:34

Проблемы LLM

ПроблемаСутьКак обойти
Модель размывает ответ при оценке по многим критериям сразуДаёшь модели документ и сразу весь список требований (десятки пунктов). Она смешивает критерии, теряет детали, отвечает обобщённо: "в целом соответствует". Ты не понимаешь какие конкретно пункты закрыты, а какие нетРазбей проверку на отдельные запросы. Один запрос — один пункт требования, один релевантный кусок документа, один вердикт "да/нет/частично" с цитатой. Собери все ответы в общую таблицу

Методы

МетодСуть
Поточечная проверка соответствия — один пункт за разРазбей документ на смысловые куски (главы, абзацы). Возьми список требований стандарта по одному. Для каждого требования найди подходящий фрагмент документа и спроси модель отдельным запросом: "соответствует ли этот фрагмент этому требованию — да/нет/частично, цитата, объяснение". Не смешивай несколько требований в одном запросе. Почему работает: модель хорошо справляется с узким сравнением "один текст против одного правила", но теряется когда нужно держать в голове десятки условий одновременно. Когда применять: есть формальный чек-лист (стандарт, закон, регламент) и документ, который нужно проверить на покрытие пунктов. Когда не работает: нужна оценка субъективных или творческих качеств (стиль, качество) — там чёткого бинарного критерия нет. Ограничение: метод проверяет только упоминание меры в тексте, не то, работает ли она реально

Тезисы

ТезисКомментарий
Модель точнее на узкой бинарной задаче, чем на множественной оценкеКогда модель видит один критерий и один текст, это простая операция сопоставления. Когда критериев десятки — модель невольно обобщает и теряет точность на каждом отдельном пункте. Ресурс внимания модели ограничен: чем больше условий сразу, тем слабее проверка каждого. Применяй: любую задачу вида "проверь документ/ответ на соответствие списку правил" дели на серию из одного запроса на правило, а не на один общий запрос со всем списком
📖 Простыми словами

ReCon: A Resource-Constrained Benchmark forLLM-Based Cybersecurity Compliance Across Ingestion and Retrieval Pipelines

arXiv: 2607.22885

Проверка на соответствие стандартам безопасности (комплаенс) — это не творческий конкурс, а жесткая математика соответствий. Проблема в том, что современные LLM работают как невнимательные отличники: если впихнуть в них стостраничный регламент и попросить проверить его на соответствие огромному ГОСТу, они просто «плывут». Модель начинает обобщать, терять детали и выдавать вердикт «в целом все ок», хотя в середине документа зияет дыра размером с бюджет компании. Это происходит из-за ограниченности контекстного внимания: нейронка не может одинаково эффективно фокусироваться на сотне требований одновременно, поэтому она просто «галлюцинирует» уверенность там, где на самом деле не разобралась.

Это как пытаться проверить пачку из тысячи лотерейных билетов, просто взглянув на нее издалека. Вроде все бумажки на месте, цвета похожи, значит, выигрыш где-то там. Но чтобы реально найти призовой билет, тебе нужно брать каждый по отдельности и сверять цифру за цифрой. Если ты попытаешься просканировать взглядом всю стопку сразу, ты гарантированно пропустишь нужный номер, потому что мозг — как и LLM — склонен сглаживать углы и упрощать сложную картинку до понятного пятна.

Метод ReCon решает эту проблему через радикальное дробление: мы берем один конкретный пункт стандарта и один конкретный кусок документа. Модель получает задачу в духе «вот правило А, вот текст Б — ответь, соблюдается ли правило, и обоснуй». Такой подход превращает размытую аналитику в конвейер четких вердиктов. Когда у нейронки перед глазами всего одна сущность, она перестает лажать и начинает замечать мелкие нестыковки, которые раньше тонули в общем объеме текста. Это не просто «лучше работает», это единственный способ получить от AI адекватный аудит, а не филькину грамоту.

Этот принцип универсален и выходит далеко за рамки кибербезопасности. Его можно и нужно внедрять везде, где есть сложные чек-листы: проверка юридических договоров, аудит медицинских протоколов или даже сверка ТЗ с готовым кодом. Вместо того чтобы скармливать модели весь проект целиком, нужно нарезать его на мелкие задачи. Атомарная проверка — это новый стандарт работы с документами, где точность важнее скорости прочтения.

Короче: если хочешь, чтобы AI реально нашел косяки в твоих регламентах, забудь про промпты «проверь этот файл». Разбирай документ на запчасти и заставляй модель выносить индивидуальный приговор по каждому пункту. Да, это дольше и требует больше запросов, но зато ты получишь реальную карту рисков, а не успокоительную галлюцинацию. В вопросах безопасности лучше переплатить за токены, чем потом объяснять регулятору, почему ваш «умный» чат-бот просмотрел критическую уязвимость.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с