# privy - en / pii (1500 rows, 1899 spans, 530 negatives)

Main metric: **missed** - gold spans no predicted character touched. Score threshold 0.5; spans without a score always count. `hidden` - gold spans every character of which is covered: touching one character counts as detection, not as hiding. `hidden` is counted over normalized predictions - a prediction is stretched to whole words before it is compared, so it is what a masker that repeats the same normalization would hide; a masker that masks the raw offsets of the model hides no more than this. Char P / R / F1 are reference only. Trivial baseline, mask everything: 0 missed, 100% hidden, char P 0.051 (94.9% of the text over-masked). `rows touched` / `chars masked` count rows the source left without annotations where a mask touched something, and the characters masked in them; that absence of annotations is not evidence that those rows hold nothing sensitive, so this is not a false-alarm rate. The exact CSVs keep the technical column names `fp_rows` and `fp_chars`.

| model | missed | missed % [95% CI] | hidden | char F1 [95% CI] | P | R | entity exact | entity overlap | typed F1 | rows touched | chars masked | dropped spans | ms/row | params | train |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gravitee-small | **8** | 0.4% [0.2%, 0.8%] | 99.2% | 0.878 [0.866, 0.889] | 0.783 | 0.997 | 0.810 | 0.815 | 0.808 | 256/530 | 2577 | 0 | 4 | 29M |  |
| nym-base | **69** | 3.6% [2.8%, 4.6%] | 83.4% | 0.470 [0.448, 0.491] | 0.312 | 0.952 | 0.309 | 0.398 | 0.180 | 413/530 | 15527 | 0 | 4 | 308M |  |
| pplx | **96** | 5.1% [4.0%, 6.2%] | 91.8% | 0.419 [0.397, 0.441] | 0.270 | 0.930 | 0.313 | 0.376 | 0.394 | 402/530 | 18955 | 0 | 64 | 596M |  |
| nym-small | **128** | 6.7% [5.6%, 8.0%] | 79.1% | 0.460 [0.438, 0.482] | 0.307 | 0.923 | 0.292 | 0.383 | 0.164 | 401/530 | 15032 | 0 | 76 | - |  |
| openmed-multilingual | **321** | 16.9% [15.0%, 19.1%] | 82.3% | 0.698 [0.675, 0.719] | 0.648 | 0.756 | 0.615 | 0.675 | 0.693 | 313/530 | 3962 | 0 | 28 | 1.4B | train |
| gliner-nvidia | **330** | 17.4% [15.6%, 19.2%] | 78.8% | 0.545 [0.524, 0.564] | 0.409 | 0.817 | 0.478 | 0.504 | 0.363 | 437/530 | 9914 | 0 | 15 | 445M |  |
| nuner-zero | **380** | 20.0% [17.9%, 22.0%] | 76.7% | 0.786 [0.767, 0.804] | 0.731 | 0.851 | 0.677 | 0.717 | 0.487 | 191/530 | 2926 | 0 | 15 | 449M |  |
| gliner2-fastino | **381** | 20.1% [18.2%, 21.9%] | 77.5% | 0.630 [0.607, 0.651] | 0.535 | 0.766 | 0.593 | 0.622 | 0.394 | 272/530 | 5651 | 0 | 9 | 307M |  |
| mmbert32k | **425** | 22.4% [20.5%, 24.5%] | 60.4% | 0.558 [0.537, 0.579] | 0.430 | 0.796 | 0.319 | 0.468 | 0.281 | 368/530 | 8206 | 0 | 5 | 308M |  |
| gliner2-hivetrace-omni | **464** | 24.4% [22.4%, 26.6%] | 74.0% | 0.548 [0.526, 0.568] | 0.437 | 0.733 | 0.525 | 0.539 | 0.352 | 324/530 | 7729 | 0 | 9 | 307M |  |
| apararti | **464** | 24.4% [22.3%, 26.7%] | 69.2% | 0.419 [0.396, 0.440] | 0.289 | 0.760 | 0.328 | 0.392 | 0.349 | 372/530 | 14063 | 0 | 62 | 1.4B |  |
| opf-kz-ru | **473** | 24.9% [22.8%, 27.1%] | 68.5% | 0.417 [0.394, 0.439] | 0.288 | 0.756 | 0.324 | 0.388 | 0.351 | 351/530 | 13782 | 0 | 62 | 1.4B |  |
| opf-ru | **480** | 25.3% [23.3%, 27.5%] | 59.9% | 0.362 [0.343, 0.381] | 0.248 | 0.667 | 0.239 | 0.330 | 0.289 | 410/530 | 15693 | 0 | 43 | 1.4B |  |
| kalyan-ettin | **481** | 25.3% [23.3%, 27.4%] | 55.5% | 0.547 [0.526, 0.567] | 0.455 | 0.686 | 0.369 | 0.528 | 0.507 | 339/530 | 6464 | 0 | 11 | 68M |  |
| pii-shield-onnx | **529** | 27.9% [25.4%, 30.4%] | 63.9% | 0.108 [0.099, 0.117] | 0.058 | 0.711 | 0.070 | 0.305 | 0.016 | 421/530 | 76265 | 0 | 244 | - |  |
| openai-base | **592** | 31.2% [28.9%, 33.7%] | 63.8% | 0.418 [0.393, 0.440] | 0.299 | 0.692 | 0.333 | 0.392 | 0.360 | 283/530 | 11713 | 0 | 70 | 1.4B |  |
| gliner2-large | **596** | 31.4% [29.3%, 33.6%] | 64.6% | 0.562 [0.537, 0.583] | 0.488 | 0.662 | 0.468 | 0.508 | 0.409 | 317/530 | 5822 | 7 | 25 | 486M |  |
| gliner-stream-pii | **607** | 32.0% [29.9%, 34.0%] | 66.1% | 0.746 [0.725, 0.769] | 0.874 | 0.652 | 0.721 | 0.746 | 0.466 | 135/530 | 1252 | 0 | 60 | 677M |  |
| gliner25-fastino | **702** | 37.0% [34.6%, 39.4%] | 61.2% | 0.623 [0.598, 0.648] | 0.631 | 0.616 | 0.562 | 0.582 | 0.381 | 168/530 | 3737 | 1 | 6 | 287M |  |
| gliner-urchade | **751** | 39.5% [37.0%, 42.2%] | 59.3% | 0.486 [0.462, 0.512] | 0.401 | 0.619 | 0.426 | 0.440 | 0.384 | 270/530 | 7064 | 0 | 8 | 289M |  |
| opf-ru-v2 | **751** | 39.5% [37.2%, 41.9%] | 51.1% | 0.385 [0.364, 0.407] | 0.281 | 0.612 | 0.260 | 0.347 | 0.311 | 282/530 | 11020 | 0 | 505 | 1.4B |  |
| traciora | **762** | 40.1% [37.6%, 42.7%] | 49.8% | 0.378 [0.354, 0.399] | 0.280 | 0.584 | 0.258 | 0.341 | 0.310 | 276/530 | 10851 | 0 | 269 | 1.4B |  |
| gliner2-hivetrace-uni | **782** | 41.2% [38.5%, 43.8%] | 56.8% | 0.408 [0.386, 0.428] | 0.338 | 0.514 | 0.410 | 0.426 | 0.259 | 363/530 | 8515 | 0 | 15 | 147M |  |
| gliner-pii-base | **792** | 41.7% [39.4%, 44.1%] | 57.6% | 0.552 [0.529, 0.574] | 0.536 | 0.570 | 0.544 | 0.552 | 0.437 | 245/530 | 4165 | 0 | 6 | 166M |  |
| openmed-nemotron | **809** | 42.6% [40.1%, 45.1%] | 42.1% | 0.450 [0.425, 0.472] | 0.356 | 0.611 | 0.249 | 0.380 | 0.410 | 329/530 | 8326 | 0 | 31 | 1.4B |  |
| ru-pii-ner | **868** | 45.7% [43.0%, 48.2%] | 49.3% | 0.474 [0.450, 0.498] | 0.448 | 0.502 | 0.333 | 0.465 | 0.116 | 244/530 | 4426 | 0 | 86 | 358M |  |
| gliner-pii-edge | **908** | 47.8% [45.5%, 50.1%] | 48.6% | 0.351 [0.330, 0.372] | 0.263 | 0.526 | 0.292 | 0.315 | 0.207 | 381/530 | 12038 | 0 | 996 | 45M |  |
| ru-legal-ner | **921** | 48.5% [46.0%, 51.3%] | 35.2% | 0.301 [0.279, 0.321] | 0.217 | 0.492 | 0.099 | 0.254 | 0.107 | 435/530 | 15720 | 0 | 5 | 29M |  |
| bardsai-eu | **971** | 51.1% [48.5%, 53.9%] | 35.0% | 0.419 [0.393, 0.444] | 0.336 | 0.557 | 0.259 | 0.384 | 0.181 | 218/530 | 8231 | 0 | 398 | - |  |
| gliner-multi-v21 | **1072** | 56.5% [53.8%, 59.1%] | 39.2% | 0.345 [0.322, 0.368] | 0.301 | 0.403 | 0.303 | 0.339 | 0.198 | 215/530 | 7516 | 0 | 8 | 289M |  |
| davlan-mbert | **1147** | 60.4% [57.6%, 63.0%] | 30.3% | 0.509 [0.482, 0.535] | 0.959 | 0.346 | 0.417 | 0.554 | 0.245 | 12/530 | 144 | 0 | 6 | 177M |  |
| davlan-xlmr | **1223** | 64.4% [61.9%, 66.8%] | 26.5% | 0.496 [0.468, 0.523] | 0.986 | 0.331 | 0.379 | 0.521 | 0.236 | 2/530 | 17 | 0 | 5 | 277M |  |
| ner-ru-gherman | **1242** | 65.4% [62.8%, 68.0%] | 20.6% | 0.386 [0.359, 0.411] | 0.945 | 0.242 | 0.281 | 0.505 | 0.073 | 15/530 | 133 | 0 | 6 | 177M |  |
| ner-ru-yqelz | **1246** | 65.6% [63.5%, 67.8%] | 23.5% | 0.440 [0.411, 0.467] | 0.567 | 0.359 | 0.279 | 0.421 | 0.138 | 154/530 | 2625 | 0 | 7 | 559M |  |
| gliner2-vladlinv | **1257** | 66.2% [63.3%, 68.9%] | 33.3% | 0.349 [0.324, 0.374] | 0.428 | 0.295 | 0.368 | 0.374 | 0.293 | 93/530 | 2197 | 0 | 6 | 287M |  |
| stanza-ru | **1518** | 79.9% [77.9%, 82.0%] | 11.1% | 0.173 [0.151, 0.196] | 0.152 | 0.201 | 0.068 | 0.146 | 0.020 | 475/530 | 11231 | 0 | 51 | - |  |
| rules-ru | **1607** | 84.6% [82.8%, 86.4%] | 15.2% | 0.384 [0.350, 0.420] | 0.963 | 0.240 | 0.261 | 0.264 | 0.384 | 4/530 | 82 | 0 | 0 | - |  |
| natasha | **1721** | 90.6% [89.3%, 91.9%] | 8.8% | 0.090 [0.075, 0.106] | 0.119 | 0.072 | 0.102 | 0.112 | 0.042 | 180/530 | 5308 | 0 | 4 | - |  |
| fef2-secret-ru | **1756** | 92.5% [91.2%, 93.7%] | 6.4% | 0.155 [0.131, 0.181] | 0.515 | 0.091 | 0.104 | 0.127 | 0.074 | 65/530 | 1017 | 0 | 6 | 177M |  |
| spacy-ru-lg | **1818** | 95.7% [94.7%, 96.7%] | 3.2% | 0.052 [0.040, 0.065] | 0.080 | 0.038 | 0.031 | 0.061 | 0.013 | 135/530 | 4557 | 0 | 4 | - |  |
| spacy-alrosait | **1899** | 100.0% [100.0%, 100.0%] | 0.0% | 0.000 [0.000, 0.000] | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0/530 | 0 | 0 | 4 | - |  |

Neighbours by rank a paired bootstrap cannot tell apart (95%, missed %) - pairs, not a transitive chain, so `a ≈ b` and `b ≈ c` do not make `a ≈ c`: openmed-multilingual ≈ gliner-nvidia; nuner-zero ≈ gliner2-fastino; gliner2-fastino ≈ mmbert32k; mmbert32k ≈ gliner2-hivetrace-omni; gliner2-hivetrace-omni ≈ apararti; apararti ≈ opf-kz-ru; opf-kz-ru ≈ opf-ru; opf-ru ≈ kalyan-ettin; kalyan-ettin ≈ pii-shield-onnx; openai-base ≈ gliner2-large; gliner2-large ≈ gliner-stream-pii; gliner25-fastino ≈ gliner-urchade; gliner-urchade ≈ opf-ru-v2; opf-ru-v2 ≈ traciora; traciora ≈ gliner2-hivetrace-uni; gliner2-hivetrace-uni ≈ gliner-pii-base; gliner-pii-base ≈ openmed-nemotron; openmed-nemotron ≈ ru-pii-ner; ru-pii-ner ≈ gliner-pii-edge; gliner-pii-edge ≈ ru-legal-ner; ru-legal-ner ≈ bardsai-eu; davlan-xlmr ≈ ner-ru-gherman; ner-ru-gherman ≈ ner-ru-yqelz; ner-ru-yqelz ≈ gliner2-vladlinv

## Missed by group

| model | PERSON | ADDRESS | CONTACT | ID | NET | SECRET | ORG |
|---|---|---|---|---|---|---|---|
| spans in gold | 428 | 699 | 87 | 398 | 178 | 30 | 79 |
| gravitee-small | 3 (0.7%) | 5 (0.7%) | 0 (0.0%) | 0 (0.0%) | 0 (0.0%) | 0 (0.0%) | 0 (0.0%) |
| nym-base | 3 (0.7%) | 61 (8.7%) | 0 (0.0%) | 0 (0.0%) | 3 (1.7%) | 0 (0.0%) | 2 (2.5%) |
| pplx | 6 (1.4%) | 31 (4.4%) | 0 (0.0%) | 1 (0.3%) | 3 (1.7%) | 0 (0.0%) | 55 (69.6%) |
| nym-small | 4 (0.9%) | 107 (15.3%) | 0 (0.0%) | 0 (0.0%) | 11 (6.2%) | 3 (10.0%) | 3 (3.8%) |
| openmed-multilingual | 2 (0.5%) | 7 (1.0%) | 85 (97.7%) | 88 (22.1%) | 138 (77.5%) | 0 (0.0%) | 1 (1.3%) |
| gliner-nvidia | 19 (4.4%) | 207 (29.6%) | 0 (0.0%) | 72 (18.1%) | 28 (15.7%) | 0 (0.0%) | 4 (5.1%) |
| nuner-zero | 45 (10.5%) | 166 (23.7%) | 0 (0.0%) | 142 (35.7%) | 19 (10.7%) | 0 (0.0%) | 8 (10.1%) |
| gliner2-fastino | 26 (6.1%) | 192 (27.5%) | 2 (2.3%) | 61 (15.3%) | 94 (52.8%) | 1 (3.3%) | 5 (6.3%) |
| mmbert32k | 137 (32.0%) | 214 (30.6%) | 1 (1.1%) | 27 (6.8%) | 9 (5.1%) | 16 (53.3%) | 21 (26.6%) |
| gliner2-hivetrace-omni | 14 (3.3%) | 278 (39.8%) | 3 (3.4%) | 78 (19.6%) | 85 (47.8%) | 2 (6.7%) | 4 (5.1%) |
| apararti | 42 (9.8%) | 307 (43.9%) | 2 (2.3%) | 12 (3.0%) | 53 (29.8%) | 0 (0.0%) | 48 (60.8%) |
| opf-kz-ru | 54 (12.6%) | 308 (44.1%) | 0 (0.0%) | 8 (2.0%) | 46 (25.8%) | 0 (0.0%) | 57 (72.2%) |
| opf-ru | 22 (5.1%) | 305 (43.6%) | 2 (2.3%) | 30 (7.5%) | 71 (39.9%) | 0 (0.0%) | 50 (63.3%) |
| kalyan-ettin | 54 (12.6%) | 210 (30.0%) | 0 (0.0%) | 105 (26.4%) | 65 (36.5%) | 0 (0.0%) | 47 (59.5%) |
| pii-shield-onnx | 152 (35.5%) | 258 (36.9%) | 1 (1.1%) | 71 (17.8%) | 15 (8.4%) | 4 (13.3%) | 28 (35.4%) |
| openai-base | 53 (12.4%) | 362 (51.8%) | 3 (3.4%) | 40 (10.1%) | 81 (45.5%) | 0 (0.0%) | 53 (67.1%) |
| gliner2-large | 21 (4.9%) | 371 (53.1%) | 2 (2.3%) | 121 (30.4%) | 66 (37.1%) | 1 (3.3%) | 14 (17.7%) |
| gliner-stream-pii | 166 (38.8%) | 235 (33.6%) | 9 (10.3%) | 116 (29.1%) | 74 (41.6%) | 2 (6.7%) | 5 (6.3%) |
| gliner25-fastino | 25 (5.8%) | 268 (38.3%) | 3 (3.4%) | 303 (76.1%) | 83 (46.6%) | 6 (20.0%) | 14 (17.7%) |
| gliner-urchade | 55 (12.9%) | 475 (68.0%) | 8 (9.2%) | 190 (47.7%) | 19 (10.7%) | 1 (3.3%) | 3 (3.8%) |
| opf-ru-v2 | 134 (31.3%) | 416 (59.5%) | 1 (1.1%) | 49 (12.3%) | 94 (52.8%) | 0 (0.0%) | 57 (72.2%) |
| traciora | 35 (8.2%) | 452 (64.7%) | 17 (19.5%) | 117 (29.4%) | 92 (51.7%) | 0 (0.0%) | 49 (62.0%) |
| gliner2-hivetrace-uni | 46 (10.7%) | 519 (74.2%) | 2 (2.3%) | 42 (10.6%) | 110 (61.8%) | 11 (36.7%) | 52 (65.8%) |
| gliner-pii-base | 148 (34.6%) | 426 (60.9%) | 2 (2.3%) | 146 (36.7%) | 54 (30.3%) | 5 (16.7%) | 11 (13.9%) |
| openmed-nemotron | 125 (29.2%) | 399 (57.1%) | 0 (0.0%) | 164 (41.2%) | 60 (33.7%) | 4 (13.3%) | 57 (72.2%) |
| ru-pii-ner | 110 (25.7%) | 464 (66.4%) | 9 (10.3%) | 61 (15.3%) | 144 (80.9%) | 13 (43.3%) | 67 (84.8%) |
| gliner-pii-edge | 216 (50.5%) | 407 (58.2%) | 30 (34.5%) | 185 (46.5%) | 46 (25.8%) | 3 (10.0%) | 21 (26.6%) |
| ru-legal-ner | 292 (68.2%) | 445 (63.7%) | 2 (2.3%) | 91 (22.9%) | 38 (21.3%) | 8 (26.7%) | 45 (57.0%) |
| bardsai-eu | 223 (52.1%) | 405 (57.9%) | 25 (28.7%) | 217 (54.5%) | 65 (36.5%) | 12 (40.0%) | 24 (30.4%) |
| gliner-multi-v21 | 48 (11.2%) | 456 (65.2%) | 34 (39.1%) | 356 (89.4%) | 150 (84.3%) | 21 (70.0%) | 7 (8.9%) |
| davlan-mbert | 80 (18.7%) | 392 (56.1%) | 63 (72.4%) | 398 (100.0%) | 172 (96.6%) | 30 (100.0%) | 12 (15.2%) |
| davlan-xlmr | 140 (32.7%) | 408 (58.4%) | 75 (86.2%) | 398 (100.0%) | 166 (93.3%) | 30 (100.0%) | 6 (7.6%) |
| ner-ru-gherman | 63 (14.7%) | 445 (63.7%) | 65 (74.7%) | 398 (100.0%) | 177 (99.4%) | 30 (100.0%) | 64 (81.0%) |
| ner-ru-yqelz | 254 (59.3%) | 362 (51.8%) | 69 (79.3%) | 366 (92.0%) | 158 (88.8%) | 29 (96.7%) | 8 (10.1%) |
| gliner2-vladlinv | 72 (16.8%) | 688 (98.4%) | 26 (29.9%) | 218 (54.8%) | 171 (96.1%) | 3 (10.0%) | 79 (100.0%) |
| stanza-ru | 290 (67.8%) | 514 (73.5%) | 85 (97.7%) | 390 (98.0%) | 174 (97.8%) | 27 (90.0%) | 38 (48.1%) |
| rules-ru | 428 (100.0%) | 699 (100.0%) | 44 (50.6%) | 311 (78.1%) | 22 (12.4%) | 30 (100.0%) | 73 (92.4%) |
| natasha | 369 (86.2%) | 623 (89.1%) | 87 (100.0%) | 393 (98.7%) | 177 (99.4%) | 30 (100.0%) | 42 (53.2%) |
| fef2-secret-ru | 372 (86.9%) | 688 (98.4%) | 51 (58.6%) | 396 (99.5%) | 177 (99.4%) | 10 (33.3%) | 62 (78.5%) |
| spacy-ru-lg | 403 (94.2%) | 664 (95.0%) | 85 (97.7%) | 394 (99.0%) | 177 (99.4%) | 30 (100.0%) | 65 (82.3%) |
| spacy-alrosait | 428 (100.0%) | 699 (100.0%) | 87 (100.0%) | 398 (100.0%) | 178 (100.0%) | 30 (100.0%) | 79 (100.0%) |

## Char recall by gold type

| type | group | gravitee-small | nym-base | pplx | nym-small | openmed-multilingual | gliner-nvidia | nuner-zero | gliner2-fastino | mmbert32k | gliner2-hivetrace-omni | apararti | opf-kz-ru | opf-ru | kalyan-ettin | pii-shield-onnx | openai-base | gliner2-large | gliner-stream-pii | gliner25-fastino | gliner-urchade | opf-ru-v2 | traciora | gliner2-hivetrace-uni | gliner-pii-base | openmed-nemotron | ru-pii-ner | gliner-pii-edge | ru-legal-ner | bardsai-eu | gliner-multi-v21 | davlan-mbert | davlan-xlmr | ner-ru-gherman | ner-ru-yqelz | gliner2-vladlinv | stanza-ru | rules-ru | natasha | fef2-secret-ru | spacy-ru-lg | spacy-alrosait |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| COORDINATE | ADDRESS | 1.000 | 0.920 | 0.992 | 0.893 | 1.000 | 0.793 | 0.875 | 0.880 | 0.716 | 0.863 | 0.814 | 0.764 | 0.775 | 0.443 | 0.675 | 0.646 | 0.400 | 0.874 | 0.847 | 0.507 | 0.387 | 0.188 | 0.140 | 0.530 | 0.029 | 0.665 | 0.079 | 0.683 | 0.281 | 0.491 | 0.000 | 0.000 | 0.000 | 0.001 | 0.018 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| CREDIT_CARD | ID | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 0.848 | 0.592 | 1.000 | 1.000 | 0.888 | 1.000 | 1.000 | 0.981 | 0.982 | 0.888 | 0.843 | 0.863 | 0.574 | 0.506 | 0.391 | 0.962 | 0.870 | 0.904 | 0.889 | 0.709 | 0.927 | 1.000 | 0.870 | 0.366 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.399 | 0.000 | 0.942 | 0.000 | 0.000 | 0.000 | 0.000 |
| EMAIL_ADDRESS | CONTACT | 1.000 | 1.000 | 1.000 | 1.000 | 0.027 | 1.000 | 1.000 | 1.000 | 0.997 | 1.000 | 1.000 | 1.000 | 1.000 | 0.998 | 0.986 | 0.989 | 1.000 | 0.808 | 1.000 | 0.999 | 1.000 | 1.000 | 1.000 | 1.000 | 0.989 | 0.868 | 0.331 | 0.845 | 0.583 | 0.603 | 0.363 | 0.137 | 0.291 | 0.115 | 1.000 | 0.052 | 1.000 | 0.000 | 0.805 | 0.051 | 0.000 |
| IBAN_CODE | ID | 1.000 | 1.000 | 1.000 | 1.000 | 0.000 | 1.000 | 1.000 | 0.971 | 1.000 | 0.943 | 1.000 | 1.000 | 1.000 | 0.714 | 1.000 | 1.000 | 0.971 | 0.429 | 0.429 | 0.914 | 0.971 | 0.971 | 0.971 | 0.743 | 0.743 | 0.943 | 0.857 | 0.914 | 0.829 | 0.371 | 0.000 | 0.000 | 0.000 | 0.314 | 0.314 | 0.000 | 0.086 | 0.000 | 0.000 | 0.000 | 0.000 |
| IMEI | ID | 1.000 | 0.987 | 1.000 | 1.000 | 1.000 | 0.364 | 0.364 | 0.667 | 0.891 | 0.424 | 0.960 | 0.998 | 0.886 | 0.150 | 0.981 | 0.902 | 0.455 | 0.970 | 0.364 | 0.333 | 0.973 | 0.561 | 0.970 | 0.091 | 0.146 | 0.633 | 0.212 | 0.976 | 0.359 | 0.212 | 0.000 | 0.000 | 0.000 | 0.000 | 0.424 | 0.000 | 1.000 | 0.000 | 0.000 | 0.030 | 0.000 |
| IP_ADDRESS | NET | 1.000 | 0.914 | 1.000 | 0.876 | 0.000 | 0.544 | 1.000 | 0.529 | 0.777 | 0.529 | 0.981 | 0.958 | 0.716 | 1.000 | 0.905 | 0.825 | 0.494 | 0.496 | 0.970 | 0.512 | 0.930 | 0.646 | 0.430 | 0.544 | 1.000 | 0.153 | 0.505 | 0.325 | 0.752 | 0.242 | 0.000 | 0.000 | 0.000 | 0.055 | 0.000 | 0.046 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| LOCATION | ADDRESS | 0.996 | 0.898 | 0.941 | 0.842 | 0.994 | 0.693 | 0.871 | 0.693 | 0.755 | 0.606 | 0.619 | 0.603 | 0.480 | 0.731 | 0.553 | 0.582 | 0.465 | 0.543 | 0.587 | 0.289 | 0.493 | 0.502 | 0.146 | 0.292 | 0.601 | 0.259 | 0.462 | 0.257 | 0.669 | 0.365 | 0.493 | 0.497 | 0.324 | 0.650 | 0.014 | 0.386 | 0.000 | 0.082 | 0.021 | 0.052 | 0.000 |
| MAC_ADDRESS | NET | 1.000 | 0.970 | 1.000 | 0.852 | 1.000 | 0.974 | 0.786 | 0.692 | 0.594 | 0.615 | 0.872 | 0.888 | 0.457 | 0.587 | 0.959 | 0.656 | 0.718 | 0.995 | 0.641 | 0.821 | 0.480 | 0.480 | 0.564 | 0.128 | 0.332 | 0.299 | 0.462 | 0.522 | 0.389 | 0.026 | 0.000 | 0.000 | 0.000 | 0.029 | 0.128 | 0.000 | 0.538 | 0.000 | 0.008 | 0.000 | 0.000 |
| ORGANIZATION | ORG | 0.998 | 0.970 | 0.202 | 0.902 | 0.978 | 0.959 | 0.895 | 0.911 | 0.585 | 0.936 | 0.311 | 0.222 | 0.215 | 0.234 | 0.542 | 0.238 | 0.837 | 0.893 | 0.808 | 0.956 | 0.182 | 0.314 | 0.274 | 0.807 | 0.189 | 0.114 | 0.718 | 0.324 | 0.615 | 0.893 | 0.780 | 0.863 | 0.076 | 0.809 | 0.000 | 0.437 | 0.050 | 0.425 | 0.194 | 0.161 | 0.000 |
| PASSWORD | SECRET | 1.000 | 1.000 | 1.000 | 0.908 | 1.000 | 1.000 | 1.000 | 0.967 | 0.475 | 0.934 | 1.000 | 1.000 | 1.000 | 1.000 | 0.875 | 1.000 | 0.967 | 0.934 | 0.799 | 0.967 | 1.000 | 1.000 | 0.650 | 0.828 | 0.858 | 0.541 | 0.884 | 0.736 | 0.591 | 0.287 | 0.000 | 0.000 | 0.000 | 0.040 | 0.898 | 0.096 | 0.000 | 0.000 | 0.650 | 0.000 | 0.000 |
| PERSON | PERSON | 0.994 | 0.960 | 0.989 | 0.957 | 0.993 | 0.922 | 0.921 | 0.952 | 0.757 | 0.976 | 0.918 | 0.899 | 0.936 | 0.842 | 0.625 | 0.893 | 0.959 | 0.629 | 0.956 | 0.907 | 0.773 | 0.929 | 0.913 | 0.662 | 0.717 | 0.777 | 0.427 | 0.331 | 0.590 | 0.920 | 0.846 | 0.758 | 0.819 | 0.524 | 0.861 | 0.323 | 0.000 | 0.136 | 0.180 | 0.049 | 0.000 |
| PHONE_NUMBER | CONTACT | 1.000 | 1.000 | 1.000 | 1.000 | 0.000 | 1.000 | 1.000 | 0.955 | 0.977 | 0.932 | 0.939 | 0.977 | 0.939 | 0.975 | 0.966 | 0.932 | 0.955 | 0.977 | 0.932 | 0.818 | 0.953 | 0.352 | 0.955 | 0.955 | 0.977 | 0.886 | 0.955 | 0.987 | 0.602 | 0.227 | 0.000 | 0.000 | 0.000 | 0.051 | 0.409 | 0.000 | 0.000 | 0.000 | 0.023 | 0.000 | 0.000 |
| URL | NET | 1.000 | 1.000 | 0.963 | 0.991 | 0.006 | 0.885 | 0.900 | 0.199 | 0.875 | 0.267 | 0.405 | 0.499 | 0.231 | 0.267 | 0.819 | 0.223 | 0.494 | 0.415 | 0.212 | 0.992 | 0.047 | 0.144 | 0.136 | 0.902 | 0.704 | 0.106 | 0.931 | 0.552 | 0.338 | 0.072 | 0.048 | 0.080 | 0.008 | 0.058 | 0.016 | 0.000 | 0.967 | 0.008 | 0.000 | 0.011 | 0.000 |
| US_BANK_NUMBER | ID | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 0.971 | 0.912 | 0.971 | 0.971 | 0.941 | 1.000 | 1.000 | 1.000 | 0.824 | 0.941 | 0.941 | 0.882 | 1.000 | 0.206 | 0.794 | 0.971 | 0.971 | 0.941 | 0.882 | 0.794 | 0.912 | 0.324 | 0.971 | 0.706 | 0.059 | 0.000 | 0.000 | 0.000 | 0.088 | 0.206 | 0.000 | 0.059 | 0.000 | 0.029 | 0.000 | 0.000 |
| US_DRIVER_LICENSE | ID | 1.000 | 1.000 | 1.000 | 1.000 | 0.983 | 1.000 | 0.977 | 0.972 | 0.853 | 1.000 | 0.977 | 0.977 | 0.898 | 0.824 | 0.762 | 0.932 | 1.000 | 1.000 | 0.292 | 1.000 | 0.867 | 0.737 | 0.929 | 0.946 | 0.680 | 0.895 | 0.788 | 0.615 | 0.609 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.711 | 0.000 | 0.000 | 0.000 | 0.000 | 0.037 | 0.000 |
| US_ITIN | ID | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 0.927 | 0.764 | 0.964 | 0.982 | 0.891 | 0.964 | 0.964 | 0.909 | 0.945 | 0.727 | 0.891 | 0.745 | 0.982 | 0.073 | 0.745 | 0.818 | 0.455 | 0.927 | 0.836 | 0.636 | 0.964 | 0.327 | 0.727 | 0.473 | 0.218 | 0.000 | 0.000 | 0.000 | 0.000 | 0.618 | 0.018 | 0.000 | 0.000 | 0.000 | 0.018 | 0.000 |
| US_LICENSE_PLATE | ID | 0.987 | 0.987 | 0.970 | 0.987 | 0.960 | 0.817 | 0.580 | 0.623 | 0.457 | 0.653 | 0.840 | 0.920 | 0.523 | 0.310 | 0.557 | 0.760 | 0.797 | 0.230 | 0.027 | 0.207 | 0.687 | 0.463 | 0.497 | 0.447 | 0.193 | 0.460 | 0.320 | 0.127 | 0.100 | 0.037 | 0.000 | 0.000 | 0.000 | 0.283 | 0.203 | 0.063 | 0.000 | 0.093 | 0.000 | 0.000 | 0.000 |
| US_PASSPORT | ID | 1.000 | 1.000 | 1.000 | 1.000 | 0.982 | 0.655 | 0.491 | 0.618 | 0.909 | 0.745 | 0.964 | 0.982 | 0.964 | 0.545 | 0.673 | 0.927 | 0.491 | 0.855 | 0.200 | 0.327 | 0.836 | 0.582 | 0.945 | 0.473 | 0.418 | 0.909 | 0.364 | 0.691 | 0.364 | 0.073 | 0.000 | 0.000 | 0.000 | 0.000 | 0.618 | 0.018 | 0.000 | 0.000 | 0.018 | 0.000 | 0.000 |
| US_SSN | ID | 1.000 | 1.000 | 1.000 | 1.000 | 0.000 | 0.800 | 0.240 | 0.840 | 0.902 | 0.700 | 0.960 | 0.973 | 0.918 | 0.687 | 0.909 | 0.900 | 0.180 | 0.340 | 0.120 | 0.200 | 0.671 | 0.407 | 0.980 | 0.360 | 0.745 | 0.880 | 0.520 | 0.969 | 0.209 | 0.040 | 0.000 | 0.000 | 0.000 | 0.020 | 0.480 | 0.000 | 0.000 | 0.000 | 0.000 | 0.020 | 0.000 |

## Missed at thresholds 0.5 / 0.3 / 0.2 / 0.1

Only models that return a score. A lower threshold keeps more spans: fewer misses, more masking.

| model | 0.5 | 0.3 | 0.2 | 0.1 |
|---|---|---|---|---|
| gravitee-small | 8 (0.4%) | 4 (0.2%) | 4 (0.2%) | 4 (0.2%) |
| nym-base | 69 (3.6%) | 55 (2.9%) | 55 (2.9%) | 55 (2.9%) |
| nym-small | 128 (6.7%) | 113 (6.0%) | 112 (5.9%) | 112 (5.9%) |
| openmed-multilingual | 321 (16.9%) | 319 (16.8%) | 319 (16.8%) | 319 (16.8%) |
| gliner-nvidia | 330 (17.4%) | 189 (10.0%) | 127 (6.7%) | 63 (3.3%) |
| nuner-zero | 380 (20.0%) | 210 (11.1%) | 145 (7.6%) | 82 (4.3%) |
| gliner2-fastino | 381 (20.1%) | 240 (12.6%) | 187 (9.8%) | 130 (6.8%) |
| mmbert32k | 425 (22.4%) | 192 (10.1%) | 113 (6.0%) | 107 (5.6%) |
| gliner2-hivetrace-omni | 464 (24.4%) | 277 (14.6%) | 199 (10.5%) | 140 (7.4%) |
| apararti | 464 (24.4%) | 456 (24.0%) | 456 (24.0%) | 456 (24.0%) |
| opf-kz-ru | 473 (24.9%) | 466 (24.5%) | 466 (24.5%) | 466 (24.5%) |
| opf-ru | 480 (25.3%) | 444 (23.4%) | 443 (23.3%) | 443 (23.3%) |
| kalyan-ettin | 481 (25.3%) | 424 (22.3%) | 422 (22.2%) | 422 (22.2%) |
| pii-shield-onnx | 529 (27.9%) | 325 (17.1%) | 306 (16.1%) | 306 (16.1%) |
| openai-base | 592 (31.2%) | 590 (31.1%) | 590 (31.1%) | 590 (31.1%) |
| gliner2-large | 596 (31.4%) | 418 (22.0%) | 346 (18.2%) | 238 (12.5%) |
| gliner-stream-pii | 607 (32.0%) | 408 (21.5%) | 299 (15.7%) | 202 (10.6%) |
| gliner25-fastino | 702 (37.0%) | 603 (31.8%) | 562 (29.6%) | 502 (26.4%) |
| gliner-urchade | 751 (39.5%) | 531 (28.0%) | 395 (20.8%) | 219 (11.5%) |
| opf-ru-v2 | 751 (39.5%) | 741 (39.0%) | 740 (39.0%) | 740 (39.0%) |
| traciora | 762 (40.1%) | 729 (38.4%) | 724 (38.1%) | 724 (38.1%) |
| gliner2-hivetrace-uni | 782 (41.2%) | 483 (25.4%) | 317 (16.7%) | 117 (6.2%) |
| gliner-pii-base | 792 (41.7%) | 282 (14.8%) | 100 (5.3%) | 20 (1.1%) |
| openmed-nemotron | 809 (42.6%) | 702 (37.0%) | 693 (36.5%) | 693 (36.5%) |
| gliner-pii-edge | 908 (47.8%) | 79 (4.2%) | 12 (0.6%) | 0 (0.0%) |
| ru-legal-ner | 921 (48.5%) | 520 (27.4%) | 449 (23.6%) | 426 (22.4%) |
| bardsai-eu | 971 (51.1%) | 808 (42.5%) | 790 (41.6%) | 783 (41.2%) |
| gliner-multi-v21 | 1072 (56.5%) | 628 (33.1%) | 300 (15.8%) | 95 (5.0%) |
| davlan-mbert | 1147 (60.4%) | 1146 (60.3%) | 1146 (60.3%) | 1146 (60.3%) |
| davlan-xlmr | 1223 (64.4%) | 1211 (63.8%) | 1211 (63.8%) | 1211 (63.8%) |
| ner-ru-gherman | 1242 (65.4%) | 1214 (63.9%) | 1211 (63.8%) | 1209 (63.7%) |
| ner-ru-yqelz | 1246 (65.6%) | 1204 (63.4%) | 1204 (63.4%) | 1204 (63.4%) |
| gliner2-vladlinv | 1257 (66.2%) | 1232 (64.9%) | 1220 (64.2%) | 1196 (63.0%) |
| fef2-secret-ru | 1756 (92.5%) | 1754 (92.4%) | 1754 (92.4%) | 1754 (92.4%) |

Notes: the unit of counting is one gold span after boundary normalization - the same unit in `missed`, in the group table, in the threshold table and in the ensembles; two annotations that share boundaries but not type are two spans, so an empty answer misses 100%. Gold and predicted boundaries are normalized the same way (whitespace, word boundaries, merge of adjacent same-label pieces). `dropped spans` - predicted intervals outside the text: rejected, not clipped to fit. A run made before `run.py` started clipping span ends to the piece it fed the model can carry them; `meta.clipped` counts what the clipping fixes in newer runs. Zero-shot models get the taxonomy of the set as labels (the `labels` field of `meta.json`). `train` - the model was trained on the source of this set (its slices and corrupted copies included): its row is not comparable with the others and stays out of the pooled numbers; an empty `contaminated` list in `benchmark/models.toml` means no evidence of overlap was found, not proof of none. `hidden` - gold spans every character of which is covered; a touched span counts as detected, not as hidden. missed % and char F1 carry 95% bootstrap intervals over rows (1000 resamples, the same rows for every model of the set). The group of a gold type comes from `BENCH/<set>/meta.json`; a model label with no group falls into OTHER. ms/row is a median and includes chunking of long texts; hardware and batch are in the meta line of the prediction file.
