Compare commits

..
11 Commits
Author SHA1 Message Date
dakocha3 4c4667bb8b perf: не звать legal-модель на каждое слово текста
LEGAL_CANDIDATE сужен до цифровых кластеров (ИНН, СНИЛС, паспорт, телефон,
банковский счёт) и email. Раньше в него входили и слова, из-за чего модель
LLAIM Legal NER вызывалась на каждое слово до maxCandidates раз. Имена (PER)
размечает модель имён, email — правила, поэтому слова из кандидата убраны.
2026-09-24 00:01:46 +03:00
dakocha3 ddceca076c feat: метрики использования каждой NER-модели и панели дашборда
- Добавлены счётчики pdguard.ner.model.requests и таймеры
  pdguard.ner.model.duration с тегом model (name/address/legal).
- Гистограммы для таймеров моделей включены в MetricsConfiguration.
- Дашборд дополнен панелями «Обращения к моделям» и «Время моделей».
- Prometheus собирает метрики с обеих нод кластера.
- Целевые значения лимитера: min-concurrent 100, target-latency 900.
- Подавление S2925 (Thread.sleep) в тесте лимитера.
2026-09-23 23:51:07 +03:00
Максименко Никита Владимирович 7a388e3d4a fix: обновление доки 2026-09-23 23:45:56 +03:00
Максименко Никита Владимирович 4bf711197a fix: добавление доки и докерфайла для жюри 2026-09-23 23:18:07 +03:00
Максименко Никита Владимирович 41e77e4ca1 feat: ui + docs: для жюри 2026-09-23 23:12:10 +03:00
dakocha3 954d772fa2 fix: маскировать все типы ПД для системы crm
Паспорт и другие документы не маскировались для crm (режим TOKEN), потому что
в types были перечислены только ФИО, телефон, email и адресные поля. Теперь
types=["*"] — crm маскирует все типы ПД, как analytics и strict.
2026-09-23 23:07:29 +03:00
dakocha3 cd59e37d3a refactor: убрать ограничение maxChars из хранилища соответствий
- Удалены поле maxChars, параметр конструктора и метод evictWhileOverLimit.
- Хранилище теперь ограничено только TTL (ttl-minutes), без вытеснения по объёму.
- Конструкторы переведены на (int ttlMinutes) и (int ttlMinutes, SharedIndex, PayloadCipher).
- Обновлены тесты и PipelineWarmup на новые сигнатуры.
2026-09-23 22:33:54 +03:00
Максименко Никита Владимирович 573d94cca8 refactor: подтянуть Legal NER, переформатировать код и добавить тесты
Слияние с 685ec97 (третья ступень NER для юридических реквизитов),
код приведён к google-java-format, добавлены юнит-тесты
AdaptiveConcurrencyLimiter/SystemsConfig/PayloadCipher.
2026-09-23 22:02:45 +03:00
dakocha3 84b5adcb3f feat: интеграция LLAIM Legal NER как третьей ступени распознавания
- Подключение ru-legal-ner (ONNX) для юридических реквизитов: ИНН, ОГРН,
  СНИЛС, паспорт, телефон, email, банковский счёт, дата.
- Отдельный проход LEGAL_CANDIDATE, чтобы не вытеснять кандидатов имён и адресов.
- coversAny(policy) в Pipeline вместо проверки только FIO.
- Нормализация цифровых ПД (ИНН/СНИЛС/карта/ОГРН) в свободной форме.
- Фикс ложного срабатывания ФИО на аббревиатуре «ИНН» (PD_MARKERS).
- Рефакторинг конструкторов NameCascade через record EngineConfig (Sonar S107).
2026-09-23 21:40:53 +03:00
Максименко Никита Владимирович 4bdb03341b feat: добавление STRICT режима (более строгий MASKED) 2026-09-23 18:20:54 +03:00
Максименко Никита Владимирович 5f77971a1c refactor: разбить RuleRegistry на классы по категориям правил
RuleRegistry.java вырос до 621 строки — вынесены общие regex-фрагменты
в RulePatterns и группы правил в DocumentRules, FinanceRules, DateRules,
FioRules, ContactRules, AddressRules. RuleRegistry теперь только собирает
списки и хранит публичный API (detect, isAddressType, hasAddressContext).
2026-09-23 17:23:05 +03:00

Diff Content Not Available