BGE-M3 Embeddings (1024 dim)
Default knowledge-base embeddings - multilingual, dense and sparse
Overview
BGE-M3 is BAAI's multi-functional retrieval model: one pass yields dense, sparse (lexical) and multi-vector representations, it works across more than 100 languages, and it handles inputs from short sentences up to 8192 tokens. Getting sparse token weights alongside the dense vector at no extra cost is what makes it the default here, because hybrid retrieval no longer needs a separate BM25 index. BAAI recommends following it with a reranker.
Strengths
- Dense and sparse vectors from a single pass
- More than 100 languages
- Documents up to 8192 tokens
Use cases
- General knowledge-base and RAG retrieval
- Hybrid dense plus lexical search
- Multilingual corpora
Good to know
Text only -- use qwen3-vl-embedding if images have to live in the same index. Inputs beyond 8192 tokens must be chunked.
API access
One OpenAI-compatible API for every model in the catalog, plus the CLI and the function SDK inside workflows. Sign up free, add a card for $5 in credits, and these requests work:
curl https://gateway.graphn.ai/v1/embeddings \
-H "Authorization: Bearer $GRAPHN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "bge-m3", "input": "Hello"}'graphn model get bge-m3
@function
async def embed(text: str) -> list[float]:
return await kb.embed(text)