OPENER-Sup โ€” supervised open-world NER

This repo hosts the contrastively fine-tuned Matryoshka embedder of OPENER, used in its supervised operating point (OPENER-Sup): the most accurate setting, where a tiny balanced linear head is fitted on your labelled spans.

Pipeline: GLiNER-L (frozen detector) โ†’ this fine-tuned embedder โ†’ LinearSVC (balanced). The embedder is identical to Thibault-GAREL/opener-zs; only the typing head differs (a trained probe vs. label-name prototypes).

Usage (turnkey)

pip install opener-ner
from opener import OpenerSup

m = OpenerSup.from_pretrained("Thibault-GAREL/opener-sup")   # + auto-downloads GLiNER-L

# fit the typing head on YOUR data: (start_char, end_char, label) per sentence
texts  = ["Marie Curie discovered radium."]
annots = [[(0, 11, "person"), (23, 29, "element")]]
m.fit(texts, annots)

ents = m.predict("Albert Einstein formulated relativity.")
m.save_head("opener_sup_head.joblib")   # reuse with m.load_head("opener_sup_head.joblib")

How it was trained

Same embedder as OPENER-ZS:

  • Base nomic-ai/nomic-embed-text-v1.5; Triplet contrastive (CoNLL-2003) + hard-negative mining.
  • The typing head is a LinearSVC(class_weight="balanced") fitted one-vs-rest on the target's labelled spans (in this embedding space).

Results (13-dataset benchmark)

OPENER-Sup is the most accurate system overall: 40.2 end-to-end AMI and 62.5 on gold mentions (vs a zero-shot OWNER 43.0), while staying frugal (~143 ms / 1.6 Wh).

License & credits

MIT. Base embedder Apache-2.0; detector GLiNER. From the OPENER research code (LyRIDS Symposium 2026).

Downloads last month
29
Safetensors
Model size
0.1B params
Tensor type
F32
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for Thibault-GAREL/opener-sup

Finetuned
(36)
this model

Collection including Thibault-GAREL/opener-sup