QuerynAi/queryn-adapter-pplx-embed-1_to_bge-m3
Queryn adapter — pplx-embed-1 → bge-m3
Translates an embedding produced by pplx-embed-1 into the embedding space of bge-m3, so a corpus already embedded with pplx-embed-1 can be served against a bge-m3 index without re-embedding it. Part of the Queryn embedding-translation engine.
Specs
Architecture ablation (best test cosine): linear 0.8640 ← saved, deep 0.8587.
Input / output contract
- Input
source_embedding— float32, shape[batch, 1024]. Rawpplx-embed-1embeddings; the graph L2-normalizes them itself, so pre-normalization is neither required nor harmful. - Output
target_embedding— float32, shape[batch, 1024], unit-normalized, inbge-m3space. - Batch axis is dynamic.
Usage
import numpy as np, onnxruntime as ort
from huggingface_hub import hf_hub_download
path = hf_hub_download("QuerynAi/queryn-adapter-pplx-embed-1_to_bge-m3", "model.onnx")
sess = ort.InferenceSession(path, providers=["CPUExecutionProvider"])
src = np.random.rand(4, 1024).astype(np.float32) # your pplx-embed-1 embeddings
tgt = sess.run(["target_embedding"], {"source_embedding": src})[0]
assert tgt.shape == (4, 1024) # unit vectors in bge-m3 spaceTraining
Trained on paired embeddings over a unified multi-domain corpus — arXiv abstracts, Australian case law, SQuAD passages, PubMed abstracts, and crypto/markets news (~350k rows spanning science, legal, QA, medical, and finance). Loss: 1 - mean cosine similarity, Adam, ReduceLROnPlateau, best-epoch checkpoint. Both a linear baseline and the MLP are trained for every pair; the higher-scoring one is published (ties go to linear).
Plots
`pplx-embed-1` → all targets: learning curves and best scores (this pair included).
Linear vs. deep for every pair (black ring = saved architecture).
Full adapter set: Queryn Embedding Adapters
Provenance
- Source checkpoint:
models/v1/pplx-embed-1_to_bge-m3.pt(sha256084d1195d8934100…) - Converted: 2026-08-30T20:45:23+00:00 · torch 2.13.0 ·
ptConverter.py
License
Released under the MIT license.
