/ Модель

Характеристики

Контекст
512 токенов
Параметры
138 млн
Лицензия
Apache 2.0
Архитектура
bert · dense
Опубликована
13 мая 2026

kvkk-pii-ner

Разметка токеновТекст → label4 профессии

Модель BERT для разметки токенов турецкого текста и выявления персональных и медицинских данных в целях соответствия KVKK.

93скачиваний за 30 дней0лайковвеса обновлены13 мая 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

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

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

ersanbil разработившая модель ersanbil/kvkk-pii-ner предназначена для выявления персональных данных в турецком тексте в рамках соответствия KVKK. Это дообученная для BIO-разметки токенов модель BERT на основе dbmdz/bert-base-turkish-cased; она помечает имена людей, адреса, медицинские данные и специальные категории KVKK. Модель рассчитана на поиск сведений в свободном тексте, которые могут пропускать регулярные выражения, и используется как второй уровень гибридного конвейера kvkk-pii. Размер — 137,8 млн параметров, контекст — до 512 токенов; вход и выход представлены текстом с метками сущностей.

В карточке сообщается о пятифолдовой перекрёстной проверке со средним F1 98,86% ± 0,19%. Модель обучена на синтетических данных; категория KVKK_SPECIAL представлена ограниченно, названия городов иногда ошибочно размечаются как имена людей, а полнота выявления медицинских сведений ниже на произвольном тексте, чем на структурированных формах. Указанная лицензия — Apache-2.0.

Сценарии применения

  • выявление имён людей в турецких текстах
  • поиск физических адресов в документах на турецком языке
  • обнаружение диагнозов, лекарств и результатов анализов
  • поиск чувствительных персональных данных для проверки соответствия KVKK
  • извлечение PII из свободного текста в гибридном конвейере с регулярными выражениями

Ограничения

Категория KVKK_SPECIAL имеет ограниченное покрытие обучающими данными; названия городов могут ошибочно размечаться как имена людей. Полнота выявления медицинских данных ниже на свободном тексте, чем на структурированных формах.

Для каких профессий подходит4

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

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

kvkk-pii-ner

Turkish PII (Personally Identifiable Information) detection model for KVKK compliance. Fine-tuned from dbmdz/bert-base-turkish-cased for token classification.

Model Description

This model detects unstructured PII entities in Turkish text that cannot be caught by deterministic regex patterns. It is designed as Tier 2 of the kvkk-pii hybrid pipeline.

  • Base model: dbmdz/bert-base-turkish-cased (110M parameters)
  • Task: Token classification (BIO tagging)
  • Labels: PERSON, ADDRESS, HEALTH_DATA, KVKK_SPECIAL
  • Training data: 14,913 synthetic samples
  • Name generation reference: Nisanyan Adlar Sozlugu

Labels

LabelDescriptionKVKK Category
PERSONPerson namesKimlik (Md. 3)
ADDRESSPhysical addressesIletisim (Md. 3)
HEALTH_DATADiagnoses, medications, lab resultsOzel Nitelikli (Md. 6)
KVKK_SPECIALReligion, ethnicity, political viewsOzel Nitelikli (Md. 6)

Usage

With kvkk-pii (recommended)

from kvkk_pii import PIIAnalyzer

analyzer = PIIAnalyzer(ner_model_path="ersanbil/kvkk-pii-ner")
results = analyzer.analyze("Hasta: Ahmet Yilmaz, Tani: E11.9 - Tip 2 diabetes mellitus")

Standalone with transformers

from transformers import AutoTokenizer, AutoModelForTokenClassification
import torch

tokenizer = AutoTokenizer.from_pretrained("ersanbil/kvkk-pii-ner")
model = AutoModelForTokenClassification.from_pretrained("ersanbil/kvkk-pii-ner")
model.eval()

text = "Hasta Adi: LEVENT DUMAN"
encoding = tokenizer(text, return_tensors="pt", return_offsets_mapping=True)

with torch.no_grad():
    outputs = model(**{k: v for k, v in encoding.items() if k != "offset_mapping"})
    predictions = outputs.logits.argmax(dim=-1)[0]

for token_id, pred in zip(encoding["input_ids"][0], predictions):
    label = model.config.id2label[pred.item()]
    if label != "O":
        print(f"{tokenizer.decode([token_id])}: {label}")

Performance

EntityPrecisionRecallF1
PERSON1.001.001.00
ADDRESS1.001.001.00
HEALTH_DATA0.991.000.99
Overall99.86%

5-Fold Cross-Validation: Mean F1 = 98.86% +/- 0.19%

Limitations

  • KVKK_SPECIAL category has limited training coverage
  • City names may be tagged as PERSON (acceptable from a PII perspective)
  • Free-text health data recall is lower than structured forms
  • Inference runs on CPU for cross-device consistency (110M model is fast enough)

Training

  • Fine-tuned with HuggingFace Transformers
  • 10 epochs, batch size 64, learning rate 3e-5, cosine scheduler
  • Early stopping with patience 3

License

Apache License 2.0

Author

Ersan Bilik — ersan.ai

Citation

@software{kvkk_pii_ner,
  author = {Bilik, Ersan},
  title = {kvkk-pii-ner: Turkish PII Detection Model for KVKK Compliance},
  year = {2026},
  url = {https://huggingface.co/ersanbil/kvkk-pii-ner}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · token-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
BertForTokenClassification
Ревизия весов
cb85fbd

0 моделей