Skip to content

OpenTSLab/HoliAntiSpoof

Repository files navigation

HoliAntiSpoof: Audio LLM for Holistic Speech Anti-Spoofing

This repository is the official code release for the paper "HoliAntiSpoof: Audio LLM for Holistic Speech Anti-Spoofing".

Data and PreTrained Model

DailyTalkEdit and the semantic influence annotation of PartialEdit are provided here.

The pretrained HoliAntiSpoof (DoRA rank = 64) checkpoint is available here.

Quick Start

Data Preparation

Prepare the anti-spoofing data based on formats in example_data/partial_edit.json, where "audio" is the absolute audio path.

Training

export PYTHONPATH=.
torchrun <args> \
    qwenvl/train/train_qwen.py \
    -c example_configs/train_sft.yaml \
    -o \
    training_args.output_dir=experiments/holi_anti_spoof

Arguments after -o/--overrides follow hydra override rules, i.e., arg1=val1 arg2=val2 ++arg3=val3.

Inference

torchrun <args> \
    qwenvl/train/inference.py \
    -c example_configs/infer.yaml \
    -ckpt <ckpt_path> \
    -o \
    data_dict.test.dataset_list.0=/path/to/infer/data.json \
    ++output_fname=path/to/output.json \
    ++test_dataloader.batch_size=1

Inference results will be saved to <ckpt_path>/../path/to/output.json.

Evaluation

python evaluation/eval_real_fake.py \
    -c example_configs/eval/asvspoof2019.yaml \
    infer_dir=<infer_dir>

Corresponding settings are specified in example_configs/eval/asvspoof2019.yaml.

Citation

@article{xu2026holiantispoof,
  title={HoliAntiSpoof: Audio LLM for Holistic Speech Anti-Spoofing},
  author={Xu, Xuenan and Ren, Yiming and Liu, Liwei and Wu, Wen and Li, Baoxiang and Lu, Chaochao and Wang, Shuai and Zhang, Chao},
  journal={arXiv preprint arXiv:2602.04535},
  year={2026}
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published