Языковые пакеты
Языковой пакет объединяет NER-модель и правила токенизации для одного языка. В текущем релизе идут два встроенных пакета — русский (через Natasha) и английский (через spaCy en_core_web_lg) — плюс опциональные испанский, немецкий и итальянский пакеты (см. ниже).
Что даёт пакет
- NER-модель, которая выдаёт
Entity-записи для персон, компаний и локаций - Токенизатор, учитывающий границы предложений и регистр для соответствующего языка
- Опциональный постпроцессинг фамилий/имён (русские отчества, английские суффиксы вроде Jr.)
Пакеты подгружаются по требованию. Если вы обрабатываете только .docx на английском — русский пакет лежит на диске, но в память не загружается.
Активные пакеты
Продукт загружает языковой пакет под преобладающий язык документа. Если в
.docx смешаны RU- и EN-параграфы — могут работать оба пакета. Русский и
английский активны всегда. Испанский, немецкий и итальянский включаются автоматически, как только
установлены их модели (см. ниже) — отдельного флага языка нет, всё определяется
тем, какие модели стоят.
Языковые данные Tesseract OCR — отдельная вещь: для сканированных PDF нужны
Tesseract traineddata eng и rus, даже если NER-модели уже поставляются
внутри anonymizer.
Подключить испанский (опционально)
Русский и английский работают сразу. Испанский — опциональный: ему нужна модель
(es_core_news_lg, ~0.5 ГБ), её скачивают один раз. Два способа:
При установке — выберите испанский в подсказке установщика или задайте без вопросов:
curl -fsSL anonymizer.site/install | ANONYMIZER_LANGS=es shВ приложении — откройте Настройки → Языки, установите испанский и перезапустите anonymize.
Когда модель на месте, в испанских документах распознаются имена (включая двойные фамилии вроде Juan García López), компании (S.A., S.L.) и адреса (calle, avenida) — вместе с always-on распознаванием email, телефонов, IBAN и дат. Без модели испанские документы всё равно проходят через regex-детекторы; ничего не ломается, просто испанские имена и компании не распознаются.
Скачивание модели один раз требует сети. Дальше обработка полностью офлайн, как и всё остальное. На русский и английский это не влияет. Испанское распознавание в этом релизе — пилотного качества.
Подключить немецкий (опционально)
Немецкий подключается так же: ему нужна модель (de_core_news_lg, ~0.5 ГБ),
её скачивают один раз:
При установке — выберите немецкий в подсказке установщика или задайте без вопросов:
curl -fsSL anonymizer.site/install | ANONYMIZER_LANGS=de sh(Языки можно комбинировать: ANONYMIZER_LANGS="es de it".)
В приложении — откройте Настройки → Языки, установите немецкий и перезапустите anonymize.
Когда модель на месте, в немецких документах распознаются имена (включая частицы von/zu и академические титулы), компании с немецкими правовыми формами (GmbH, AG, GmbH & Co. KG, e.K.…), адреса с PLZ (включая улицы без суффикса вроде Prinzipalmarkt 12, 48143 Münster), немецкие форматы телефонов и словесные даты (15. Januar 2024) — вместе с постоянно активным распознаванием email, IBAN и дат. Без модели немецкие документы всё равно проходят через regex-детекторы; ничего не ломается.
Подключить итальянский (опционально)
Итальянский (добавлен в 0.6.1) подключается так же: ему нужна модель
(it_core_news_lg, ~0.5 ГБ), её скачивают один раз:
При установке — выберите итальянский в подсказке установщика или задайте без вопросов:
curl -fsSL anonymizer.site/install | ANONYMIZER_LANGS=it shВ приложении — откройте Настройки → Языки, установите итальянский и перезапустите anonymize.
Когда модель на месте, в итальянских документах распознаются имена, компании с
итальянскими правовыми формами (S.r.l., S.p.A.…), структурированные адреса
(включая почтовые индексы CAP), итальянские форматы телефонов, словесные
нотариальные даты (il quindici gennaio duemilaventiquattro) и идентификаторы
с якорем-меткой — codice fiscale (включая сокращения C.F./cod. fisc.),
Partita IVA, кадастровые ссылки (Foglio/Particella/Subalterno), реестры
актов (Rep./Racc.) и номера C.C.I.A.A. — вместе с постоянно активным
распознаванием email, IBAN и дат. Без модели итальянские документы всё равно
проходят через regex-детекторы; ничего не ломается. Обратите внимание: upstream-модель
it_core_news_lg распространяется под лицензией CC BY-NC-SA 3.0.
Дорожная карта для новых языков
В MVP-2 добавятся остальные языки из брифа заказчика (французский, португальский, нидерландский, польский, чешский, турецкий и др. — всего 25). До этого момента language-agnostic regex-детекторы (email, телефоны, IBAN и т.д.) работают на документах на любом языке.
Добавление своего пакета
Если вам нужен язык, который ещё не поддерживается, обратитесь к engineer-руководству в продуктовом репозитории: docs/agents/extending-language.md. Там описана регистрация через LanguagePackRegistry.