fix: _scan_regex for docx, PERSON cyrillic-only, 101 entities found — v0.9/v1.0.192
Deploy contracts-flask / validate (push) Successful in 0s
Deploy contracts-flask / validate (push) Successful in 0s
This commit is contained in:
@@ -6,7 +6,7 @@ DrHider — обфускация документов (двухпроходна
|
|||||||
|
|
||||||
Согласованность: одна и та же сущность во всех файлах → одно и то же фиктивное значение.
|
Согласованность: одна и та же сущность во всех файлах → одно и то же фиктивное значение.
|
||||||
"""
|
"""
|
||||||
DRHIDER_VERSION = "0.8"
|
DRHIDER_VERSION = "0.9"
|
||||||
import io
|
import io
|
||||||
import csv
|
import csv
|
||||||
import re
|
import re
|
||||||
@@ -44,10 +44,10 @@ COMPANY_PATTERN = re.compile(
|
|||||||
re.IGNORECASE
|
re.IGNORECASE
|
||||||
)
|
)
|
||||||
|
|
||||||
# ФИО — Фамилия + инициалы
|
# ФИО — Фамилия + инициалы или полное имя (только кириллица)
|
||||||
PERSON_PATTERN = re.compile(
|
PERSON_PATTERN = re.compile(
|
||||||
r'\b[А-ЯA-Z][а-яa-z]+\s+[А-ЯA-Z]\.[А-ЯA-Z]\.',
|
r'\b[А-Я][а-я]+\s+[А-Я]\.[А-Я]\.'
|
||||||
re.IGNORECASE
|
r'|\b[А-Я][а-я]+\s+[А-Я][а-я]+\s+[А-Я][а-я]+'
|
||||||
)
|
)
|
||||||
|
|
||||||
# ═══════════════════════════════════════════
|
# ═══════════════════════════════════════════
|
||||||
@@ -214,9 +214,7 @@ class TwoPassObfuscator:
|
|||||||
all_texts[fname] = text
|
all_texts[fname] = text
|
||||||
if doc is not None:
|
if doc is not None:
|
||||||
all_docx[fname] = doc
|
all_docx[fname] = doc
|
||||||
elif text == "[DOC binary — not parsed]":
|
if text and text != "[DOC binary — not parsed]":
|
||||||
pass # .doc без изменений
|
|
||||||
else:
|
|
||||||
self._scan_regex(text)
|
self._scan_regex(text)
|
||||||
|
|
||||||
if self._llm_client:
|
if self._llm_client:
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ DrHider — обфускация документов (двухпроходна
|
|||||||
|
|
||||||
Согласованность: одна и та же сущность во всех файлах → одно и то же фиктивное значение.
|
Согласованность: одна и та же сущность во всех файлах → одно и то же фиктивное значение.
|
||||||
"""
|
"""
|
||||||
DRHIDER_VERSION = "0.8"
|
DRHIDER_VERSION = "0.9"
|
||||||
import io
|
import io
|
||||||
import csv
|
import csv
|
||||||
import re
|
import re
|
||||||
@@ -44,10 +44,10 @@ COMPANY_PATTERN = re.compile(
|
|||||||
re.IGNORECASE
|
re.IGNORECASE
|
||||||
)
|
)
|
||||||
|
|
||||||
# ФИО — Фамилия + инициалы
|
# ФИО — Фамилия + инициалы или полное имя (только кириллица)
|
||||||
PERSON_PATTERN = re.compile(
|
PERSON_PATTERN = re.compile(
|
||||||
r'\b[А-ЯA-Z][а-яa-z]+\s+[А-ЯA-Z]\.[А-ЯA-Z]\.',
|
r'\b[А-Я][а-я]+\s+[А-Я]\.[А-Я]\.'
|
||||||
re.IGNORECASE
|
r'|\b[А-Я][а-я]+\s+[А-Я][а-я]+\s+[А-Я][а-я]+'
|
||||||
)
|
)
|
||||||
|
|
||||||
# ═══════════════════════════════════════════
|
# ═══════════════════════════════════════════
|
||||||
@@ -214,9 +214,7 @@ class TwoPassObfuscator:
|
|||||||
all_texts[fname] = text
|
all_texts[fname] = text
|
||||||
if doc is not None:
|
if doc is not None:
|
||||||
all_docx[fname] = doc
|
all_docx[fname] = doc
|
||||||
elif text == "[DOC binary — not parsed]":
|
if text and text != "[DOC binary — not parsed]":
|
||||||
pass # .doc без изменений
|
|
||||||
else:
|
|
||||||
self._scan_regex(text)
|
self._scan_regex(text)
|
||||||
|
|
||||||
if self._llm_client:
|
if self._llm_client:
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
<a href="/">Сверка договоров</a>
|
<a href="/">Сверка договоров</a>
|
||||||
<span class="sep">|</span>
|
<span class="sep">|</span>
|
||||||
<strong>DrHider</strong>
|
<strong>DrHider</strong>
|
||||||
<span style="font-size:11px;color:var(--muted);">v0.8</span>
|
<span style="font-size:11px;color:var(--muted);">v0.9</span>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
<body>
|
<body>
|
||||||
<div class="topbar">
|
<div class="topbar">
|
||||||
<img src="/static/logo.svg" alt="Nubes">
|
<img src="/static/logo.svg" alt="Nubes">
|
||||||
<span class="title">Сверка договоров — LLM AI-driven Event Sourcing <span style="font-weight:400;color:var(--muted);font-size:12px;">v1.0.191-flask</span></span>
|
<span class="title">Сверка договоров — LLM AI-driven Event Sourcing <span style="font-weight:400;color:var(--muted);font-size:12px;">v1.0.192-flask</span></span>
|
||||||
<div id="pipelineStepper" style="display:flex;gap:8px;font-size:11px;align-items:center;color:var(--muted);">
|
<div id="pipelineStepper" style="display:flex;gap:8px;font-size:11px;align-items:center;color:var(--muted);">
|
||||||
<span id="stepUpload">○ Загрузка</span><span>→</span>
|
<span id="stepUpload">○ Загрузка</span><span>→</span>
|
||||||
<span id="stepClassify">○ Классификация</span><span>→</span>
|
<span id="stepClassify">○ Классификация</span><span>→</span>
|
||||||
|
|||||||
Reference in New Issue
Block a user