HalluVision fine-tuned CyNER (xlm-roberta-base)

Token-classification checkpoint used to produce the reference entities in

Song, Lee, Kim, Choi, Kim. Measuring Hallucination in Large Language Models for Cyber Threat Intelligence: An Exploratory Study. Computers and Electrical Engineering, 2026 (in press).

It is CyNER (Alam et al., 2022) fine-tuned on 50 MITRE ATT&CK software articles annotated with five STIX-aligned labels. Every entity-based number in the paper (answer-matching precision/recall, frequency-based entity similarity, the Threatpost and The Hacker News ground truth, the Llama-3 summary NER) was produced by this exact checkpoint, so it is released to make those numbers regenerable.

Labels

BIO tagging over five entity types:

id tag id tag
0 B-Malware 6 B-Organization
1 O 7 I-Malware
2 B-Indicator 8 I-Organization
3 I-Indicator 9 B-Vulnerability
4 B-System 10 I-Vulnerability
5 I-System

Label definitions follow Table 3 of the paper (Malware, System, Indicator, Vulnerability, Organization).

Training

Fine-tuned with the CyNER training loop (cyner.TransformersNER) from xlm-roberta-base. Hyperparameters, verbatim from parameter.json:

parameter value
dataset dataset_new (MITRE, CoNLL BIO; released as ner_finetune/ on Mendeley Data)
transformers_model xlm-roberta-base
random_seed 1
lr 5e-6
epochs 30
warmup_step 0
weight_decay 1e-7
batch_size 32
max_seq_length 128
fp16 false
max_grad_norm 1
lower_case false

Held-out test split: precision 74.69, recall 77.84, F1 76.23 (paper Section 4.2). A manual audit of the checkpoint on 70 Threatpost articles (204 entity judgements, two raters, Cohen's kappa 0.726) is reported in Section 4.8 and released as ner_audit/ on Mendeley Data. Vulnerability is the weakest label (strict precision 0.0 on the audited sample); see the paper before relying on that label.

Usage

The paper's extraction recipe (sentence split, CyNER heuristics on, flair NER on, keep the five target types, order-preserving dedup, drop spans of two characters or fewer) is implemented in scripts/run_cyner_ner.py of the code release:

pip install git+https://github.com/aiforsec/CyNER nltk
huggingface-cli download Ricky-dev/halluvision-cyner-xlmr-base --local-dir cyner_ckpt
CYNER_CKPT=cyner_ckpt python scripts/run_cyner_ner.py \
    --input llm_outputs/llm_results_gpt4o_mini_2503.json --text-key summary_text \
    --output summary_ner_gpt4o_mini.json

Minimal direct use:

import cyner
model = cyner.CyNER(transformer_model="cyner_ckpt", use_heuristic=True, flair_model="ner")
for ent in model.get_entities("Evil Corp pivoted to LockBit ransomware after OFAC sanctions."):
    print(ent.entity_type, ent.text)

Related resources

  • Data: Mendeley Data, doi:10.17632/z8sfdnch2c (corpus, LLM outputs, reference entities, per-document metrics, human validation labels, NER audit sheets, fine-tuning data).
  • Code: https://github.com/SeungHo0422/HalluVision

License

MIT, matching CyNER and xlm-roberta-base. The MITRE fine-tuning data is derived from publicly available MITRE ATT&CK pages.

Citation

@article{song2026halluvision,
  title   = {Measuring Hallucination in Large Language Models for Cyber Threat Intelligence: An Exploratory Study},
  author  = {Song, Seungho and Lee, Donggyu and Kim, Jaehan and Choi, Jiyoung and Kim, Jinwoo},
  journal = {Computers and Electrical Engineering},
  year    = {2026},
  note    = {in press}
}
Downloads last month
21
Safetensors
Model size
0.3B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Ricky-dev/halluvision-cyner-xlmr-base

Finetuned
(4252)
this model

Evaluation results

  • precision on MITRE fine-tuning set (50 articles, held-out test split)
    self-reported
    0.747
  • recall on MITRE fine-tuning set (50 articles, held-out test split)
    self-reported
    0.778
  • f1 on MITRE fine-tuning set (50 articles, held-out test split)
    self-reported
    0.762