alanjoshua2005/text-embedding
By alanjoshua2005 · ↓ 0 · ♥ 0 · Updated 2026-03-16
What's in this repo
This page lists the files in alanjoshua2005/text-embedding, including biencoder_rope.onnx, biencoder_rope_int8.onnx.
- 2 ONNX models (.onnx files)
- 7 files, including 2 .onnx, 2 .json, 1 .md, 1 .pt
- Last updated 2026-03-16
ONNX files
How to use
These ONNX files can be loaded with ONNX Runtime. To inspect a model graph, upload the file to the Netron viewer. Download links point to the original files on Hugging Face.
README
import onnxruntime as ort
import numpy as np
from transformers import AutoTokenizer
from huggingface_hub import hf_hub_download
# ── Load ───────────────────────────────────────────────────────────────────
tokenizer = AutoTokenizer.from_pretrained("alanjoshua2005/text-embedding", subfolder="tokenizer")
onnx_path = hf_hub_download("alanjoshua2005/text-embedding", "onnx/biencoder_rope.onnx")
session = ort.InferenceSession(onnx_path, providers=["CPUExecutionProvider"])
# ── Encode ─────────────────────────────────────────────────────────────────
def encode(texts):
if isinstance(texts, str): texts = [texts]
enc = tokenizer(texts, padding=True, truncation=True, max_length=256, return_tensors="np")
return session.run(["embeddings"], {"input_ids": enc["input_ids"], "attention_mask": enc["attention_mask"]})[0]
# ── Test ───────────────────────────────────────────────────────────────────
emb = encode("Hello world!")
print(emb) # (1, 256)
BiEncoder RoPE — Sentence Embedding Model
A 34M parameter sentence embedding model trained from scratch using PyTorch.
Architecture
- 6-layer Transformer encoder with RoPE positional embeddings
- Mean pooling + L2 normalization
- 256-dim output vectors
Training (Curriculum)
| Phase | Dataset | Loss |
|---|---|---|
| 1 | all-nli | MNRLoss |
| 2 | squad | MNRLoss |
| 3 | msmarco-bm25 | HardNegativeLoss |
| 4 | natural-questions | MNRLoss |
Files
tokenizer/— HuggingFace tokenizer (bert-base-uncased)pytorch/checkpoint_phase4_nq.pt— PyTorch weightsonnx/biencoder_rope.onnx— ONNX FP32onnx/biencoder_rope_int8.onnx— ONNX INT8 (recommended for CPU)
Performance
- FP32 ONNX size : 134.3 MB
- INT8 ONNX size : 34.6 MB
- Throughput : ~247 sentences/sec on CPU
Model info
sentence-transformers
sentence-transformers
onnx
embeddings
semantic-search
retrieval
en
license:mit
region:us
↓ 0
♥ 0
Created: 2026-03-15
Updated: 2026-03-16
View on Hugging FaceFiles (7)
.gitattributes
README.md
onnx/biencoder_rope.onnx
ONNX
onnx/biencoder_rope_int8.onnx
ONNX
pytorch/checkpoint_phase4_nq.pt
tokenizer/tokenizer.json
tokenizer/tokenizer_config.json
Related models
More from alanjoshua2005
More models
No task type declared.