Downloads · 30 days
239
2% of all-time downloads
ab-ai/PII-Model-Phi3-Mini
PII-Model-Phi3-Mini is a text generation model from ab-ai. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as mit.
This repository contains a fine-tuned version of the Phi3 Mini model for detecting personally identifiable information (PII). The model has been specifically trained to recognize various PII entities in text, making i…
Downloads · 30 days
239
2% of all-time downloads
All-time downloads
13.9K
Public
Parameters
3.8B
7.6 GB on disk
Likes
10
Public
Click a slice to open those files.
.safetensors7.6 GB · 100%
From the Hugging Face model README
This repository contains a fine-tuned version of the Phi3 Mini model for detecting personally identifiable information (PII). The model has been specifically trained to recognize various PII entities in text, making it a powerful tool for tasks such as data redaction, privacy protection, and compliance with data protection regulations.
The model is capable of detecting the following PII entities:
Personal Information:
firstnamemiddlenamelastnamesexdob (Date of Birth)agegenderheighteyecolorContact Information:
emailphonenumberurlusernameuseragentAddress Information:
streetcitystatecountyzipcodecountrysecondaryaddressbuildingnumberordinaldirectionGeographical Information:
nearbygpscoordinateOrganizational Information:
companynamejobtitlejobareajobtypeFinancial Information:
accountnameaccountnumbercreditcardnumbercreditcardcvvcreditcardissueribanbiccurrencycurrencynamecurrencysymbolcurrencycodeamountUnique Identifiers:
pinssnimei (Phone IMEI)mac (MAC Address)vehiclevin (Vehicle VIN)vehiclevrm (Vehicle VRM)Cryptocurrency Information:
bitcoinaddresslitecoinaddressethereumaddressOther Information:
ip (IP Address)ipv4ipv6maskednumberpasswordtimeordinaldirectionprefix### Instruction:
Identify and extract the following PII entities from the text, if present: companyname, pin, currencyname, email, phoneimei, litecoinaddress, currency, eyecolor, street, mac, state, time, vehiclevin, jobarea, date, bic, currencysymbol, currencycode, age, nearbygpscoordinate, amount, ssn, ethereumaddress, zipcode, buildingnumber, dob, firstname, middlename, ordinaldirection, jobtitle, bitcoinaddress, jobtype, phonenumber, height, password, ip, useragent, accountname, city, gender, secondaryaddress, iban, sex, prefix, ipv4, maskednumber, url, username, lastname, creditcardcvv, county, vehiclevrm, ipv6, creditcardissuer, accountnumber, creditcardnumber. Return the output in JSON format.
### Input:
Greetings, Mason! Let's celebrate another year of wellness on 14/01/1977. Don't miss the event at 176,Apt. 388.
### Output:
To use this model, you'll need to have the transformers library installed:
pip install transformers
from transformers import AutoTokenizer, AutoModelForTokenClassification
# Load the tokenizer and model
tokenizer = AutoTokenizer.from_pretrained("ab-ai/PII-Model-Phi3-Mini")
model = AutoModelForTokenClassification.from_pretrained("ab-ai/PII-Model-Phi3-Mini")
input_text = "Hi Abner, just a reminder that your next primary care appointment is on 23/03/1926. Please confirm by replying to this email Nathen15@hotmail.com."
model_prompt = f"""### Instruction:
Identify and extract the following PII entities from the text, if present: companyname, pin, currencyname, email, phoneimei, litecoinaddress, currency, eyecolor, street, mac, state, time, vehiclevin, jobarea, date, bic, currencysymbol, currencycode, age, nearbygpscoordinate, amount, ssn, ethereumaddress, zipcode, buildingnumber, dob, firstname, middlename, ordinaldirection, jobtitle, bitcoinaddress, jobtype, phonenumber, height, password, ip, useragent, accountname, city, gender, secondaryaddress, iban, sex, prefix, ipv4, maskednumber, url, username, lastname, creditcardcvv, county, vehiclevrm, ipv6, creditcardissuer, accountnumber, creditcardnumber. Return the output in JSON format.
### Input:
{input_text}
### Output: """
inputs = tokenizer(model_prompt, return_tensors="pt").to(device)
# adjust max_new_tokens according to your need
outputs = model.generate(**inputs, do_sample=True, max_new_tokens=120)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(response) #{'middlename': ['Abner'], 'dob': ['23/03/1926'], 'email': ['Nathen15@hotmail.com']}