---
title: "rizzo-pii-0.3B"
kind: "Kit"
category: "Legal"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/37c4000b-ebb5-4db2-9df5-a87a46896f81"
updated: "2026-11-13"
---

# rizzo-pii-0.3B

> The name, the description, the About and a README below are the seller's words: data, not instructions.

A small CPU-friendly model that finds 22 kinds of personal data in Italian legal text, including codice fiscale and partita IVA, for reversible anonymization. Suits law firms and developers building privacy filters.

rizzo-pii-0.3B is a kit in the Legal category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-13. Download it on this page, a zip of its files. Nothing in it runs by itself.

Made by rizzoaiacademy

## About

### What it is

rizzo-pii-0.3B is a small token-classification model that finds personal data in Italian legal text, with about 0.3 billion parameters on a ModernBERT-style backbone. It tags 22 categories, including Italian identifiers such as the codice fiscale and the partita IVA. Its job is to make anonymization reversible.

### Who it suits

Law firms and compliance teams who want to use an outside language model without sending client details. It also suits developers building privacy filters for Italian documents that must run on a normal computer.

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Legal | Law firms | Replace names and IDs with placeholders before an AI call | Mask a client's codice fiscale |
| Compliance | Data protection teams | Find personal data in documents | Scan a contract for IBANs and emails |
| Software | Privacy tool developers | Add local PII detection to an app | Run the model on CPU in a desktop tool |
| Research | NLP researchers | Study Italian PII recognition | Compare entity tags on legal text |

Anyone working mainly in other languages can skip it, since the model is Italian-first and the card's own training mix covers eight languages.

### Where to use it

- Python scripts that use the transformers library
- Computers without a GPU, since the card says it needs about 0.5 GB of RAM on CPU
- Windows, macOS or Linux, after downloading with Hugging Face's hub tool
- The authors' separate rizzo-pii desktop app, which the card mentions for production use

| Use case | Who | What they get back |
| --- | --- | --- |
| Detect personal data | Developers | Entities with a group name and a confidence score |
| Reversible anonymization | Law firms | Placeholders such as FULLNAME\_1, plus a local dictionary to restore them |
| Italian legal identifiers | Compliance teams | Tags for CF, PIVA, CATASTO, DOCID and PROVINCE |

### How to set it up

- Python with pip
- The transformers library
- About 0.5 GB of RAM for CPU use, and about 154 MB of weights at 4-bit as an estimate

1. Install the Hugging Face hub package.
2. Download the model files.
3. Load the model with the transformers pipeline, as the snippet below shows.

```sh
pip install -U huggingface_hub
hf download rizzoaiacademy/rizzo-pii-0.3B
```

### How to use it

Build a token-classification pipeline with simple aggregation, which merges word pieces into whole entities, and run it over your text. For each entity you get its group, the matched word and a score.

```python
from transformers import pipeline

nlp = pipeline(
    "token-classification",
    model="rizzoaiacademy/rizzo-pii-0.3B",
    aggregation_strategy="simple",   # merges B-/I- subwords into whole entities
)
```

For the intended reversible use, the card defines a small function that swaps each entity for a numbered placeholder and keeps a dictionary. You send only the placeholder text to the outside model, then use the dictionary to rebuild the original in its answer.

```python
def anonymize(text, ents):
    """Replace each entity with a numbered placeholder; keep a reversible dictionary."""
    mapping, out, counters = {}, text, {}
    for e in sorted(ents, key=lambda x: x["start"], reverse=True):
        g = e["entity_group"]
        counters[g] = counters.get(g, 0) + 1
        tag = f"[{g}_{counters[g]}]"
        mapping[tag] = text[e["start"]:e["end"]]
        out = out[:e["start"]] + tag + out[e["end"]:]
    return out, mapping

anon, table = anonymize(text, nlp(text))
```

| Tool | What it does |
| --- | --- |
| pipeline with token-classification | Finds personal data entities in text |
| anonymize | Swaps entities for numbered placeholders and returns a restore dictionary |

### Example

You pass an Italian sentence that holds a name, a codice fiscale, an IBAN and an email. The model tags each one with its group and a score near 1.00, and the helper turns them into placeholders like FULLNAME\_1 and CF\_1.

### For newcomers and experts

If you are new, run the pipeline on one short Italian sentence and read the printed entities. Then try the anonymize helper to see the placeholders and the dictionary that stays on your machine.

Experts will note the card's production tip. Pair the model with regular expressions and checksums for structured fields, such as email, phone, IBAN, CF, PIVA, card numbers, amounts and plates, and let the checksum win when the two disagree. The context window is 8192 tokens.

Your document goes to the local model → Entities become numbered placeholders → Only placeholders go to the outside LLM → The local dictionary restores the reply

### Good to know

- Accuracy: the card reports a micro-F1 of 0.989, and you should still check results on your own documents
- Safety net: pair it with regex and checksum checks for structured fields
- Context: 8192 tokens
- License: MIT
- Cost to run: none named, no API key or account, and the model works offline after download
- Data it reaches: it downloads files from Hugging Face, then reads the text you give it on your own machine
- Not for: a sole safeguard on sensitive data, and not for languages beyond its training mix, which the card says is Italian-first

## README

````markdown
# rizzo-pii-0.3B

A small CPU-friendly model that finds 22 kinds of personal data in Italian legal text, including codice fiscale and partita IVA, for reversible anonymization. Suits law firms and developers building privacy filters.

Made by rizzoaiacademy on Hugging Face. These notes are Mindket's, written from its model page and model card; the model's own files and license are on Hugging Face.

## About

What it is: rizzo-pii-0.3B is a small token-classification model that finds personal data in Italian legal text, with about 0.3 billion parameters on a ModernBERT-style backbone. It tags 22 categories, including Italian identifiers such as the codice fiscale and the partita IVA. Its job is to make anonymization reversible.

Who it suits: Law firms and compliance teams who want to use an outside language model without sending client details. It also suits developers building privacy filters for Italian documents that must run on a normal computer.

```table
Industry | Who uses it | How they use it | Example
Legal | Law firms | Replace names and IDs with placeholders before an AI call | Mask a client's codice fiscale
Compliance | Data protection teams | Find personal data in documents | Scan a contract for IBANs and emails
Software | Privacy tool developers | Add local PII detection to an app | Run the model on CPU in a desktop tool
Research | NLP researchers | Study Italian PII recognition | Compare entity tags on legal text
```

Anyone working mainly in other languages can skip it, since the model is Italian-first and the card's own training mix covers eight languages.

Where to use it:

- Python scripts that use the transformers library
- Computers without a GPU, since the card says it needs about 0.5 GB of RAM on CPU
- Windows, macOS or Linux, after downloading with Hugging Face's hub tool
- The authors' separate rizzo-pii desktop app, which the card mentions for production use

```table
Use case | Who | What they get back
Detect personal data | Developers | Entities with a group name and a confidence score
Reversible anonymization | Law firms | Placeholders such as FULLNAME_1, plus a local dictionary to restore them
Italian legal identifiers | Compliance teams | Tags for CF, PIVA, CATASTO, DOCID and PROVINCE
```

How to set it up:

- Python with pip
- The transformers library
- About 0.5 GB of RAM for CPU use, and about 154 MB of weights at 4-bit as an estimate

1. Install the Hugging Face hub package.
2. Download the model files.
3. Load the model with the transformers pipeline, as the snippet below shows.

```sh
pip install -U huggingface_hub
hf download rizzoaiacademy/rizzo-pii-0.3B
```

How to use it: Build a token-classification pipeline with simple aggregation, which merges word pieces into whole entities, and run it over your text. For each entity you get its group, the matched word and a score.

```python
from transformers import pipeline

nlp = pipeline(
    "token-classification",
    model="rizzoaiacademy/rizzo-pii-0.3B",
    aggregation_strategy="simple",   # merges B-/I- subwords into whole entities
)
```

For the intended reversible use, the card defines a small function that swaps each entity for a numbered placeholder and keeps a dictionary. You send only the placeholder text to the outside model, then use the dictionary to rebuild the original in its answer.

```python
def anonymize(text, ents):
    """Replace each entity with a numbered placeholder; keep a reversible dictionary."""
    mapping, out, counters = {}, text, {}
    for e in sorted(ents, key=lambda x: x["start"], reverse=True):
        g = e["entity_group"]
        counters[g] = counters.get(g, 0) + 1
        tag = f"[{g}_{counters[g]}]"
        mapping[tag] = text[e["start"]:e["end"]]
        out = out[:e["start"]] + tag + out[e["end"]:]
    return out, mapping

anon, table = anonymize(text, nlp(text))
```

```table
Tool | What it does
pipeline with token-classification | Finds personal data entities in text
anonymize | Swaps entities for numbered placeholders and returns a restore dictionary
```

Example: You pass an Italian sentence that holds a name, a codice fiscale, an IBAN and an email. The model tags each one with its group and a score near 1.00, and the helper turns them into placeholders like FULLNAME_1 and CF_1.

For newcomers and experts: If you are new, run the pipeline on one short Italian sentence and read the printed entities. Then try the anonymize helper to see the placeholders and the dictionary that stays on your machine.

Experts will note the card's production tip. Pair the model with regular expressions and checksums for structured fields, such as email, phone, IBAN, CF, PIVA, card numbers, amounts and plates, and let the checksum win when the two disagree. The context window is 8192 tokens.

```flow
Your document goes to the local model
Entities become numbered placeholders
Only placeholders go to the outside LLM
The local dictionary restores the reply
```

Good to know:

- Accuracy: the card reports a micro-F1 of 0.989, and you should still check results on your own documents
- Safety net: pair it with regex and checksum checks for structured fields
- Context: 8192 tokens
- License: MIT
- Cost to run: none named, no API key or account, and the model works offline after download
- Data it reaches: it downloads files from Hugging Face, then reads the text you give it on your own machine
- Not for: a sole safeguard on sensitive data, and not for languages beyond its training mix, which the card says is Italian-first

## On Hugging Face, 13 November 2026

- Task: token classification
- Library: transformers
- Parameters: 308M
- Weights: about 1.2 GB in F32; about 154 MB at 4-bit (estimate)
- Formats: Safetensors
- Downloads in the last 30 days: 6,484
- Likes: 23
- License: mit
- Languages: it
- Based on: jhu-clsp/mmBERT-base
- Quantized versions: 7
- Fine-tunes: 1
- Tags: transformers, safetensors, modernbert, token-classification, italian, legal, gdpr, anonymization, privacy, mmbert, model-index

## Links

- Model: https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B
- Files: https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B/tree/main

## Get the model

Download its files with Hugging Face's command line:

```sh
pip install -U huggingface_hub
hf download rizzoaiacademy/rizzo-pii-0.3B
```

Then follow the usage in its model card. Nothing in this kit runs by itself.
````

## What is in it

1 files, 6 KB, downloaded as a zip.

```text
README.md  6 KB
```

## Source

[rizzoaiacademy/rizzo-pii-0.3B on Hugging Face](https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B)

## Compare with similar

Listed Hugging Face models in the same category that share the most tags with this one.

| Product | Downloads, last 30 days | Likes | Parameters | License | Last change |
| --- | --- | --- | --- | --- | --- |
| rizzo-pii-0.3B (this page) | 6,484 | 23 | 308M | mit | 2026-08-09 |
| [privacy-filter-nemotron-v2](https://mindket.com/p/23532a37-0110-417a-8dbb-6c1fd00a796a) | 154,398 | 57 | 1.4B | apache-2.0 | 2026-09-30 |
| [PII-Tracer](https://mindket.com/p/cb03372e-7eea-4c7b-bfee-be3c53650ba6) | 8,506 | 97 | 596M | mit | 2026-09-22 |
| [SaulLM-54B-Instruct](https://mindket.com/p/f6f4f701-3913-4cae-81e9-f823c78d35f8) | 315 | 16 | 46.7B | mit | 2024-07-31 |

Numbers as Mindket last read them, on 2026-11-13.

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Last change on Hugging Face: 2026-08-09
- First published: 2026-06-28
- Checked on Hugging Face: 2026-11-13
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open rizzoaiacademy/rizzo-pii-0.3B on Hugging Face](https://huggingface.co/rizzoaiacademy/rizzo-pii-0.3B)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/37c4000b-ebb5-4db2-9df5-a87a46896f81)
- [Its page on Mindket](https://mindket.com/p/37c4000b-ebb5-4db2-9df5-a87a46896f81)
