Instructions to use SemViQA/tc-xlmr-viwikifc with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use SemViQA/tc-xlmr-viwikifc with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="SemViQA/tc-xlmr-viwikifc")# pip install -U transformers accelerate # Load model directly from transformers import ClaimModelForClassification model = ClaimModelForClassification.from_pretrained("SemViQA/tc-xlmr-viwikifc", device_map="auto") - Notebooks
- Google Colab
- Kaggle
SemViQA-TC: Vietnamese Three-class Classification for Claim Verification
Model Description
SemViQA-TC is one of the key components of the SemViQA system, designed for three-class classification in Vietnamese fact-checking. This model classifies a given claim into one of three categories: SUPPORTED, REFUTED, or NOT ENOUGH INFORMATION (NEI) based on retrieved evidence.
Model Information
- Developed by: SemViQA Research Team
- Fine-tuned model: XLM-R
- Supported Language: Vietnamese
- Task: Three-Class Classification (Fact Verification)
- Dataset: ViWikiFC
SemViQA-TC serves as the first step in the two-step classification process of the SemViQA system. It initially categorizes claims into three classes: SUPPORTED, REFUTED, or NEI. For claims classified as SUPPORTED or REFUTED, a secondary binary classification model (SemViQA-BC) further refines the prediction. This hierarchical classification strategy enhances the accuracy of fact verification.
Usage Example
Direct Model Usage
# Install semviqa
!pip install semviqa
# Initalize a pipeline
import torch
import torch.nn.functional as F
from transformers import AutoTokenizer
from semviqa.tvc.model import ClaimModelForClassification
tokenizer = AutoTokenizer.from_pretrained("SemViQA/tc-xlmr-viwikifc")
model = ClaimModelForClassification.from_pretrained("SemViQA/tc-xlmr-viwikifc")
claim = "ChiαΊΏn tranh vα»i Campuchia ΔΓ£ kαΊΏt thΓΊc trΖ°α»c khi Viα»t Nam thα»ng nhαΊ₯t."
evidence = "Sau khi thα»ng nhαΊ₯t, Viα»t Nam tiαΊΏp tα»₯c gαΊ·p khΓ³ khΔn do sα»± sα»₯p Δα» vΓ tan rΓ£ cα»§a Δα»ng minh LiΓͺn XΓ΄ cΓΉng Khα»i phΓa ΔΓ΄ng, cΓ‘c lα»nh cαΊ₯m vαΊn cα»§a Hoa Kα»³, chiαΊΏn tranh vα»i Campuchia, biΓͺn giα»i giΓ‘p Trung Quα»c vΓ hαΊu quαΊ£ cα»§a chΓnh sΓ‘ch bao cαΊ₯p sau nhiα»u nΔm Γ‘p dα»₯ng."
inputs = tokenizer(
claim,
evidence,
truncation="only_second",
add_special_tokens=True,
max_length=256,
padding='max_length',
return_attention_mask=True,
return_token_type_ids=False,
return_tensors='pt',
)
labels = ["NEI", "SUPPORTED", "REFUTED"]
with torch.no_grad():
outputs = model(**inputs)
logits = outputs["logits"]
probabilities = F.softmax(logits, dim=1).squeeze()
for i, (label, prob) in enumerate(zip(labels, probabilities.tolist()), start=1):
print(f"{i}) {label} {prob:.4f}")
# 1) NEI 0.0091
# 2) SUPPORTED 0.0014
# 3) REFUTED 0.9894
Evaluation Results
SemViQA-TC is one of the key components of the two-step classification (TVC) approach in the SemViQA system. SemViQA-TC achieved impressive results on the test set, demonstrating accurate and efficient classification capabilities. The detailed evaluation of SemViQA-TC is presented in the table below.
| Method | ViWikiFC | ||||
|---|---|---|---|---|---|
| ER | VC | Strict Acc | VC Acc | ER Acc | Time (s) |
| TF-IDF | InfoXLMlarge | 75.56 | 82.21 | 90.15 | 131 |
| XLM-Rlarge | 76.47 | 82.78 | 90.15 | 134 | |
| Ernie-Mlarge | 75.56 | 81.83 | 90.15 | 144 | |
| BM25 | InfoXLMlarge | 70.44 | 79.01 | 83.50 | 130 |
| XLM-Rlarge | 70.97 | 78.91 | 83.50 | 132 | |
| Ernie-Mlarge | 70.21 | 78.29 | 83.50 | 141 | |
| SBert | InfoXLMlarge | 74.99 | 81.59 | 89.72 | 195 |
| XLM-Rlarge | 75.80 | 82.35 | 89.72 | 194 | |
| Ernie-Mlarge | 75.13 | 81.44 | 89.72 | 203 | |
| QA-based approaches | VC | ||||
| ViMRClarge | InfoXLMlarge | 77.28 | 81.97 | 92.49 | 3778 |
| XLM-Rlarge | 78.29 | 82.83 | 92.49 | 3824 | |
| Ernie-Mlarge | 77.38 | 81.92 | 92.49 | 3785 | |
| InfoXLMlarge | InfoXLMlarge | 78.14 | 82.07 | 93.45 | 4092 |
| XLM-Rlarge | 79.20 | 83.07 | 93.45 | 4096 | |
| Ernie-Mlarge | 78.24 | 82.21 | 93.45 | 4102 | |
| LLM | |||||
| Qwen2.5-1.5B-Instruct | 51.03 | 65.18 | 78.96 | 7665 | |
| Qwen2.5-3B-Instruct | 44.38 | 62.31 | 71.35 | 12123 | |
| LLM | VC | ||||
| Qwen2.5-1.5B-Instruct | InfoXLMlarge | 66.14 | 76.47 | 78.96 | 7788 |
| XLM-Rlarge | 67.67 | 78.10 | 78.96 | 7789 | |
| Ernie-Mlarge | 66.52 | 76.52 | 78.96 | 7794 | |
| Qwen2.5-3B-Instruct | InfoXLMlarge | 59.88 | 72.50 | 71.35 | 12246 |
| XLM-Rlarge | 60.74 | 73.08 | 71.35 | 12246 | |
| Ernie-Mlarge | 60.02 | 72.21 | 71.35 | 12251 | |
| SER Faster (ours) | TVC (ours) | ||||
| TF-IDF + ViMRClarge | Ernie-Mlarge | 79.44 | 82.93 | 94.60 | 410 |
| TF-IDF + InfoXLMlarge | Ernie-Mlarge | 79.77 | 83.07 | 95.03 | 487 |
| SER (ours) | TVC (ours) | ||||
| TF-IDF + ViMRClarge | InfoXLMlarge | 80.25 | 83.84 | 94.69 | 2731 |
| XLM-Rlarge | 80.34 | 83.64 | 94.69 | 2733 | |
| Ernie-Mlarge | 79.53 | 82.97 | 94.69 | 2733 | |
| TF-IDF + InfoXLMlarge | InfoXLMlarge | 80.68 | 83.98 | 95.31 | 3860 |
| XLM-Rlarge | 80.82 | 83.88 | 95.31 | 3843 | |
| Ernie-Mlarge | 80.06 | 83.17 | 95.31 | 3891 | |
Citation
If you use SemViQA-TC in your research, please cite:
@misc{tran2025semviqasemanticquestionanswering,
title={SemViQA: A Semantic Question Answering System for Vietnamese Information Fact-Checking},
author={Dien X. Tran and Nam V. Nguyen and Thanh T. Tran and Anh T. Hoang and Tai V. Duong and Di T. Le and Phuc-Lu Le},
year={2025},
eprint={2503.00955},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2503.00955},
}
π Paper Link: SemViQA on arXiv
π Source Code: GitHub - SemViQA
- Downloads last month
- 18