Team Ai
Modelpublic

Octen/Octen-Embedding-8B-INT8

sourceHugging Faceapache-2.0updated 4h agoView on Hugging Face
7likes1.7kdownloads
Model Card

Octen-Embedding-8B-INT8

![Discord](https://discord.gg/Y3Yq5qxk7h)

Octen-Embedding-8B-INT8 is a text embedding model developed by Octen for semantic search and retrieval tasks. This model is fine-tuned from Qwen/Qwen3-Embedding-8B and supports multiple languages, providing high-quality embeddings for various applications.

Quantization: This is an INT8 quantized version using bitsandbytes. INT8 quantization significantly reduces memory footprint (~50% smaller), making it suitable for deployment on resource-constrained environments. Note that while memory usage is reduced, inference speed may not necessarily improve and could be slightly slower than the BF16 version on some hardware.

Key Highlights

πŸ₯‡ RTEB Leaderboard Champion (as of January 12, 2026)

  • β€”Octen-Embedding-8B ranks #1 on the [RTEB Leaderboard](https://huggingface.co/spaces/mteb/leaderboard) with Mean (Task) score of 0.8045
  • β€”Excellent performance on both Public (0.7953) and Private (0.8157) datasets
  • β€”Demonstrates true generalization capability without overfitting to public benchmarks

Industry-Oriented Vertical Domain Expertise

  • β€”Legal: Legal document retrieval
  • β€”Finance: Financial reports, Q&A, and personal finance content
  • β€”Healthcare: Medical Q&A, clinical dialogues, and health consultations
  • β€”Code: Programming problems, code search, and SQL queries

Ultra-Long Context Support

  • β€”Supports up to 32,768 tokens context length
  • β€”Suitable for processing long documents in legal, healthcare, and other domains
  • β€”High-dimensional embedding space for rich semantic representation

Multilingual Capability

  • β€”Supports 100+ languages
  • β€”Includes various programming languages
  • β€”Strong multilingual, cross-lingual, and code retrieval capabilities

Open Source Model List

Model TypeModelSizeMax TokensEmbedding DimensionsHuggingFace Link
Text EmbeddingOcten-Embedding-0.6B0.6B32,7681024βœ… Available
Text EmbeddingOcten-Embedding-4B4.0B32,7682560βœ… Available
Text EmbeddingOcten-Embedding-8B7.6B32,7684096βœ… Available

Model Family Design:

  • β€”Octen-Embedding-8B: Best performance, RTEB #1, for high-precision retrieval
  • β€”Octen-Embedding-4B: Best in 4B category, balanced performance and efficiency
  • β€”Octen-Embedding-0.6B: Lightweight deployment, suitable for edge devices and resource-constrained environments

For API access, deployment solutions, and technical documentation, visit octen.ai.

Join our Discord community for questions, feedback, and the latest updates.


Experimental Results

RTEB Leaderboard (Overall Performance)

ModelEmbedding DimMax TokensMean (Public)Mean (Private)Mean (Task)
Octen-Embedding-8B4096327680.79530.81570.8045
voyage-3-large1024320000.74340.82770.7812
gemini-embedding-001307220480.72180.80750.7602
Octen-Embedding-4B2560327680.77470.79420.7834
MoD-Embedding2560327680.76420.79000.7758
Qwen3-Embedding-8B4096327680.73100.78380.7547
Octen-Embedding-0.6B1024327680.7241--
voyage-3.51024320000.71390.81020.7571
Cohere-embed-v4.015361280000.65340.79430.7166
jina-embeddings-v42048327680.66520.76640.7105
GritLM-7B4096327680.61870.73850.6724
text-embedding-3-large307281910.61100.71300.6567
e5-mistral-7b-instruct4096327680.50900.70910.5987
NV-Embed-v24096327680.58050.66910.6203
snowflake-arctic-embed-l-v2.0102481920.53950.70790.6150
multilingual-e5-large-instruct10245140.54780.68590.6097
gte-multilingual-base76881920.52910.66970.5921
text-embedding-3-small153681910.52600.66300.5874
bge-m3102481940.52160.67260.5893
Qwen3-Embedding-4B256032768-0.7711-
Qwen3-Embedding-0.6B102432768-0.7117-

Model Details

  • β€”Base Model: Qwen/Qwen3-Embedding-8B
  • β€”Model Size: 8B parameters (INT8 quantized)
  • β€”Max Sequence Length: 40,960 tokens
  • β€”Embedding Dimension: 4096
  • β€”Languages: English, Chinese, and multilingual support
  • β€”Training Method: LoRA fine-tuning
  • β€”Quantization: INT8 (bitsandbytes)
  • β€”Memory Footprint: ~8GB (vs ~16GB for BF16 version)

Usage

Using Sentence Transformers

python
from sentence_transformers import SentenceTransformer

model = SentenceTransformer("Octen/Octen-Embedding-8B-INT8")

# Encode sentences
sentences = [
    "This is an example sentence",
    "Each sentence is converted to a vector"
]

embeddings = model.encode(sentences)
print(embeddings.shape)
# Output: (2, 4096)

# Compute similarity
from sentence_transformers.util import cos_sim
similarity = cos_sim(embeddings[0], embeddings[1])
print(f"Similarity: {similarity.item():.4f}")

Using Transformers

python
from transformers import AutoModel, AutoTokenizer
import torch
import torch.nn.functional as F

tokenizer = AutoTokenizer.from_pretrained("Octen/Octen-Embedding-8B-INT8", padding_side="left")
model = AutoModel.from_pretrained("Octen/Octen-Embedding-8B-INT8")
model.eval()

def encode(texts):
    inputs = tokenizer(texts, padding=True, truncation=True,
                      max_length=8192, return_tensors="pt")

    with torch.no_grad():
        outputs = model(**inputs)
        # Use last token embedding
        embeddings = outputs.last_hidden_state[:, -1, :]
        # Normalize embeddings
        embeddings = F.normalize(embeddings, p=2, dim=1)

    return embeddings

# Example usage
texts = ["Hello world", "δ½ ε₯½δΈ–η•Œ"]
embeddings = encode(texts)
similarity = torch.matmul(embeddings[0], embeddings[1])
print(f"Similarity: {similarity.item():.4f}")

Recommended Use Cases

  • β€”Semantic search and information retrieval
  • β€”Document similarity and clustering
  • β€”Question answering
  • β€”Cross-lingual retrieval
  • β€”Text classification with embeddings
  • β€”Deployment on GPU-constrained environments

Known Issues

When encoding documents without any instruction prefix, you may encounter unexpected behavior due to an upstream issue in Qwen3-Embedding. To avoid this issue, we recommend adding "- " (dash followed by space) at the beginning of your text when encoding documents:

python
# Recommended: Add "- " prefix for document encoding
documents = ["- " + doc for doc in documents]
embeddings = model.encode(documents)

This workaround ensures consistent and expected embedding behavior.

Limitations

  • β€”Performance may vary across different domains and languages
  • β€”Very long documents (>40K tokens) require truncation
  • β€”Optimized for retrieval tasks, not for text generation
  • β€”INT8 quantization may introduce minor accuracy degradation compared to BF16 version
  • β€”Inference speed may not improve despite reduced memory usage

License

This model is licensed under the Apache License 2.0.

This model is derived from Qwen/Qwen3-Embedding-8B, which is also licensed under Apache License 2.0.

Paper

For more details, please refer to our blog post: Octen Series: Optimizing Embedding Models to #1 on RTEB Leaderboard

Citation

If you find our work helpful, please consider citing:

bibtex
@misc{octen2025rteb,
  title={Octen Series: Optimizing Embedding Models to #1 on RTEB Leaderboard},
  author={Octen Team},
  year={2025},
  url={https://octen-team.github.io/octen_blog/posts/octen-rteb-first-place/}
}