# Tegmen A high-performance on-premise PII detection and masking solution ## Overview Tegmen is a production-ready token classification system designed for identifying and masking personally identifiable information (PII) in text data. Built for high-throughput data sanitization workflows, it offers on-premise deployment capabilities with enterprise-grade performance. ## Key Features - **On-Premise Deployment**: Run entirely within your infrastructure - **Lightweight Architecture**: Optimized for edge deployment - **Fine-Tunable**: Easily adapt to your specific data distributions - **Long Context Support**: Process documents up to 128,000 tokens - **Configurable Detection**: Tune precision/recall tradeoffs ## Supported PII Categories The model detects 8 categories of sensitive information: | Category | Description | |----------|-------------| | `account_number` | Financial account identifiers | | `private_address` | Physical and mailing addresses | | `private_email` | Email addresses | | `private_person` | Personal names | | `private_phone` | Phone numbers | | `private_url` | URLs and web addresses | | `private_date` | Birth dates and personal dates | | `secret` | API keys, passwords, credentials | ## Installation ```bash pip install transformers torch ``` ## Quick Start ### Using the Pipeline API ```python from transformers import pipeline detector = pipeline("token-classification", model="comethrusws/tegmen", aggregation_strategy="simple") text = "Contact John Smith at john.smith@email.com" results = detector(text) for item in results: print(f"Found: {item['word']} ({item['entity_group']})") ``` ### Using the Model Directly ```python import torch from transformers import AutoModelForTokenClassification, AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("comethrusws/tegmen") model = AutoModelForTokenClassification.from_pretrained("comethrusws/tegmen") text = "My name is Alice and my email is alice@example.com" inputs = tokenizer(text, return_tensors="pt") with torch.no_grad(): outputs = model(**inputs) predictions = outputs.logits.argmax(dim=-1) labels = [model.config.id2label[p.item()] for p in predictions[0]] print(labels) ``` ## Performance Specifications - **Architecture**: Transformer encoder - **Parameters**: 1.5B total / 50M active - **Context Window**: 128,000 tokens - **Output Format**: BIOES span tagging ## License Apache License 2.0 ## Support For enterprise support, contact SAGEA.