Skip to page content
SAVRN
Search Plan a project

Open-weight model · Audio classification

cn_conformer_small_pfas

by Quan wq2012/cn_conformer_small_pfas

cn_conformer_small_pfas is an open-weight model for audio classification from Quan, released under Apache License 2.0. It has 2M parameters. At 16-bit it needs about 0 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index. It draws 13 downloads a month.

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json…

Parameters2M
Context—
Weights17.3 MB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads13

Runs On

What it takes to serve cn_conformer_small_pfas (2M parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 18, 2026.

cn_conformer_small_pfas on every accelerator the SAVRN Index prices, at every precision

Model Card

By Quan, published under apache-2.0, revision af505fe93e4f.

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Read Quan's full model card

FlaxSpeaker: cn_conformer_small_pfas (conformer - small)

Disclaimer & Open-Source Reproduction Notice

This is not an officially supported Google product.

This model checkpoint and the accompanying FlaxSpeaker library are an independent, clean-room open-source reproduction in JAX/Flax of speaker recognition algorithms published in: - GE2E: Generalized End-to-End Loss for Speaker Verification (arXiv:1710.10467) - Dr-Vectors: Decision Residual Networks and an Improved Loss for Speaker Recognition (arXiv:2104.01989) - Conformer-ATP: Attentive Temporal Pooling for Conformer-based Streaming Language Identification in Long-form Speech (arXiv:2202.12163) - PFAS: Parameter-Free Attentive Scoring for Speaker Verification (arXiv:2203.05642v3)

The experiments in those original papers were conducted using Google's proprietary internal infrastructure and internal datasets, not this open-source library or public dataset split.

Model Summary

Property Value
Model ID cn_conformer_small_pfas
Hugging Face Repository wq2012/cn_conformer_small_pfas
Hugging Face Collection FlaxSpeaker Collection
GitHub Repository wq2012/FlaxSpeaker
PyPI Package flaxspeaker
Backbone Architecture conformer (small)
Temporal Pooling pfas
Training Loss extended_set_softmax
Verification Scoring pfas
Output Embedding Dim 640
Encoder Parameters 2,162,187
Training Domain cnceleb2
Audio Frontend 80-dim log_mel @ 16000 Hz + Energy VAD + CMVN

Model Files Included

  • model.safetensors: Primary model weights in SafeTensors format
  • flax_model.msgpack: Native Flax Msgpack serialized parameters
  • config.json: FlaxSpeakerConfig model & training architecture configuration
  • preprocessor_config.json: WhisperFeatureExtractor-compatible frontend configuration
  • eval_results.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Quickstart Usage

Python API (from Hugging Face Hub or Local Directory)

from flaxspeaker import load_pretrained

model = load_pretrained("wq2012/cn_conformer_small_pfas")
emb = model.extract_embedding("path/to/utterance.flac")
score = model.verify("path/to/enroll.flac", "path/to/test.flac")
print(f"Embedding shape: {emb.shape}, Verification score: {score:.4f}")

Command-Line Inference

python scripts/inference.py --model_dir wq2012/cn_conformer_small_pfas \
    --enroll_audio path/to/enroll.flac --test_audio path/to/test.flac

Multi-Domain Evaluation Results

1-Utterance Verification Across Evaluation Domains

Evaluation Split Trials EER (%) 95% Bootstrap CI (%) [email protected] [email protected] ROC-AUC
LibriSpeech (English Read) 3,000 24.47% [22.90, 26.00] 0.9727 0.9400 0.8471
CN-Celeb2 (Chinese Multi-Genre) 3,000 22.13% [20.75, 23.82] 0.9660 0.8607 0.8569
VoxCeleb1 (In-the-Wild Celebrity) 2,000 28.15% [26.30, 30.05] 0.9720 0.9720 0.8053
Universal Pooled (All 3 Domains) 8,000 26.20% [25.26, 27.20] 0.9872 0.9630 0.8243
Universal Macro-Average (3 Domains) 8,000 24.92% — 0.9702 0.9242 0.8364

3-Utterance Multi-Enrollment Verification Across Evaluation Domains

Evaluation Split Trials 3-Utt EER (%) 95% Bootstrap CI (%) [email protected] ROC-AUC
LibriSpeech (3-Utt) 1,000 18.90% [16.60, 21.50] 0.8440 0.8982
CN-Celeb2 (3-Utt) 1,000 19.80% [17.30, 22.25] 0.9280 0.8893
VoxCeleb1 (3-Utt) 1,000 24.80% [21.85, 27.60] 0.9660 0.8414
Universal Pooled (3-Utt) 3,000 23.20% [21.65, 24.57] 0.9407 0.8624
Universal Macro-Average (3-Utt) 3,000 21.17% — 0.9127 0.8763

Citation

@inproceedings{wan2018generalized,
  title={Generalized End-to-End Loss for Speaker Verification},
  author={Wan, Li and Wang, Quan and Papir, Alan and Moreno, Ignacio Lopez},
  booktitle={IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
  pages={4879--4883},
  year={2018}
}

@inproceedings{pelecanos2021dr,
  title={Dr-Vectors: Decision Residual Networks and an Improved Loss for Speaker Recognition},
  author={Pelecanos, Jason and Wang, Quan and Moreno, Ignacio Lopez},
  booktitle={Interspeech},
  pages={4603--4607},
  year={2021}
}

@inproceedings{wang2022attentive,
  title={Attentive Temporal Pooling for Conformer-based Streaming Language Identification in Long-form Speech},
  author={Wang, Quan and Yu, Yang and Pelecanos, Jason and Huang, Yiling and Moreno, Ignacio Lopez},
  booktitle={The Speaker and Language Recognition Workshop (Odyssey)},
  year={2022}
}

@inproceedings{pelecanos2022parameter,
  title={Parameter-Free Attentive Scoring for Speaker Verification},
  author={Pelecanos, Jason and Wang, Quan and Huang, Yiling and Moreno, Ignacio Lopez},
  booktitle={The Speaker and Language Recognition Workshop (Odyssey)},
  year={2022}
}

Configuration

Model type
flaxspeaker

Identity and Version

Repository
wq2012/cn_conformer_small_pfas
Publisher
Quan
Task
Audio classification
Modality
Audio
Library
flaxspeaker
Parameters
2M parameters
Languages
jax
Revision
af505fe93e4f8e8c6fdaabac7f499552a5cb66cd
First published
2026-10-15
Last updated
2026-10-18

Files and Weights

7 files, 17.3 MB in total. The weights are 2 files totalling 17.3 MB in msgpack, safetensors.

Weights2 files · 17.3 MB
Configuration3 files · 16.8 KB
Documentation1 file · 6.0 KB
Repository1 file · 1.5 KB
Every file
FileTypeSizeSHA-256
flax_model.msgpackWeights8.7 MB 2500794e2d13
model.safetensorsWeights8.7 MB bf898f607e9a
config.jsonConfiguration9.7 KB —
eval_results.jsonConfiguration6.9 KB —
preprocessor_config.jsonConfiguration200 B —
README.mdDocumentation6.0 KB —
.gitattributesRepository1.5 KB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
17.3 MB
Download from Quan

Released by Quan through its official repository on Hugging Face. Read the license.

Built From

Memory Requirements

PrecisionWeights in memory
As published17.3 MB
16-bit0.0 GB
8-bit0.0 GB
4-bit0.0 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About cn_conformer_small_pfas

How much GPU memory does cn_conformer_small_pfas need?

About 0 GB at 16-bit and 0 GB at 4-bit: the weights (2M parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run cn_conformer_small_pfas on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use cn_conformer_small_pfas commercially?

Yes. cn_conformer_small_pfas is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Model · Audio classification

univ_conformer_small_pfas_ge2e

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker

Model · Audio classification

univ_conformer_small_pfas

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker

Model · Audio classification

ls_conformer_small_pfas_ge2e

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker

Model · Audio classification

ls_conformer_small_pfas

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker

Model · Audio classification

univ_conformer_small_dr_vectors

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker

Model · Audio classification

cn_conformer_small_dr_vectors

Quan

model.safetensors: Primary model weights in SafeTensors format - flaxmodel.msgpack: Native Flax Msgpack serialized parameters - config.json: FlaxSpeakerConfig model & training architecture configuration - preprocessorconfig.json: WhisperFeatureExtractor-compatible frontend configuration - evalresults.json: Verified multi-domain evaluation metrics (1-utt & 3-utt EER, minDCF, ROC-AUC, 95% bootstrap CIs)

Open weights apache-2.0 2M parameters flaxspeaker