temsa/IrishCore-GlobalPointer-135M-v1-rc1
IrishCore-GlobalPointer-135M-v1-rc1
IrishCore-GlobalPointer-135M-v1-rc1 is a raw-only Irish PII masking model derived from OpenMed/OpenMed-PII-mLiteClinical-Base-135M-v1.
It targets explicit masking with placeholders such as [PII:PPSN], [PII:EMAIL], and [PII:POSTCODE] for:
PPSNACCOUNT_NUMBERBANK_ROUTING_NUMBERCREDIT_DEBIT_CARDPASSPORT_NUMBERPOSTCODEPHONE_NUMBEREMAILFIRST_NAMELAST_NAMESWIFT_BIC
The main target is English plus Irish Gaelic text in citizen-support, public-sector, and HSE-style flows. The repo ships both the full transformers checkpoint and a dynamic q8 ONNX artifact for CPU deployment.
What This Model Is
This release is a compact span-matrix extractor built on top of the OpenMed mLiteClinical encoder.
Short version:
- Base OpenMed: plain BIO token classification
- DiffMask: token-span extraction with per-token presence plus boundary heads
- GlobalPointer: direct typed span scoring over the token grid
This release is fully raw-only:
- no regex scanner layer
- no checksum validator layer
- no post-hoc repair decoder
The published behavior is fully defined by the weights plus the bundled score-only decoder in common.py.
Architecture
- Encoder: DistilBERT-size encoder from
OpenMed/OpenMed-PII-mLiteClinical-Base-135M-v1 - Span head: GlobalPointer-style typed span matrix
- Positional encoding inside the span head: RoPE
- Training objective: positive-weighted BCE with hard-negative mining over valid upper-triangular spans
- Runtime: one forward pass plus score-only span decoding
Unlike the DiffMask line, this release does not use diffusion-style training. It directly predicts whether each (start_token, end_token) pair is an entity span for each released label.
Why This Line Exists
The main reason for this architecture change was to improve the cases where earlier raw-only lines were fragile:
- mixed messages containing 2-3 PII types together
- Eircode and IBAN/card boundaries in realistic support text
- PPSN and phone/entity overlap cases
- broader generalization on unseen nearby phrasing
The tradeoff is straightforward:
- accuracy is materially better on the hard Irish/UAT suites
- CPU q8 speed is slower than the DiffMask q8 line
Included Artifacts
- full
transformerscheckpoint in the repo root - dynamic q8 ONNX artifact in
onnx/model_quantized.onnx inference_mask.pyinference_mask_onnx.py- benchmark JSON and summaries in
eval/ - release provenance in
training_sources.json
Benchmark Summary
This Release
Closest Public Comparisons
Practical reading:
- This release is the strongest raw-only checkpoint in this repo family on the hard Irish/UAT/holdout suites.
- The q8 CPU artifact keeps the same accuracy on the main suites used for release.
- The multilingual benchmark's overall score is lower than the
PPSNlabel-only score because that suite penalizes extra name detections as false positives. On the label that matters there,PPSN, this release is strong.
Usage
Full checkpoint
python3 inference_mask.py \
--model temsa/IrishCore-GlobalPointer-135M-v1-rc1 \
--text "My PPSN is 1234567T, my Eircode is D02 XY45, and my phone is 087 123 4567." \
--jsonONNX q8 CPU artifact
python3 inference_mask_onnx.py \
--model temsa/IrishCore-GlobalPointer-135M-v1-rc1 \
--text "My PPSN is 1234567T, my Eircode is D02 XY45, and my phone is 087 123 4567." \
--jsonBoth scripts emit:
- extracted spans with offsets and labels
- masked text using
[PII:LABEL]
How It Differs From Other OpenMed-Derived Lines
Compared with the original OpenMed base model:
- this release does not use a BIO token head
- it scores typed spans directly
- it is tuned only for the released Irish core PII labels
Compared with DiffMask:
- no diffusion-style masked denoising during training
- no token-presence or boundary heads
- direct span-matrix scoring instead of reconstructing spans from token and boundary logits
Compared with the old hybrid releases:
- no external scanner or validator layer is required for the published behavior
- deployment stays simple: encoder + span head + deterministic replacement
Limitations
- It is slower on CPU than the DiffMask q8 release.
- The multilingual benchmark is not a clean multilingual NER benchmark; it is a PPSN-focused suite where extra name detections count against the overall score.
- If you need the fastest CPU-first public line rather than the strongest raw-only accuracy, compare this release against
temsa/IrishCore-DiffMask-135M-v1-rc6.
References
- DistilBERT: https://arxiv.org/abs/1910.01108
- Global Pointer: Novel Efficient Span-based Approach for Named Entity Recognition: https://arxiv.org/abs/2208.03054
- RoFormer: Enhanced Transformer with Rotary Position Embedding: https://arxiv.org/abs/2104.09864
License And Attribution
- Release license: Apache-2.0
- Base model:
OpenMed/OpenMed-PII-mLiteClinical-Base-135M-v1 - Dataset attribution is listed in
NOTICE
<!-- portfolio-comparison:start -->
Portfolio Comparison
Updated: 2026-03-16.
Use this section for the fastest public comparison across the temsa PII masking portfolio.
- The first core table only includes public checkpoints that ship both comparable q8 accuracy and q8 CPU throughput.
- The first PPSN table only includes public artifacts that ship comparable PPSN accuracy and CPU throughput.
- Missing cells in the archive tables mean the older release did not ship that metric in its public bundle.
- DiffMask rows use the reconciled
clean_single_passharness that matches the deployed runtime. - GlobalPointer rows use the public raw-only span-matrix release bundle and its packaged q8 ONNX artifact.
- The same content is shipped as
PORTFOLIO_COMPARISON.mdinside each public model repo.
Irish Core PII: Comparable Public Checkpoints
Irish Core PII: Other Public Checkpoints
Finance-boundary q8 F1 is 1.0000 for OpenMed-mLiteClinical-IrishCorePII-135M-v2-rc6, OpenMed-mLiteClinical-IrishCorePII-135M-v2-rc7, OpenMed-mLiteClinical-IrishCorePII-135M-v2-rc8, and all public IrishCore-DiffMask releases from rc1 to rc6. OpenMed-mLiteClinical-IrishCorePII-135M-v2-rc5 ships 0.8750 on that public q8 suite.
PPSN-Only: Comparable Public Artifacts
PPSN-Only: Historical Public Checkpoints
If you need the strongest current raw-only Irish core model, start with IrishCore-GlobalPointer-135M-v1-rc4. If you need the fastest CPU-first raw-only line, compare it against IrishCore-DiffMask-135M-v1-rc6. If you need a PPSN-only artifact, compare the canonical fp32, fp16, and q8 variants of OpenMed-mLiteClinical-IrishPPSN-135M-v1 directly in the table above. <!-- portfolio-comparison:end -->
