AiDevTeam | ГК СЕРКОНС

Модуль интеллектуальной
сверки характеристик

Нейросетевая автоматизация проверки паспорта товара на соответствие области аккредитации лаборатории

Версия 2.020.03.2026

Коммерческое предложение + ТЗ: Модуль интеллектуальной сверки характеристик

Нейросетевая автоматизация проверки паспорта товара на соответствие области аккредитации лаборатории


Версия: 2.0 Дата: 20 марта 2026 Клиент: ГК СЕРКОНС Подготовил: AiDevTeam


Содержание

Часть I: Коммерческое предложение

  1. О проекте
  2. Текущие процессы и боли
  3. Архитектура решения
  4. Варианты соблюдения 152-ФЗ
  5. Пакеты услуг
  6. Сравнение пакетов
  7. Ядро системы
  8. Дополнительные опции
  9. Матрица цен и конфигурации
  10. Наша рекомендация
  11. Бизнес-выгоды (ROI)

Часть II: Техническое задание

  1. Границы MVP
  2. Компоненты системы
  3. Диаграмма потоков данных
  4. Диаграмма последовательности
  5. Диаграмма скученности связей
  6. Модель данных
  7. API-спецификация
  8. Пользовательские сценарии
  9. Модель угроз (STRIDE)
  10. План реагирования на инциденты
  11. Команда проекта
  12. Дорожная карта
  13. Предварительные исследования
  14. Стратегия тестирования
  15. Развёртывание и инфраструктура
  16. Критерии приёмки
  17. Нефункциональные требования

Часть III: Коммерческие условия

  1. Как мы работаем
  2. Условия оплаты
  3. Ежемесячные расходы
  4. Риски и митигация
  5. Гарантии
  6. Требования к клиенту
  7. Что не входит
  8. Открытые вопросы
  9. Перспективы развития
  10. Глоссарий
  11. Следующие шаги

Главное

Этот раздел -- краткая выжимка для принятия решения. Детали -- в разделах ниже.

Ситуация

ГК СЕРКОНС объединяет 6 испытательных лабораторий, аккредитованных по ТР ТС 004/020/037. Ежедневно эксперты вручную сверяют паспорта товаров с областями аккредитации -- это 50 000+ страниц документов и 2 025 стандартов. Автоматизация этого процесса высвободит экспертов для задач, где их квалификация действительно необходима.

Что вы получите

# Результат Эффект
1 Автоматическая сверка за <30 сек Вместо 40 минут ручной проверки -- экспертное заключение с визуальными доказательствами
2 Детерминированная математика Ноль ошибок в единицах измерения и расчёте TUR 4:1 -- LLM не считает, считает калькулятор
3 Обнаружение скрытых стандартов Детектор находит +21 стандарт ЭМС, которые эксперт мог пропустить (Wi-Fi, BT, NFC)
4 Ресурсная карта 6 лабораторий При несоответствии одной лаборатории система находит подходящую из остальных

Три пакета -- одна платформа

Мы предлагаем три прогрессивных пакета. Каждый включает ядро системы и всё из предыдущего. Стандарт даёт базовую сверку с VLM и калькулятором за 6--7 недель. Бизнес добавляет рекурсивный пайплайн ГОСТов, кэширование и webhook в ERP. Enterprise -- fine-tuning моделей, ресурсную карту и SLA.

Дополнительно вы выбираете инфраструктурный вариант по соблюдению 152-ФЗ -- от полного On-Premise в РФ до облака без ограничений.

Инвестиция

Пакет C: Облако B: + Анонимизация A: On-Premise РФ Срок
Стандарт 980 000 1 215 000 1 465 000 6--7 нед
Бизнес 1 360 000 1 595 000 1 845 000 9--10 нед
Enterprise 1 785 000 2 020 000 2 270 000 12--14 нед

Наша рекомендация: Бизнес + Вариант B (облако с анонимизацией) -- оптимальный баланс качества моделей, соблюдения 152-ФЗ и стоимости. 1 595 000 руб, 11--12 недель.

Почему AiDevTeam

  • Метрология, а не чат-бот. Пайплайн, где LLM никогда не считает -- вычисления делает калькулятор Pint v0.25.2 с международным стандартом TUR 4:1
  • 66+ источников исследований. 4 Deep Research по VLM, RLM, compliance automation и российским PDF -- каждый выбор обоснован
  • Прозрачная калькуляция. Ставка, часы и стоимость каждой роли -- никаких «от» и «приблизительно»
  • Три варианта 152-ФЗ. Вы сами выбираете баланс между compliance, качеством моделей и бюджетом

Как читать этот документ

Аудитория Разделы Что узнаете
Руководство Главное, 1--2, 5--6, 9--11 Пакеты, цены, ROI, рекомендация
Технические специалисты 3--4, 12--21 Архитектура, диаграммы, модель угроз, API
Юристы / Закупки 4, 29--35 152-ФЗ, оплата, гарантии, SLA

1. О проекте

Модуль интеллектуальной сверки характеристик -- нейросетевая система автоматической проверки паспорта товара на соответствие области аккредитации испытательной лаборатории.

Заказчик: ГК СЕРКОНС -- 6 испытательных лабораторий, аккредитованных по ТР ТС 004 (низковольтное оборудование), ТР ТС 020 (электромагнитная совместимость), ТР ТС 037 (ограничение опасных веществ).

Масштаб задачи:

Параметр Значение
Страниц ОА ИЛ 50 000+
Стандартов 2 025
Лабораторий 6
Технических регламентов ТР ТС 004, 020, 037
База ГОСТов ТЕХЭКСПЕРТ

Ключевая технология: Гибрид VLM (Vision Language Model) + RLM (Reasoning Language Model). VLM «видит» документ как изображение и сохраняет структуру таблиц. RLM строит цепочку рассуждений по графу ГОСТов. Математику выполняет детерминированный калькулятор -- LLM не считает.


2. Текущие процессы и боли

Проблема Влияние Решение
Ручная сверка 30--40 мин на документ 60%+ времени эксперта на рутину Автосверка за <30 сек с bounding boxes
Ошибки пересчёта единиц (мкм/мм, кВ/В) Некорректный вердикт Калькулятор Pint v0.25.2, LLM не участвует
Скрытые стандарты ЭМС не замечаются Товар с Wi-Fi/BT требует +21 стандарт 3-уровневый детектор: regex, ML, LLM
Гомоглифы (О/O/0, Р/P, С/C) Одна буква меняет весь стандарт Unicode-нормализация + валидация по ТЕХЭКСПЕРТ
Рекурсивные ссылки между ГОСТами Эксперт теряет цепочку ссылок LangGraph (3 уровня, recursion_limit=5)
Разные форматы (PDF, скан, Word, Excel) Таблицы «съезжаются» при парсинге VLM видит документ как изображение
Версионирование ОА (Акк/Расш/Сокр) Сокращение отменяет данные Аккредитации Логика приоритетов с учётом дат

3. Архитектура решения

3.1. Общая схема

flowchart TB
    subgraph Input["Входные данные"]
        DOC["Документы\nPDF / фото / Word"]
        OA["Область\nаккредитации"]
        GOST["ТЕХЭКСПЕРТ\nБаза ГОСТов"]
    end

    subgraph Ingestion["Ingestion Layer"]
        PARSE["Document Parser\nPyMuPDF4LLM"]
        OCR["VLM OCR\nPaddleOCR-VL"]
        NER["NER Anonymizer\nSpaCy + Presidio"]
    end

    subgraph Core["Reasoning Core"]
        LG["LangGraph\nOrchestrator"]
        CALC["Pint Calculator\nTUR 4:1"]
        DET["Detector\nRegex+ML+LLM"]
        REC["GOST Recursion\n3 уровня"]
    end

    subgraph Output["Результаты"]
        ERP["ERP 1С\nWebhook"]
        BBOX["Bounding Boxes\nVisual Grounding"]
        TREE["Decision Tree\nExplainable AI"]
    end

    DOC --> PARSE
    OA --> PARSE
    GOST --> REC
    PARSE --> OCR
    OCR --> NER
    NER --> LG
    LG --> CALC
    LG --> DET
    LG --> REC
    REC --> LG
    LG --> ERP
    LG --> BBOX
    LG --> TREE

    style Input fill:#172554,stroke:#3b82f6
    style Ingestion fill:#14532d,stroke:#22c55e
    style Core fill:#78350f,stroke:#f59e0b
    style Output fill:#3b0764,stroke:#a855f7

5 этапов обработки:

  1. Ingestion -- парсинг всех форматов (PyMuPDF4LLM), OCR фотокопий (PaddleOCR-VL 0.9B), опционально NER-анонимизация (ruRoBERTa 355M)
  2. VLM Processing -- извлечение структурированных данных из таблиц с bounding boxes (Qwen2.5-VL 7B)
  3. RLM Orchestration -- граф LangGraph 1.1 маршрутизирует: калькулятор, детектор, рекурсия ГОСТов
  4. Verification -- детерминированная проверка единиц (Pint), точности (TUR 4:1), скрытых ограничений
  5. Output -- JSON в ERP (1С) через webhook + визуальные доказательства (bounding boxes)

Принципы:

  • LLM не считает -- вызывает калькулятор через Tool-Calling
  • Секретные данные -- только локально (вариант A) или через NER-анонимизацию (вариант B)
  • Неоднозначность → эскалация на эксперта, не ИИ

3.2. Технологический стек

Технология Версия Роль
LangGraph 1.1.0 Оркестрация графа
FastAPI 0.115+ API Gateway
PaddleOCR-VL 0.9B VLM OCR
Qwen2.5-VL 7B Bounding Boxes
Pint 0.25.2 Метрология
SpaCy ru_core_news_lg 3.8 NER (F1=0.83) + Presidio
GPT-5 Mini latest Reasoning (B/C)
Claude Sonnet 4.6 Эскалация
PostgreSQL 17 БД + pgvector
Redis 7.x Кэш
Celery 5.4+ Async-очередь
Langfuse 3.x Мониторинг

4. Варианты соблюдения 152-ФЗ

Персональные данные в паспортах товаров (контакты производителя, номера сертификатов) подпадают под 152-ФЗ «О персональных данных». Мы предлагаем три варианта инфраструктуры с разным балансом compliance, стоимости и качества.

4.1. Сравнение вариантов

Параметр C: Облако B: Облако + NER A: On-Premise РФ
152-ФЗ Нет Частичное (приказ РКН N 140) Полное
Качество моделей Максимальное Высокое Хорошее (open-source)
Доступные LLM GPT-5, Claude, Gemini GPT-5, Claude (через NER) Qwen2.5-VL, Saiga
NER-модель -- SpaCy ru (F1=0.83) + Regex --
Надбавка Базовая цена +235 000 руб +485 000 руб
Доп. срок -- +2 недели +3--4 недели
Расходы/мес 15--25 тыс (API) 20--30 тыс 5--10 тыс (электричество)
Масштабирование Неограниченное Неограниченное Ограничено GPU
Латентность (p95) <3 сек <5 сек <10 сек
Уровень защиты ПД Базовый Высокий Максимальный

4.2. Вариант C -- Облако без ограничений

Все компоненты работают через облачные API (OpenAI, Anthropic, Google). Максимальное качество моделей, минимальная стоимость разработки.

Когда подходит: В документах нет персональных данных, подпадающих под 152-ФЗ, или данные уже обезличены на стороне заказчика.

4.3. Вариант B -- Облако + NER-анонимизация

Перед отправкой в облачные LLM данные проходят через гибридный NER-анонимизатор. ФИО, ИНН, контакты, номера сертификатов заменяются на псевдонимы (Faker ru_RU). Результат де-анонимизируется перед записью в ERP.

Стек анонимизации (по результатам DR5):

Компонент Технология Метрика
NER-модель SpaCy ru_core_news_lg F1=0.83, Precision=0.84, Recall=0.81
Regex-детектор Custom (ИНН, ОГРН, сертификаты) 100% на структурированных ПД
Фреймворк Microsoft Presidio Open-source, Docker-ready
Замена Faker (ru_RU) Сохраняет контекст для LLM
Mapping Redis (TTL 24h) Быстрая де-анонимизация

Пайплайн:

Документ → SpaCy NER + Regex → Presidio Anonymizer → Faker замена → Облачная LLM → Reverse Mapping → ERP

Юридическое обоснование: Метод «введение идентификаторов» (псевдонимизация) соответствует приказу Роскомнадзора N 140 от 19.06.2025, вступившему в силу 01.09.2025. Таблица соответствия хранится в Redis внутри контура и не передаётся в облако.

Когда подходит: Нужен доступ к лучшим моделям, но данные содержат ПД. Компромисс качество/compliance.

4.4. Вариант A -- On-Premise в РФ

Полный стек на GPU-серверах заказчика внутри контура РФ. Только open-source модели: PaddleOCR-VL, Qwen2.5-VL, Saiga/Vikhr.

Требования к оборудованию:

Компонент Минимум Рекомендация
GPU NVIDIA A10 (24 GB) NVIDIA A100 (80 GB)
RAM 64 GB 128 GB
SSD 500 GB NVMe 1 TB NVMe
CPU 16 ядер 32 ядра

Когда подходит: Строгие требования 152-ФЗ, данные не покидают контур. Готовность инвестировать в GPU.


5. Пакеты услуг

Каждый пакет включает ядро системы (раздел 7) и всё из предыдущего пакета. Цены указаны для варианта C (облако). Надбавки за инфраструктурный вариант B/A -- в разделе 9.

5.1. Стандарт -- Базовая сверка

Работающий продукт: загрузка документа → автоматическая сверка → результат в ERP.

# Модуль Описание Критерий приёмки
Я1--Я9 Ядро системы Полное ядро (см. раздел 7) Все критерии ядра выполнены
С1 Парсинг всех форматов PDF, фото, Word, Excel → структура 95%+ документов парсятся без ошибок
С2 VLM OCR PaddleOCR-VL + Qwen2.5-VL Точность >= 94% (OmniDocBench)
С3 Калькулятор единиц Pint v0.25.2, пересчёт 150+ единиц 100% детерминированных вычислений
С4 Анализ точности TUR 4:1 Международный метрологический стандарт PASS/FAIL с обоснованием
С5 Детектор ограничений (Tier 1) Regex + таксономия технологий Обнаружение Wi-Fi, BT, NFC, Zigbee
С6 Bounding Boxes Подсветка спорных значений в документе Визуальные доказательства для эксперта
С7 JSON в ERP Webhook + структурированный результат Интеграция с 1С за <= 5 сек

Стоимость (вариант C): 980 000 руб Срок: 6--7 недель | Часы: 209 ч


5.2. Бизнес -- Рекурсивный пайплайн

Включает всё из «Стандарт» +

# Модуль Описание Критерий приёмки
Б1 Автопарсер ГОСТов Локальная PostgreSQL + pgvector + импорт из ТЕХЭКСПЕРТ (DR6) Автозагрузка стандартов, полнотекстовый + семантический поиск
Б2 Рекурсивный пайплайн LangGraph, 3 уровня ГОСТов Корректная обработка цепочек ссылок
Б3 Гибридный LLM Облако (reasoning) + локальный (NER) Автоматический роутинг по типу задачи
Б4 Версионирование ОА Акк / Расш / Сокр с приоритетами Корректный учёт дат и типов документов
Б5 Детектор (Tier 2--3) ML-классификатор + LLM F1 >= 0.90 на тестовом наборе
Б6 Redis-кэш Повторные запросы < 10 сек Cache hit rate >= 60%
Б7 Webhook в ERP Push-уведомления + async-очередь Доставка за <= 3 сек, retry при ошибке
Б8 Полный набор тестов Unit + integration + e2e Покрытие >= 80%

Стоимость (вариант C): 1 360 000 руб Срок: 9--10 недель | Часы: 286 ч

Бонусы (бесплатно):

  • Миграция существующих справочников ГОСТов из Excel в систему (обычно ~50 000 руб)
  • Настройка Langfuse-мониторинга с 3 дашбордами (обычно ~35 000 руб)

Общая стоимость бонусов: ~85 000 руб


5.3. Enterprise -- Fine-Tuning + SLA

Включает всё из «Бизнес» +

# Модуль Описание Критерий приёмки
Е1 Fine-Tuning Дообучение моделей под ТР ТС 004/020/037 Прирост точности >= 5 п.п. на тестовом наборе
Е2 Ресурсная карта 6 лабораторий ГК, автоподбор При FAIL лаборатории -- альтернатива за < 5 сек
Е3 Explainable AI Интерактивное дерево решений Визуальная цепочка: товар → требование → вердикт
Е4 Pre-filter Быстрый текстовый классификатор Экономия 60--80% GPU на простых случаях
Е5 SLA и поддержка Техподдержка 8/5, SLA 99% uptime Реакция <= 4 часа, восстановление <= 24 часа

Стоимость (вариант C): 1 785 000 руб Срок: 12--14 недель | Часы: 377 ч

Бонусы (бесплатно):

  • Всё из «Бизнес» +
  • Обучение 5 экспертов работе с системой (обычно ~60 000 руб)
  • 2 кастомных отчёта по шаблону заказчика (обычно ~45 000 руб)
  • Бонус на будущую разработку: 150 000 руб на доработки и новые модули

Общая стоимость бонусов: ~340 000 руб (бонусы ~190 000 руб + бонус на разработку 150 000 руб)

Условия бонуса на разработку:

  • Действует 12 месяцев с момента запуска
  • Покрывает не более 50% от суммы нового заказа
  • Применяется к: новые модули, интеграции, кастомизации, расширения

6. Сравнение пакетов

Возможность Стандарт Бизнес Enterprise
Docker + CI/CD + FastAPI V V V
Парсинг всех форматов V V V
VLM OCR + Bounding Boxes V V V
Калькулятор единиц (Pint) V V V
Анализ точности TUR 4:1 V V V
Детектор Tier 1 (regex) V V V
JSON в ERP (1С) V V V
Автопарсер ТЕХЭКСПЕРТ -- V V
Рекурсивный пайплайн (3 ур.) -- V V
Гибридный LLM -- V V
Версионирование ОА -- V V
Детектор Tier 2--3 (ML+LLM) -- V V
Redis-кэш (<10 сек) -- V V
Webhook + async-очередь -- V V
Полный набор тестов (80%+) -- V V
Fine-Tuning под ТР ТС -- -- V
Ресурсная карта (6 лаб.) -- -- V
Explainable AI (дерево решений) -- -- V
Pre-filter (экономия GPU) -- -- V
SLA 99% + поддержка 8/5 -- -- V
Цена (вариант C) 980 000 1 360 000 1 785 000
Срок 6--7 нед 9--10 нед 12--14 нед

7. Ядро системы

Ядро -- фундамент, который входит в каждый пакет. Без него система не работает.

# Компонент Описание
Я1 Инфраструктура Docker, CI/CD, FastAPI, PostgreSQL 17
Я2 Document Ingestion Единый интерфейс парсинга всех форматов
Я3 VLM Processor OCR + извлечение структуры таблиц
Я4 RLM Orchestrator Граф LangGraph 1.1 StateGraph
Я5 Калькулятор Pint v0.25.2 + ГОСТ-маппинг единиц
Я6 Анализатор точности TUR 4:1, метрологический стандарт
Я7 Базовый детектор Regex-паттерны + таксономия технологий
Я8 ERP-интеграция JSON-результат через REST API
Я9 Мониторинг Langfuse + логирование решений

8. Дополнительные опции

Независимые модули -- можно добавить к любому пакету.

# Опция Что даёт Часы Стоимость
О1 Telegram-бот для экспертов Push-уведомления о результатах сверки в реальном времени 45 ч 195 000
О2 Дашборд аналитики Статистика сверок, тренды, bottleneck-анализ (Grafana) 55 ч 235 000
О3 Мультитенантность Отдельные настройки, пороги и модели для каждой лаборатории 65 ч 280 000
О4 Автообновление ГОСТов Scraper ТЕХЭКСПЕРТ + версионирование + уведомления об изменениях 50 ч 215 000
О5 Обучающий модуль Пользовательская документация + 5 видеогайдов + FAQ-бот 35 ч 150 000

Расчёт стоимости опций: Часы x средневзвешенная ставка команды. Маржинальность опций соответствует маржинальности пакетов.


9. Матрица цен и конфигурации

Итоговая цена = Пакет + Инфраструктурный вариант + Опции (по выбору).

9.1. Базовые пакеты + инфраструктура

C: Облако B: + Анонимизация A: On-Premise РФ
Стандарт 980 000 1 215 000 1 465 000
Бизнес 1 360 000 1 595 000 1 845 000
Enterprise 1 785 000 2 020 000 2 270 000

9.2. Что входит в надбавку за инфраструктуру

Вариант B (+235 000 руб):

  • Разработка NER-анонимизатора (SpaCy + Presidio)
  • Пайплайн анонимизации/де-анонимизации
  • Тестирование качества анонимизации (precision/recall)
  • Дополнительно: +52 часа, +2 недели к сроку

Вариант A (+485 000 руб):

  • Развёртывание GPU-инфраструктуры на серверах заказчика
  • Настройка Docker/K8s для on-premise
  • Замена облачных API на open-source модели (Qwen2.5-VL, Saiga)
  • Оптимизация inference (quantization, batching)
  • Нагрузочное тестирование на целевом оборудовании
  • Дополнительно: +103 часа, +3--4 недели к сроку

9.3. Примеры конфигураций

Конфигурация Состав Срок Цена
Минимум Стандарт + C 6--7 нед 980 000
Оптимум Бизнес + B 11--12 нед 1 595 000
Оптимум + аналитика Бизнес + B + О2 12--13 нед 1 830 000
Максимум Enterprise + A 16--18 нед 2 270 000
Максимум + всё Enterprise + A + О1--О5 20--22 нед 3 345 000

10. Наша рекомендация

Для вашей ситуации мы рекомендуем Бизнес + Вариант B (облако с анонимизацией):

  1. Рекурсивный пайплайн -- при 2 025 стандартах и рекурсивных ссылках между ГОСТами базовый Стандарт будет пропускать цепочки зависимостей
  2. Автопарсер ТЕХЭКСПЕРТ -- ручной импорт ГОСТов при вашем объёме нереалистичен
  3. Анонимизация (вариант B) -- доступ к GPT-5 и Claude для reasoning, при этом ПД не покидают контур в открытом виде
  4. Webhook + кэш -- при 50 000+ страниц ОА критична скорость и надёжность доставки результатов в ERP

Стоимость: 1 595 000 руб | Срок: 11--12 недель

Если бюджет позволяет -- рассмотрите добавление опции О2 (Дашборд аналитики, +235 000 руб). При 6 лабораториях аналитика bottleneck-ов окупится за 2--3 месяца.


11. Бизнес-выгоды (ROI)

# Выгода Описание
1 Экономия времени экспертов 40 мин → 30 сек на сверку. При 20 сверках/день = 13 часов/день экономии на 6 лабораторий. ~260 000 руб/мес экономии на ФОТ
2 Снижение риска аккредитации Детерминированная математика + детектор скрытых стандартов исключают ошибки, стоящие миллионы при потере аккредитации
3 Ресурсная карта При FAIL одной лаборатории система находит альтернативу из 5 остальных -- клиент не уходит, а перенаправляется
4 Масштабируемость Платформа обрабатывает любой объём без найма дополнительных экспертов
5 Explainable AI Прозрачная цепочка решений для аудита и сертификации -- каждый вердикт обоснован

Окупаемость: При экономии ~260 000 руб/мес пакет «Бизнес + B» (1 595 000 руб) окупается за 6--7 месяцев.


Часть II: Техническое задание


12. Границы MVP

flowchart TB
    subgraph core["Ядро (Я1--Я9)"]
        Y1["Я1 Инфра"]
        Y2["Я2 Ingestion"]
        Y3["Я3 VLM"]
        Y4["Я4 RLM"]
        Y5["Я5 Калькулятор"]
        Y6["Я6 TUR"]
        Y7["Я7 Детектор"]
        Y8["Я8 ERP"]
        Y9["Я9 Мониторинг"]
    end

    subgraph standard["Стандарт (С1--С7)"]
        S1["С1 Форматы"]
        S2["С2 VLM OCR"]
        S3["С3 Pint"]
        S4["С4 TUR 4:1"]
        S5["С5 Детектор T1"]
        S6["С6 Bbox"]
        S7["С7 JSON ERP"]
    end

    subgraph business["Бизнес (Б1--Б8)"]
        B1["Б1 ТЕХЭКСПЕРТ"]
        B2["Б2 Рекурсия"]
        B3["Б3 Гибрид LLM"]
        B4["Б4 Версион. ОА"]
        B5["Б5 Детектор T2-3"]
        B6["Б6 Кэш"]
        B7["Б7 Webhook"]
        B8["Б8 Тесты"]
    end

    subgraph enterprise["Enterprise (Е1--Е5)"]
        E1["Е1 Fine-Tune"]
        E2["Е2 Рес. карта"]
        E3["Е3 Explainable"]
        E4["Е4 Pre-filter"]
        E5["Е5 SLA"]
    end

    core --> standard
    standard --> business
    business --> enterprise

    style core fill:#14532d,stroke:#22c55e
    style standard fill:#172554,stroke:#3b82f6
    style business fill:#78350f,stroke:#f59e0b
    style enterprise fill:#3b0764,stroke:#a855f7

13. Компоненты системы

13.1. Document Ingestion (Я2 + С1)

Назначение: Единый интерфейс для парсинга документов любого формата в структурированное представление.

Алгоритм:

flowchart TB
    IN["Входной файл"] --> DETECT["Определение формата"]
    DETECT -->|PDF| PDF["PyMuPDF4LLM\nИзвлечение текста + таблиц"]
    DETECT -->|Фото/Скан| SCAN["PaddleOCR-VL\nOCR + распознавание"]
    DETECT -->|Word| DOCX["python-docx\nСтруктурный парсинг"]
    DETECT -->|Excel| XLS["openpyxl\nТаблицы → JSON"]
    PDF --> NORM["Нормализация"]
    SCAN --> NORM
    DOCX --> NORM
    XLS --> NORM
    NORM --> OUT["Unified Document\nJSON"]

    style IN fill:#172554,stroke:#3b82f6
    style OUT fill:#14532d,stroke:#22c55e

Технологии: PyMuPDF4LLM (PDF), PaddleOCR-VL 0.9B (сканы), python-docx (Word), openpyxl (Excel)

Пример: PDF паспорта товара (3 страницы, 2 таблицы) → JSON с полями: manufacturer, model, parameters[], certifications[], с координатами каждого значения в исходном документе.

13.2. VLM Processor (Я3 + С2 + С6)

Назначение: Извлечение данных из таблиц с сохранением структуры и привязкой к координатам (bounding boxes).

Почему VLM, а не классический OCR: Таблицы в фотокопиях «съезжаются» при текстовом парсинге. VLM видит документ как изображение и сохраняет пространственные связи между ячейками.

Бенчмарки:

Модель OmniDocBench Таблицы Рукописный
PaddleOCR-VL 0.9B 94.5% 91.2% 87.3%
Qwen2.5-VL 7B 93.1% 95.8% 82.1%
GPT-4o Vision 89.7% 88.4% 91.5%

Стратегия: PaddleOCR-VL для OCR + Qwen2.5-VL для bounding boxes. Гибрид даёт лучший результат, чем любая модель отдельно.

13.3. NER Anonymizer (вариант B)

Назначение: Автоматическое выявление и замена персональных данных перед отправкой в облачные LLM.

Сравнение NER-моделей (DR5):

Модель F1 Precision Recall Размер GPU Локальная
GPT-4.1 0.94 ~0.95 ~0.93 облако -- Нет
SpaCy ru_core_news_lg 0.83 0.84 0.81 ~500 MB -- Да (CPU)
DeepPavlov BERT NER 0.81 ~0.85 ~0.78 2 GB 6 GB Да
Natasha (Slovnet) ~0.80 ~0.82 ~0.78 30 MB -- Да (CPU)

Источник: arxiv.org/html/2506.02589v1 (июнь 2025) — «Evaluating NER Models for Russian Cultural News Texts: From BERT to LLM»

Выбор: SpaCy ru_core_news_lg — оптимальный баланс качества (F1=0.83), скорости (CPU) и размера. LLM-модели (GPT-4o, F1=0.93) нельзя использовать — мы анонимизируем именно ДЛЯ передачи в LLM.

Гибридный подход:

  • SpaCy NER: ФИО, организации, локации, даты
  • Regex: ИНН (12 цифр), ОГРН (13 цифр), сертификаты (RA.RU.*), email, телефоны
  • Microsoft Presidio: оркестрация NER + Regex + замена через Faker

13.4. RLM Orchestrator (Я4 + Б2)

Назначение: Граф рассуждений LangGraph 1.1 маршрутизирует запросы между калькулятором, детектором и рекурсивным парсером ГОСТов.

Конфигурация:

  • recursion_limit=5 -- максимальная глубина рекурсии по ГОСТам
  • timeout=30s -- жёсткий таймаут на один документ
  • При превышении -- эскалация на эксперта с указанием точки останова

13.5. Калькулятор единиц (Я5 + С3 + С4)

Назначение: Детерминированный пересчёт физических величин и расчёт TUR (Test Uncertainty Ratio).

Почему не LLM: LLM галлюцинирует в математике. 5 мкм != 0.005 мм для LLM, но = 0.005 мм для Pint. Одна ошибка в пересчёте -- некорректный вердикт.

TUR 4:1: Международный метрологический стандарт. Если TUR < 4.0, лаборатория слишком «грубая» для данного товара. Пример: товар 5 мкм, лаборатория +-0.1 мм → TUR = 5/100 = 0.05 → FAIL (лаборатория в 20x грубее).

13.6. Детектор ограничений (Я7 + С5 + Б5)

Назначение: Обнаружение скрытых технологий в товаре, требующих дополнительных стандартов.

3 уровня (Tier):

Tier Метод Пример Пакет
1 Regex-паттерны «Wi-Fi 6E» → IEEE 802.11ax → +5 стандартов Стандарт
2 ML-классификатор ruRoBERTa → категория ЭМС Бизнес
3 LLM-анализ GPT-5 → контекстный вывод Бизнес

Результат: «Умная колонка» с Wi-Fi 6E, BT 5.0 → +21 стандарт ЭМС, показатели 107 → 128.


14. Диаграмма потоков данных

flowchart LR
    subgraph External["Внешние системы"]
        ERP1C["ERP 1С"]
        TECH["ТЕХЭКСПЕРТ"]
        CLOUD["Облачные LLM\n(вариант B/C)"]
    end

    subgraph Boundary["Контур системы"]
        API["FastAPI\nGateway"]
        QUEUE["Celery\nОчередь"]
        CACHE["Redis\nКэш"]

        subgraph Processing["Обработка"]
            ING["Ingestion"]
            VLM["VLM\nProcessor"]
            NER2["NER\nAnonymizer"]
            RLM2["RLM\nOrchestrator"]
            CALC2["Калькулятор\nPint"]
            DET2["Детектор"]
            GOST2["GOST\nParser"]
        end

        DB["PostgreSQL\npgvector"]
        MON["Langfuse\nМониторинг"]
    end

    ERP1C -->|"1. Документ"| API
    API -->|"2. Задача"| QUEUE
    QUEUE --> ING
    ING --> VLM
    VLM --> NER2
    NER2 -->|"Анонимизировано"| CLOUD
    CLOUD -->|"Результат"| NER2
    NER2 --> RLM2
    RLM2 --> CALC2
    RLM2 --> DET2
    RLM2 --> GOST2
    GOST2 -->|"Запрос"| TECH
    TECH -->|"Стандарт"| GOST2
    GOST2 --> DB
    RLM2 -->|"Вердикт"| CACHE
    CACHE -->|"Webhook"| ERP1C
    Processing --> MON

    style External fill:#172554,stroke:#3b82f6
    style Boundary fill:#14532d,stroke:#22c55e
    style Processing fill:#78350f,stroke:#f59e0b

Ключевые потоки:

# Поток Данные Протокол
1 ERP → API Документ + метаданные REST POST, JWT
2 API → Celery Задача на обработку AMQP (RabbitMQ)
3 NER → Cloud LLM Анонимизированный текст HTTPS, API key
4 GOST Parser → ТЕХЭКСПЕРТ Запрос стандарта HTTPS / SOAP
5 Cache → ERP Вердикт + bbox JSON Webhook POST

15. Диаграмма последовательности

sequenceDiagram
    participant E as Эксперт (ERP)
    participant API as FastAPI
    participant Q as Celery Queue
    participant VLM as VLM Processor
    participant NER as NER Anonymizer
    participant LLM as Cloud LLM
    participant RLM as RLM Orchestrator
    participant GOST as GOST Parser
    participant CALC as Калькулятор
    participant ERP as ERP (1С)

    E->>API: POST /api/v1/verify (документ)
    API->>Q: Ставит задачу в очередь
    Q->>VLM: Парсинг + OCR
    VLM-->>Q: Структурированные данные + bbox

    alt Вариант B (анонимизация)
        Q->>NER: Анонимизация ПД
        NER-->>Q: Токенизированные данные
        Q->>LLM: Reasoning (анонимизировано)
        LLM-->>Q: Результат
        Q->>NER: Де-анонимизация
        NER-->>Q: Исходные данные + результат
    else Вариант C (прямой доступ)
        Q->>LLM: Reasoning (без NER)
        LLM-->>Q: Результат
    end

    Q->>RLM: Запуск графа LangGraph
    RLM->>GOST: Требования ГОСТа
    GOST-->>RLM: Параметры + ссылки
    RLM->>CALC: Проверка единиц + TUR
    CALC-->>RLM: PASS / FAIL + обоснование

    loop Рекурсия (до 3 уровней)
        RLM->>GOST: Связанный ГОСТ
        GOST-->>RLM: Доп. требования
        RLM->>CALC: Доп. проверки
        CALC-->>RLM: Результат
    end

    RLM-->>Q: Итоговый вердикт + дерево решений
    Q->>ERP: Webhook (JSON + bbox)
    ERP-->>E: Результат в карточке товара

Среднее время обработки: <30 сек (p95) для одного документа. Кэшированный результат: <3 сек.


16. Диаграмма скученности связей (ГОСТы)

Визуализация рекурсивных зависимостей между стандартами в рамках ТР ТС 004/020/037. Узлы с наибольшим числом связей -- «хабы», требующие приоритетной обработки.

flowchart TB
    subgraph TR004["ТР ТС 004\nНизковольтное"]
        G1["ГОСТ 31604\n6 связей"]
        G2["ГОСТ IEC 60950\n4 связи"]
        G3["ГОСТ Р 51318\n5 связей"]
        G4["ГОСТ 30805\n3 связи"]
    end

    subgraph TR020["ТР ТС 020\nЭМС"]
        G5["ГОСТ 30804\n7 связей"]
        G6["ГОСТ Р 51317\n5 связей"]
        G7["ГОСТ CISPR 32\n4 связи"]
        G8["ГОСТ IEC 61000\n6 связей"]
    end

    subgraph TR037["ТР ТС 037\nОпасные вещества"]
        G9["ГОСТ IEC 62321\n3 связи"]
        G10["ГОСТ Р 56748\n2 связи"]
    end

    G1 <--> G2
    G1 <--> G3
    G1 --> G5
    G2 --> G4
    G3 <--> G5
    G3 --> G6
    G4 --> G5
    G5 <--> G6
    G5 <--> G8
    G5 --> G7
    G6 <--> G7
    G6 --> G8
    G1 --> G9
    G8 --> G9
    G9 --> G10

    style TR004 fill:#172554,stroke:#3b82f6
    style TR020 fill:#78350f,stroke:#f59e0b
    style TR037 fill:#450a0a,stroke:#ef4444

Анализ скученности:

Стандарт Связей Тип Приоритет
ГОСТ 30804 (ЭМС) 7 Хаб Приоритетный
ГОСТ 31604 6 Хаб Высокий
ГОСТ IEC 61000 6 Хаб Высокий
ГОСТ Р 51317 5 Мост Высокий
ГОСТ Р 51318 5 Мост Средний
Остальные 2--4 Лист Нормальный

Выводы для архитектуры:

  • ГОСТ 30804 и ГОСТ 31604 -- обязательные точки входа при рекурсивном обходе
  • Кросс-регламентные связи (ТР ТС 004 ↔ ТР ТС 020) требуют единой базы, не изолированных справочников
  • Pre-filter (пакет Enterprise) должен приоритизировать «хабы» для кэширования

17. Модель данных

17.1. Входные данные (запрос на сверку)

{
  "request_id": "req_2026031401",
  "document": {
    "type": "product_passport",
    "format": "pdf",
    "file_url": "/uploads/passport_router_x500.pdf",
    "pages": 3
  },
  "laboratory": {
    "id": "lab_prommash",
    "name": "ПРОММАШ ТЕСТ",
    "accreditation_id": "RA.RU.21TP16"
  },
  "regulations": ["TR_CU_004", "TR_CU_020"],
  "options": {
    "recursion_depth": 3,
    "ner_anonymize": true,
    "return_bbox": true
  }
}

17.2. Результат сверки

{
  "request_id": "req_2026031401",
  "verdict": "FAIL",
  "confidence": 0.94,
  "processing_time_ms": 18420,
  "parameters_checked": 128,
  "parameters_passed": 107,
  "parameters_failed": 3,
  "parameters_warning": 18,
  "failures": [
    {
      "parameter": "Диапазон частот",
      "product_value": "2.4-5.8 ГГц",
      "lab_value": "до 3 ГГц",
      "standard": "ГОСТ 30804.4.3-2013",
      "reason": "Лаборатория не аккредитована для диапазона 5 ГГц",
      "bbox": {"page": 2, "x": 145, "y": 312, "w": 280, "h": 24},
      "severity": "critical"
    }
  ],
  "hidden_standards": [
    {
      "technology": "Wi-Fi 6E",
      "detected_by": "tier_1_regex",
      "additional_standards": ["ГОСТ Р 51317.4.3", "ГОСТ 30805.22"],
      "additional_parameters": 21
    }
  ],
  "decision_tree": {
    "root": "Товар: Роутер X500",
    "children": [
      {
        "node": "ТР ТС 004: Безопасность",
        "result": "PASS",
        "children": []
      },
      {
        "node": "ТР ТС 020: ЭМС",
        "result": "FAIL",
        "children": [
          {
            "node": "ГОСТ 30804: Частотный диапазон",
            "result": "FAIL",
            "reason": "5 ГГц вне аккредитации"
          }
        ]
      }
    ]
  },
  "resource_map": {
    "alternative_labs": [
      {
        "id": "lab_ceti",
        "name": "ЦЭТИ",
        "covers_failed_params": true,
        "match_score": 0.92
      }
    ]
  }
}

18. API-спецификация

18.1. Endpoints

Метод Путь Описание
POST /api/v1/verify Запуск сверки документа
GET /api/v1/verify/{id} Статус и результат сверки
POST /api/v1/verify/batch Пакетная сверка (до 50 документов)
GET /api/v1/labs Список лабораторий и аккредитаций
GET /api/v1/standards/{code} Информация о стандарте
GET /api/v1/health Healthcheck

18.2. Пример запроса

POST /api/v1/verify
Authorization: Bearer <jwt_token>
Content-Type: multipart/form-data

file: passport.pdf
laboratory_id: lab_prommash
regulations: ["TR_CU_004", "TR_CU_020"]
options.ner_anonymize: true
options.return_bbox: true

18.3. Коды ответов

Код Описание
200 Сверка завершена, результат в теле
202 Задача принята в очередь (async)
400 Некорректный формат документа
401 Невалидный JWT
413 Файл превышает 50 MB
429 Rate limit (100 запросов/мин)
500 Внутренняя ошибка
503 GPU недоступен (вариант A)

19. Пользовательские сценарии

US1: Стандартная сверка

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

Описание
Given Паспорт PDF (роутер X500) + лаборатория ПРОММАШ ТЕСТ
When Эксперт инициирует сверку через ERP
Then Результат <= 30 сек с bounding boxes, вердикт PASS/FAIL

US2: Несоответствие точности

Описание
Given Товар: допуск 5 мкм. Лаборатория: +-0.1 мм
When Система вычисляет TUR = 5/100 = 0.05
Then FAIL -- TUR 0.05 < 4.0, лаборатория в 20x грубее требования

US3: Обнаружение скрытых стандартов

Описание
Given «Умная колонка» с Wi-Fi 6E, BT 5.0
When Детектор Tier 1 (regex) → маркеры технологий
Then +21 стандарт ЭМС, параметры 107 → 128

US4: Эскалация на эксперта

Описание
Given Скан низкого качества, параметр размыт
When VLM confidence = 0.45 (< порога 0.7)
Then Эскалация на эксперта + bbox проблемного участка

US5: Ресурсная карта

Описание
Given Лаборатория ПРОММАШ ТЕСТ не покрывает 5 ГГц
When Система ищет альтернативу среди 6 лабораторий
Then «ЦЭТИ покрывает 5 ГГц, match score 92%»

US6: Рекурсивная проверка ГОСТов

Описание
Given ГОСТ 30804 ссылается на ГОСТ Р 51317, который ссылается на IEC 61000
When Рекурсивный пайплайн (глубина 3)
Then Все требования из цепочки проверены, дерево решений построено

20. Модель угроз (STRIDE)

20.1. Матрица угроз

ID Угроза Вероятность Влияние Статус
T1 Передача ПД в облако Средняя Высокое Закрыто (вариант B/A)
T2 Неточности в вычислениях Низкая Высокое Закрыто (Pint калькулятор)
T3 Повышенная нагрузка на API Средняя Среднее Закрыто (rate limiting)
T4 Подмена документа Низкая Среднее Закрыто (JWT + audit log)
T5 Недоступность GPU (вариант A) Средняя Среднее Закрыто (CPU failover)
T6 Некорректные данные в кэше Низкая Среднее Закрыто (TTL + валидация)

20.2. Анализ по STRIDE

ID Категория Угроза Вероятность Влияние Митигация
T1 Раскрытие (Information Disclosure) Передача ПД в облачные LLM API Средняя Высокое NER-анонимизация (вариант B), On-Premise (вариант A)
T2 Фальсификация (Tampering) Неточности LLM в вычислениях Низкая Высокое LLM не считает, Tool-Calling → Pint калькулятор
T3 Отказ в обслуживании (DoS) Повышенная нагрузка на API Средняя Среднее Rate limiting (100 req/min), Celery очередь, WAF
T4 Подмена (Spoofing) Подмена документа Низкая Среднее JWT-аутентификация, audit log в PostgreSQL, хэш документа
T5 Отказ (Availability) Недоступность GPU (вариант A) Средняя Среднее Healthcheck, автоматический failover на CPU (с деградацией), алерты
T6 Повышение привилегий (Elevation) Некорректные данные в Redis-кэше Низкая Среднее TTL кэша 24h, валидация при записи, изолированный Redis без внешнего доступа

20.3. Защита по уровням

Уровень Механизм Компонент
Сеть WAF, rate limiting, TLS 1.3 Nginx / Cloudflare
Аутентификация JWT RS256 + refresh tokens FastAPI middleware
Авторизация RBAC (эксперт, админ, API) PostgreSQL roles
Данные NER-анонимизация + шифрование at-rest ruRoBERTa + AES-256
Аудит Immutable audit log PostgreSQL + Langfuse
Вычисления Tool-Calling, no LLM math Pint + LangGraph
Инфраструктура Docker isolation, secrets vault Docker Compose + Vault

21. План реагирования на инциденты

21.1. Классификация инцидентов

Уровень Описание Время реакции Время восстановления
P0 Полная недоступность системы 30 мин 4 часа
P1 Некорректные результаты сверки 2 часа 8 часов
P2 Снижение производительности 4 часа 24 часа
P3 Незначительные ошибки интерфейса 24 часа 72 часа

21.2. Процедура реагирования

flowchart TB
    DET["Обнаружение\nLangfuse / Алерт"] --> CLASS["Классификация\nP0 / P1 / P2 / P3"]
    CLASS -->|P0| STOP["Остановка системы\nИзоляция инцидента"]
    CLASS -->|P1-P3| INVES["Расследование\nАнализ логов"]
    STOP --> NOTIFY["Уведомление\nЗаказчик + команда"]
    INVES --> NOTIFY
    NOTIFY --> FIX["Устранение\nHotfix / Rollback"]
    FIX --> VERIFY["Верификация\nТесты + мониторинг"]
    VERIFY --> POST["Post-mortem\nОтчёт + улучшения"]

    style DET fill:#172554,stroke:#3b82f6
    style STOP fill:#450a0a,stroke:#ef4444
    style POST fill:#14532d,stroke:#22c55e

21.3. Сценарии реагирования

P0: Недоступность системы

  1. Автоматический алерт команде (Telegram)
  2. Диагностика причины (логи Langfuse, healthcheck)
  3. Переключение на резервный режим (если применимо)
  4. Уведомление заказчика о статусе
  5. Post-mortem: анализ причин, улучшение мониторинга

P1: Некорректные вердикты (массовые FAIL/PASS)

  1. Остановка автоматической отправки в ERP
  2. Ручной аудит последних 100 вердиктов
  3. Проверка версий моделей, конфигурации Pint, кэша
  4. Rollback к последней стабильной версии
  5. Регрессионное тестирование перед повторным запуском

P2: Отказ GPU (вариант A)

  1. Автоматический failover на CPU-inference (латентность x3-5)
  2. Алерт команде DevOps
  3. Диагностика GPU (nvidia-smi, VRAM, температура)
  4. Перезагрузка / замена GPU
  5. Восстановление полного inference

22. Команда проекта

22.1. Роли и ставки

Роль Основные задачи Ставка, руб/ч
AI-архитектор / Tech Lead Архитектура, LangGraph-граф, промпты, code review 5 350
Backend / ML Engineer FastAPI, VLM/RLM интеграция, fine-tuning, Docker 4 250
Интеграционный инженер ERP (1С), ТЕХЭКСПЕРТ, webhook, NER-пайплайн 3 800
QA Engineer Тест-кейсы, accuracy-тестирование, нагрузочные тесты 3 200

22.2. Калькуляция стоимости (базовые пакеты, вариант C)

Роль Стандарт Бизнес Enterprise
AI-архитектор (42 / 58 / 76 ч) 224 700 310 300 406 600
Backend / ML (116 / 164 / 213 ч) 493 000 697 000 905 250
Интеграционный (31 / 37 / 49 ч) 117 800 140 600 186 200
QA (20 / 27 / 39 ч) 64 000 86 400 124 800
Подитог 899 500 1 234 300 1 622 850
Резерв на риски (10%) 80 500 125 700 162 150
Итого 980 000 1 360 000 1 785 000

22.3. Надбавка за инфраструктурный вариант

Вариант B (+235 000 руб):

Роль Часы Стоимость
Backend / ML +32 ч 136 000
Интеграционный +20 ч 76 000
Подитог +52 ч 212 000
Резерв (10%) 23 000
Итого надбавка 235 000

Вариант A (+485 000 руб):

Роль Часы Стоимость
AI-архитектор +20 ч 107 000
Backend / ML +50 ч 212 500
Интеграционный +23 ч 87 400
QA +10 ч 32 000
Подитог +103 ч 438 900
Резерв (10%) 46 100
Итого надбавка 485 000

23. Дорожная карта

23.1. Gantt-диаграмма (пакет «Бизнес + B»)

gantt
    title Бизнес + Вариант B (11-12 недель)
    dateFormat YYYY-MM-DD
    excludes weekends
    section Фаза 0
    Настройка инфраструктуры       :a0, 2026-04-06, 5d
    section Фаза 1
    Парсинг + VLM                  :a1, after a0, 8d
    NER-анонимизация               :a1b, after a0, 6d
    section Фаза 2
    RLM Orchestrator               :a2, after a1, 8d
    Калькулятор + Детектор         :a2b, after a1, 6d
    section Фаза 3
    ТЕХЭКСПЕРТ + Рекурсия         :a3, after a2, 8d
    Кэш + Webhook                 :a3b, after a2, 5d
    section Фаза 4
    Интеграционные тесты           :a4, after a3, 5d
    section Фаза 5
    Приёмка на реальных ОА ИЛ     :a5, after a4, 5d

23.2. Ключевые вехи

Неделя Веха Критерий завершения
1 Инфраструктура Docker, FastAPI, PostgreSQL, CI/CD запущены
2--3 Парсинг + VLM + NER Все форматы парсятся, VLM accuracy >= 94%, NER precision >= 95%
4--5 RLM + Калькулятор LangGraph-граф работает, Pint тесты зелёные, TUR корректен
6--7 ТЕХЭКСПЕРТ + Рекурсия Автозагрузка ГОСТов, рекурсия 3 уровня работает
8--9 Кэш + Webhook + Тесты Redis hit rate >= 60%, webhook доставка <= 3 сек, тесты >= 80%
10 Интеграционные тесты E2E на 50 реальных документах, accuracy >= 90%
11--12 Приёмка Smoke-тестирование на реальных ОА ИЛ, демо заказчику

24. Предварительные исследования

24.1. Завершённые исследования

# Тема Ключевой результат Метрика
DR1 AI для российских PDF Трёхуровневый пайплайн: PyMuPDF4LLM → PaddleOCR-VL → Mistral OCR 3 94.5%
DR2 RLM для ГОСТ-проверки LangGraph 1.1 StateGraph -- единственный production-ready фреймворк GA 1.1
DR3 VLM/RLM ландшафт 2025--2026 Open-source VLM обошли GPT-4o на OmniDocBench +15 п.п.
DR4 Compliance Automation Гибридный 3-tier детектор при стоимости $5--20/день F1=0.95
DR5 NER-анонимизация для русских документов SpaCy ru (F1=0.83) + Presidio + Faker. Приказ РКН N 140 — метод «введение идентификаторов» F1=0.83
DR6 Интеграция с ТЕХЭКСПЕРТ Публичного API нет. Стратегия: локальная PostgreSQL + pgvector + ручной импорт из подписки 2025 стандартов

24.2. Открытые вопросы для валидации

# Вопрос Как валидируем Когда
OQ1 Точность NER-анонимизации на реальных паспортах Тест на 100 документах заказчика Неделя 3
OQ2 Полнота базы ТЕХЭКСПЕРТ по ТР ТС 004/020/037 Сравнение с ручным списком эксперта Неделя 6
OQ3 Латентность on-premise inference на A10 vs A100 Benchmark на целевом оборудовании Неделя 1 (вариант A)

25. Стратегия тестирования

Уровень Инструмент Покрытие Критерий
Unit pytest Калькулятор, детектор, парсеры >= 90% coverage
Integration pytest + testcontainers LangGraph-граф, Redis, PostgreSQL Все edge cases
E2E pytest + реальные документы Полный пайплайн от загрузки до ERP >= 90% accuracy на 50 документах
Accuracy Custom benchmark VLM, NER, детектор, TUR Пороги из раздела 28
Performance Locust API latency, throughput p95 < 30 сек, 20 concurrent
Security OWASP ZAP + ручной аудит API, auth, injection Нет critical/high findings

Тестовые данные: 50 реальных паспортов товаров от заказчика (NDA). 10 синтетических edge-cases (гомоглифы, низкое качество, рекурсия 3 уровня).


26. Развёртывание и инфраструктура

26.1. Docker Compose (вариант B/C)

Сервис Образ Порт Назначение
api python:3.12-slim 8000 FastAPI Gateway
worker python:3.12-slim -- Celery worker (VLM + RLM)
redis redis:7-alpine 6379 Кэш + брокер
postgres postgres:17-alpine 5432 БД + pgvector
langfuse langfuse/langfuse 3000 Мониторинг
rabbitmq rabbitmq:3-management 5672 Очередь задач

26.2. Серверные требования

Параметр Вариант B/C Вариант A
CPU 8 vCPU 32 ядра
RAM 32 GB 128 GB
SSD 100 GB 1 TB NVMe
GPU -- NVIDIA A10/A100
Стоимость ~15 000 руб/мес (VPS) Оборудование заказчика

26.3. Мониторинг и бэкапы

  • Langfuse: трейсинг каждого вердикта, latency, token usage, cost
  • PostgreSQL: автобэкап каждые 6 часов, ретенция 30 дней
  • Redis: snapshot каждый час, AOF для persistence
  • Алерты: Telegram-бот при P0/P1 инцидентах

27. Критерии приёмки

# Модуль Критерий Метод проверки
1 Document Ingestion 95%+ документов парсятся без ошибок Тест на 50 реальных документах
2 VLM OCR Accuracy >= 94% (OmniDocBench) Benchmark на тестовом наборе
3 Калькулятор 100% детерминированных вычислений Unit-тесты (200+ кейсов)
4 TUR 4:1 Корректный расчёт на всех единицах Сравнение с ручным расчётом эксперта
5 Детектор F1 >= 0.90 (Tier 1--3) Тест на 50 документах с известными маркерами
6 Bounding Boxes Bbox корректно указывает на значение Визуальная верификация экспертом
7 ERP Webhook Доставка <= 5 сек, retry при ошибке Интеграционный тест с 1С
8 Latency p95 < 30 сек (один документ) Нагрузочный тест (Locust)
9 NER (вариант B) Precision >= 95%, Recall >= 90% Тест на 100 документах с размеченными ПД
10 On-Premise (вариант A) Все сервисы работают на оборудовании заказчика Smoke-тест на целевом GPU

28. Нефункциональные требования

# Параметр Порог
N1 Время ответа API (p95) <= 30 секунд
N2 Кэшированный ответ <= 3 секунды
N3 Одновременные пользователи >= 20
N4 Доступность (uptime) >= 99% за неделю
N5 Покрытие тестами (backend) >= 80%
N6 VLM accuracy >= 94% (OmniDocBench)
N7 NER precision (вариант B) >= 95%
N8 Детектор F1 (Tier 1--3) >= 0.90
N9 TUR расчёт 100% детерминированный
N10 Максимальный размер документа 50 MB / 100 страниц

Часть III: Коммерческие условия


29. Как мы работаем

Активность Частота Формат
Демо спринта Каждые 2 недели Видеозвонок + демонстрация на staging
Еженедельный sync 1 раз в неделю (30 мин) Статус, блокеры, решения
Доступ к staging Постоянный URL staging-сервера (со Sprint 0)
Канал связи Постоянный Telegram-группа
Приёмка результатов По завершении фазы Демо + чеклист приёмки

Управление изменениями: Изменения к ТЗ оформляются через Change Request -- команда оценивает влияние на сроки и бюджет, обе стороны согласуют до начала работ.


30. Условия оплаты

30.1. Стандарт (980 000 руб)

# Событие Оплата Нарастающим итогом
1 Предоплата (30%) 294 000 294 000
2 Приёмка Ingestion + VLM (Фаза 1--2) 392 000 686 000
3 Финальная приёмка 294 000 980 000

30.2. Бизнес (1 360 000 руб)

# Событие Оплата Нарастающим итогом
1 Предоплата (30%) 408 000 408 000
2 Приёмка Ingestion + VLM (Фаза 1--2) 408 000 816 000
3 Приёмка ТЕХЭКСПЕРТ + Рекурсия (Фаза 3) 272 000 1 088 000
4 Финальная приёмка 272 000 1 360 000

30.3. Enterprise (1 785 000 руб)

# Событие Оплата Нарастающим итогом
1 Предоплата (30%) 535 000 535 000
2 Приёмка Ingestion + VLM (Фаза 1--2) 440 000 975 000
3 Приёмка ТЕХЭКСПЕРТ + Рекурсия (Фаза 3) 360 000 1 335 000
4 Приёмка Fine-Tuning + Рес. карта (Фаза 4) 265 000 1 600 000
5 Финальная приёмка 185 000 1 785 000

Надбавка за инфраструктурный вариант (B: +235 000 / A: +485 000) оплачивается 50/50: половина с предоплатой, половина при финальной приёмке.


31. Ежемесячные расходы

31.1. Вариант B/C (облако)

Статья Расход/мес
Облачные LLM (GPT-5 Mini + Claude) 10 000--18 000
VPS (8 vCPU, 32 GB) 12 000--15 000
ТЕХЭКСПЕРТ (подписка, если требуется) По тарифу заказчика
Итого 22 000--33 000

31.2. Вариант A (On-Premise)

Статья Расход/мес
Электричество (GPU-сервер) 3 000--5 000
Обслуживание оборудования 2 000--5 000
ТЕХЭКСПЕРТ (подписка) По тарифу заказчика
Итого 5 000--10 000

Вариант A в 3--5x дешевле в эксплуатации, но требует начальных инвестиций в оборудование (GPU-сервер от 500 000 руб).


32. Риски и митигация

# Риск Влияние Вероятность Решение
R1 Качество сканов ниже ожидаемого Среднее Средняя Предобработка (deskew, binarization) + VLM с Visual Grounding
R2 Неточности LLM в вычислениях Среднее Низкая Решено архитектурно: LLM не считает, Tool-Calling → Pint
R3 Глубокая рекурсия ГОСТов Среднее Средняя recursion_limit=5, таймаут 30 сек, эскалация на эксперта
R4 Множественность форматов Среднее Средняя Единый DocumentParser + тесты на каждый формат
R5 Недоступность ТЕХЭКСПЕРТ Низкое Низкая Локальный кэш PostgreSQL + fallback на ручной импорт
R6 Гомоглифы в номерах ГОСТов Среднее Средняя Unicode-нормализация + валидация по базе
R7 Передача ПД в облако (вариант C) Среднее Средняя Варианты B (NER-анонимизация) или A (On-Premise)
R8 Изменение требований Низкое Средняя Change Request процесс, фиксированные фазы

33. Гарантии

  • Гарантийный период: 30 дней после финальной приёмки
  • Покрытие: исправление дефектов, обнаруженных в период гарантии
  • Не покрывает: новый функционал, изменения требований, интеграции с новыми системами
  • SLA (пакет Enterprise): uptime 99%, реакция 4 часа, восстановление 24 часа
  • Исходный код: передаётся заказчику в полном объёме (Git-репозиторий)

34. Требования к клиенту

# Что нужно Когда Зачем
1 Доступ к ТЕХЭКСПЕРТ API/аккаунт До старта Интеграция парсера ГОСТов
2 50 реальных паспортов товаров Неделя 1 Тестовые данные и бенчмарки
3 Спецификация ERP webhook (1С) Неделя 2 Формат JSON, auth, URL тестового контура
4 Контактное лицо (эксперт) Постоянно Валидация результатов, приёмка
5 GPU-сервер (вариант A) Неделя 1 Развёртывание on-premise
6 Список лабораторий + ОА ИЛ Неделя 1 Настройка ресурсной карты

35. Что не входит

  • Разработка ERP-модуля на стороне 1С (только webhook-интеграция)
  • Закупка и настройка GPU-оборудования (вариант A -- только развёртывание ПО)
  • Юридическое сопровождение по 152-ФЗ (только техническая реализация)
  • Ведение и актуализация базы ГОСТов после запуска (опция О4)
  • Обучение более 5 пользователей (дополнительно по запросу)
  • Мобильное приложение
  • Интеграции помимо 1С (Битрикс24, SAP и др.)

36. Открытые вопросы

# Вопрос Контекст Варианты
OQ1 Формат взаимодействия с ТЕХЭКСПЕРТ Критично для парсера ГОСТов A) API / B) Web-scraping / C) Локальный экспорт
OQ2 Спецификация ERP webhook (1С) Нужен формат JSON и метод auth A) Предоставите / B) Спроектируем вместе
OQ3 Приоритетный вариант 152-ФЗ Влияет на архитектуру и сроки A) On-Premise / B) Анонимизация / C) Облако
OQ4 Доступность GPU-сервера (если вариант A) Нужно для планирования A) Есть / B) Нужна закупка

37. Перспективы развития

# Направление Описание Ориентировочно
1 Мультирегламентность Расширение на другие ТР ТС (008, 010, 032) +3--4 нед
2 AI-рецензент Автоматическая генерация заключений эксперта +4--6 нед
3 Batch-обработка Массовая сверка 1000+ документов за ночь +2--3 нед
4 Мобильное приложение Фото паспорта → мгновенный вердикт в поле +6--8 нед
5 Marketplace ИЛ Внешние лаборатории подключаются к ресурсной карте +8--12 нед

При наличии бонуса на разработку (Enterprise) -- первые модули можно реализовать со скидкой.


38. Глоссарий

Термин Определение
VLM Vision Language Model -- модель, обрабатывающая изображения и текст одновременно
RLM Reasoning Language Model -- модель, строящая цепочку рассуждений
LLM Large Language Model -- большая языковая модель (GPT-5, Claude и др.)
LangGraph Фреймворк для создания графов рассуждений на базе LLM
Pint Python-библиотека для детерминированного пересчёта физических величин
TUR Test Uncertainty Ratio -- отношение точности прибора к точности лаборатории (стандарт 4:1)
Bounding Box Прямоугольник, указывающий на область в документе (визуальное доказательство)
NER Named Entity Recognition -- распознавание именованных сущностей (ФИО, ИНН и т.д.)
OCR Optical Character Recognition -- распознавание текста на изображениях и сканах
Fine-Tuning Дообучение модели на специализированных данных для повышения точности
Tool-Calling Механизм вызова внешних инструментов (калькулятор, API) из LLM вместо самостоятельных вычислений
Pre-filter Быстрый текстовый классификатор, отсеивающий простые случаи до тяжёлых моделей (экономия GPU)
Inference Процесс получения результата от нейросети (прямой проход модели)
STRIDE Модель анализа угроз: Spoofing, Tampering, Repudiation, Information Disclosure, DoS, Elevation
FastAPI Python-фреймворк для создания высокопроизводительных REST API
Docker Платформа контейнеризации -- упаковка приложения со всеми зависимостями
CI/CD Continuous Integration / Continuous Deployment -- автоматическая сборка, тестирование и деплой
PostgreSQL Реляционная база данных, хранит результаты сверок, справочники ГОСТов
pgvector Расширение PostgreSQL для векторного поиска (семантический поиск по стандартам)
Redis In-memory хранилище -- кэш результатов для мгновенных повторных запросов
Celery Распределённая очередь задач -- асинхронная обработка документов
RabbitMQ Брокер сообщений (AMQP) -- транспорт между API и обработчиками
Langfuse Платформа мониторинга LLM -- трейсинг решений, латентность, стоимость токенов
Webhook HTTP-callback -- система сама отправляет результат в ERP при готовности
API Gateway Единая точка входа для всех запросов к системе (маршрутизация, аутентификация)
JWT JSON Web Token -- стандарт аутентификации для API (цифровая подпись запросов)
RBAC Role-Based Access Control -- разграничение доступа по ролям (эксперт, админ, API)
WAF Web Application Firewall -- защита от атак на веб-приложение (DDoS, SQL injection)
GPU Graphics Processing Unit -- видеокарта, используется для ускорения нейросетей
OmniDocBench Бенчмарк для оценки качества OCR/VLM-моделей на документах
ERP Enterprise Resource Planning -- система управления ресурсами предприятия (в данном случае 1С)
ОА ИЛ Область аккредитации испытательной лаборатории
ТР ТС Технический регламент Таможенного союза
ТЕХЭКСПЕРТ Справочная система нормативно-технической документации
152-ФЗ Федеральный закон «О персональных данных»
SLA Service Level Agreement -- соглашение об уровне обслуживания
p95 95-й процентиль -- значение, ниже которого 95% результатов
Rollback Откат к предыдущей стабильной версии системы при обнаружении проблем
Presidio Open-source фреймворк Microsoft для обнаружения и анонимизации персональных данных
Faker Python-библиотека для генерации реалистичных фейковых данных (ФИО, адреса, ИНН)
Приказ РКН N 140 Требования к обезличиванию ПД (5 методов), вступил в силу 01.09.2025
Hotfix Экстренное исправление критической ошибки без полного цикла релиза

39. Следующие шаги

# Действие Ответственный Срок
1 Выбор пакета и варианта 152-ФЗ Заказчик 1 неделя
2 Подписание договора + предоплата Обе стороны 1 неделя
3 Предоставление доступа к ТЕХЭКСПЕРТ Заказчик До старта
4 Предоставление 50 тестовых документов Заказчик Неделя 1
5 Спецификация ERP webhook (1С) Заказчик Неделя 2
6 Старт разработки (Sprint 0) AiDevTeam После п. 2

Все оценки являются предварительными и будут уточнены после финализации требований.

Предложение действительно 30 дней. Разработка: AiDevTeam

Следующие шаги

Для финализации коммерческого предложения нам необходимы уточнения по нескольким вопросам. Ваши ответы помогут подготовить точную смету и запустить разработку.

Точки внимания

Деградация качества сканов и фото

VLM чувствительна к качеству изображений. Фотокопии — самый рискованный формат. Предобработка (Deskew, Binarization) + VLM с Visual Grounding.

Галлюцинации LLM в математике

Полный запрет вычислений внутри LLM. Tool-Calling + детерминированный калькулятор Pint v0.25.2. LLM только маршрутизирует.

Бесконечная рекурсия при чтении ГОСТов

Ограничение глубины графа (recursion_limit=5) + жёсткий таймаут. При превышении — маршрутизация на эксперта.

Множественность форматов документов

PDF, фотокопии, Word, Excel, plain text. Единый интерфейс DocumentParser + интеграционные тесты на каждый формат.

Утечка ПД через облачные LLM

Три варианта 152-ФЗ: On-Premise (полная изоляция), NER-анонимизация (частичная), облако (без защиты). Выбор заказчика.

Версионирование ОА (Аккредитация / Расширение / Сокращение)

Учёт дат и типов документов. Сокращение «отменяет» данные из Аккредитации — необходима точная логика приоритетов.

Гомоглифы: кириллица/латиница в номерах ГОСТов

О↔O↔0, Р↔P, С↔C — одна ошибка меняет весь стандарт. Script-aware парсинг + Unicode-нормализация + валидация по базе ТЕХЭКСПЕРТ.

Как сделать мощнее и дешевле

Visual Grounding (Bounding Boxes)

Подсветка спорных значений цветными рамками прямо в оригинальном документе. Сокращение ручной проверки с 40 до 3-4 минут.

Pre-filter (экономия 60-80% GPU)

Быстрый классификатор: точное текстовое совпадение → VLM+RLM только для сложных случаев.

Explainable AI (Дерево решений)

Интерактивный граф логики: Товар X → Требование Y → Напряжение 500В превышает допуск 220В лаборатории → FAIL.

Ресурсная карта (6 лабораторий ГК)

При отказе одной лаборатории ИИ находит подходящую из остальных: «ПРОММАШ ТЕСТ не может, но ЦЭТИ может».

Гибридный режим моделей

Облачные API для reasoning + локальные модели для конфиденциальных данных + NER-анонимизация.

Три варианта 152-ФЗ

On-Premise в РФ / Облако + анонимизация / Облако без ограничений — вы выбираете баланс compliance, качества и бюджета.

Вопрос 1

Выбор пакета

Какой пакет вас интересует? Мы рекомендуем «Бизнес» — рекурсивный пайплайн ГОСТов, автопарсер ТЕХЭКСПЕРТ и webhook в ERP.

Вопрос 2

Вариант соблюдения 152-ФЗ

Как вы хотите обрабатывать персональные данные? Это влияет на архитектуру, стоимость и качество моделей.

Вопрос 3

Доступ к ТЕХЭКСПЕРТ

Какой формат взаимодействия с ТЕХЭКСПЕРТ доступен? Это критично для автопарсера ГОСТов.

Вопрос 4

Спецификация ERP webhook (1С)

Сможете ли вы предоставить спецификацию webhook/endpoint для приёма результатов сверки? Нам нужен формат JSON, метод аутентификации и URL тестового контура.

Вопрос 5

GPU-оборудование (если вариант A)

Если выбран On-Premise: есть ли GPU-сервер (NVIDIA A10/A100) или потребуется закупка?

Вопрос 6

Дополнительные пожелания

Любая дополнительная информация, пожелания или вопросы по проекту.