CoolFace
Modelpublic

NomaDamas/splade-cocondenser-ensembledistil-mlx

sourceHugging Facecc-by-nc-sa-4.0updated 1mo agoView on Hugging Face
0likes22downloads
Model Card

splade-cocondenser-ensembledistil-mlx

MLX (bfloat16) conversion of `naver/splade-cocondenser-ensembledistil` for Apple Silicon, produced by NomaDamas/SPLADE-mlx.

SPLADE++ (CoCondenser-EnsembleDistil): symmetric sparse encoder for queries and documents (BERT-base).

Changes from upstream: PyTorch checkpoint converted to MLX safetensors (parameter re-mapping, cast to bfloat16). No training or fine-tuning was performed.

Quality: BEIR quality parity vs PyTorch fp32: nDCG@10 delta +0.0001 (NFCorpus) / +0.0004 (SciFact) in bfloat16. This repository stores bfloat16 weights. Any fp32 parity number above comes from a separate fp32 conversion of the upstream checkpoint, not this linked bfloat16 artifact. Full methodology: see the SPLADE-mlx report.

Usage

python
from splade_mlx import load
import mlx.core as mx

model, tok = load("NomaDamas/splade-cocondenser-ensembledistil-mlx")
enc = tok(["what causes vitamin d deficiency"], return_tensors="np", padding=True)
sparse = model.encode(mx.array(enc["input_ids"]), mx.array(enc["attention_mask"]))  # (1, 30522)

Do not pass dtype="float32" for this pre-converted repository: its declared stored dtype is bfloat16. Load the upstream naver/splade-cocondenser-ensembledistil checkpoint to create an fp32 conversion.

License

CC BY-NC-SA 4.0 — the original weights are Copyright (c) NAVER Corp. (NAVER LABS Europe) and are licensed for non-commercial use only. This conversion is Adapted Material redistributed under the same CC BY-NC-SA 4.0 license (ShareAlike), with attribution and the changes stated above. This repository is not affiliated with or endorsed by NAVER. For commercial use, consider NomaDamas/Splade_PP_en_v1-mlx (Apache-2.0).