Downloads · 30 days
62
11% of all-time downloads
sumeshi/privacy-filter-jp-GGUF
privacy-filter-jp-GGUF is a token classification model from sumeshi. Use it when you need labels on individual words, such as names. It is set up for gguf. The card lists the license as apache-2.0.
Experimental Japanese fine-tune for privacy-filter.cpp.
Downloads · 30 days
62
11% of all-time downloads
All-time downloads
548
Public
Repo size
7.3 GB
Likes
0
Public
Click a slice to open those files.
.gguf4.5 GB · 100%
From the Hugging Face model README
Experimental Japanese fine-tune for privacy-filter.cpp.
This model keeps the normalized 8-label privacy-filter target space and focuses on Japanese addresses, Japanese person names, and Japanese business-context boundaries. English/general multilingual behavior is inherited from the base model but is not benchmarked here.
This model is not a complete anonymization system and is not a drop-in production guarantee.
private_personprivate_addressprivate_emailprivate_phoneprivate_dateaccount_numberprivate_urlsecretv2 release candidate trained locally on 2026-07-03:
runs/pf-jp/model-ft-v2b1e-4, batch size 8, max length 384account_number), so model size and inference
speed are identical to v1e2bafc05ef7e6beb354e78cd77c8cfb5101d55044f23b2cdf343731a882f3b1cde9499518ade053d65d20c2eaae2833954e114d29dd77fa7466dade782da9cd6Training data summary (~34,000 rows, all offsets machine-validated):
account_numberNo real PII is intentionally used.
Exact-match span micro F1, measured with the runtime span post-processing that
ships with privacy-filter.cpp (edge trimming and person-span splitting).
The v2 benchmark (datasets/benchmark/{eval2,challenge2}.jsonl, 106
hand-written examples) targets realistic multi-paragraph business documents,
Japanese phone-format variants, Japan-specific identifiers, furigana name
pairs, and PII-free negatives. challenge2 is kept blind: it is never used
for tuning or per-row error analysis.
| benchmark | v1 model | v2 model |
|---|---|---|
eval2 (realistic documents) | 0.400 | 0.717 |
challenge2 (blind held-out) | 0.453 | 0.693 |
challenge (v1 split, regression) | 0.912 | 0.964 |
The v1 split numbers previously published (0.929 overall) predate this
pipeline and were optimistic: the v1 boundary training data shared
template-generated texts with the v1 eval/challenge splits.
Label-level v2 result on eval2.jsonl:
| label | precision | recall | F1 | partial-fn |
|---|---|---|---|---|
account_number | 0.625 | 0.625 | 0.625 | 5 |
private_address | 0.700 | 0.875 | 0.778 | 1 |
private_date | 0.643 | 0.643 | 0.643 | 5 |
private_email | 0.333 | 0.333 | 0.333 | 4 |
private_person | 0.793 | 0.821 | 0.807 | 4 |
private_phone | 0.917 | 0.917 | 0.917 | 1 |
private_url | 0.500 | 0.500 | 0.500 | 3 |
secret | 0.667 | 1.000 | 0.800 | 0 |
| micro | 0.696 | 0.740 | 0.717 | 23 |
Most remaining false negatives are partial (boundary differences on detected
entities rather than complete misses; see the partial-fn column). Use
deterministic detectors for URLs, email addresses, phone numbers, IDs, and
secrets when those spans are high-risk.
This GGUF uses the custom openai-privacy-filter architecture supported by
privacy-filter.cpp.
build/release/pf-cli --info privacy-filter-jp-f16.gguf
echo "配送先:〒160-0022 東京都新宿区新宿3-99-88 サンプルマンション101号室" | \
build/release/pf-cli --classify privacy-filter-jp-f16.gguf 0.5
See the source repository README for data generation, fine-tuning, benchmark, conversion, and upload commands.