Superlinked — Compute Framework for Vector Search and AI Inference

Reading progress 0%
Superlinked — Compute Framework for Vector Search and AI Inference

What is Superlinked?

Superlinked is an open-source compute framework (Apache 2.0) designed to transform complex data into vector embeddings for RAG, semantic search, recommendation systems, and analytics.

The project was built by the team at superlinked.com, led by CEO Daniel Svonava and co-founder Ben Gutkovich, with backing from Index Ventures.

The journey from Superlinked → SIE

Superlinked was originally created as a Python framework to combine metadata with unstructured data (text, image) into multi-modal vectors. However, the team realized that the biggest pain point in production is inference — running embedding models efficiently at scale.

Therefore, Superlinked pivoted and introduced Superlinked Inference Engine (SIE): a specialized open-source inference server. Repo superlinked/superlinked (43 stars) was archived in May 2026 and redirected to superlinked/sie (2.2k stars).

This article will overview both: the Superlinked framework architecture and the inherited SIE inference engine.


Superlinked Framework architecture (declarative DAG)

Superlinked architecture

The Superlinked framework is built on a declarative DAG (Directed Acyclic Graph) architecture. Four main building blocks:

1. Schema

Declares data structure and field types. Supports IdField, String, Integer, Float, and other complex types.

class Product(sl.Schema):
    id: sl.IdField
    description: sl.String
    rating: sl.Integer

2. Space

Defines how a field is transformed into a vector. Types of space:

  • TextSimilaritySpace — uses sentence-transformers to embedding text
  • NumberSpace — numbers (min-max or similarity mode)
  • CategoricalSpace — categories as one-hot or embedding
  • RecencySpace — time (recent = high weight)
  • ImageSpace — uses OpenCLIP image embedding
description_space = sl.TextSimilaritySpace(
    text=product.description, model="Alibaba-NLP/gte-large-en-v1.5"
)
rating_space = sl.NumberSpace(
    number=product.rating, min_value=1, max_value=5, mode=sl.Mode.MAXIMUM
)

3. Index

Aggregate multiple Spaces into a single vector via ConcatenationNode (vector concatenation) and AggregationNode (weighted aggregation). Index manages persistence and event-based updates.

index = sl.Index([description_space, rating_space], fields=[product.rating])

4. Query

Search logic definitions: similarity search, hard filtering, dynamic weights, and Natural Language Query (use LLM to extract parameters from natural language queries).

query = (
    sl.Query(index, weights={
        description_space: sl.Param("description_weight"),
        rating_space: sl.Param("rating_weight"),
    })
    .find(product)
    .similar(description_space, sl.Param("description_query"))
    .limit(sl.Param("limit"))
    .with_natural_query(
        sl.Param("natural_language_query"),
        sl.OpenAIClientConfig(api_key=os.environ["OPEN_AI_API_KEY"], model="gpt-4o")
    )
)

Working mechanism

Online Ingestion DAG

When data is ingested via source.put(data), OnlineSchemaDagCompiler compile DAG into OnlineSchemaDag, passing through nodes:

  • Chunking → Embedding (using SentenceTransformerManager or ModalEngine) → Aggregation → Concatenation → Index → VDB write.

Embedding engine has a mechanism DelayedEvaluator merge multiple requests for batch inference to increase throughput when using remote GPU.

Query DAG

Query is compiled separately by QueryDagCompiler, skip unnecessary nodes at query-time (such as ChunkingNode, ComparisonFilterNode). Only keep nodes required for vector calculation and similarity search.

From prototype to production

Superlinked provides 2 executors:

Executor Purpose Storage
InMemoryExecutor Rapid development and testing In-memory
RestExecutor Production Redis, Qdrant, MongoDB, TopK

Just change the executor, the entire code remains unchanged — unifying evaluation, ingestion, and serving stack.

Superlinked Inference Engine (SIE)

The evolution of Superlinked, focusing on self-hosted inference for agents. SIE is an inference server/cluster running 100+ models via a single API, OpenAI API compatible.

SIE Architecture

  • Gateway load-balancing — distributing requests to workers
  • KEDA autoscaling — scale-to-zero when not in use
  • Grafana dashboards — observe the entire cluster
  • LRU eviction — load/unload models on demand
  • Support for GPU (CUDA) and Apple Silicon (MLX)

SIE supported tasks

Task Models
Search bge-m3, splade-v3, colbertv2, qwen3-reranker
Document → Markdown glm-ocr, mineru, paddleocr-vl, docling
Structured output gliner2, nuner-zero, qwen3.6-27b
Content safety granite-guardian-2b
Agent loop qwen3.6-27b (open LLM)

Quickstart SIE

pip install "sie-server[local]" && sie-server serve

# Hoặc Docker với GPU
docker run --gpus all -p 8080:8080 \
  -v sie-hf-cache:/app/.cache/huggingface \
  ghcr.io/superlinked/sie-server:latest-cuda12-default

OpenAI-compatible API:

curl http://localhost:8080/v1/embeddings \
  -H 'Content-Type: application/json' \
  -d '{"model": "sentence-transformers/all-MiniLM-L6-v2", "input": "Hello world"}'

Ecosystem integration

SIE comes pre-integrated with: LangChain, LlamaIndex, Haystack, DSPy, CrewAI, Chroma, Qdrant, Weaviate, LanceDB.

Provides MCP server for Claude and MCP clients: offload document processing (OCR, extraction, summarization) from frontier-model bill.

Superlinked vs LangChain/LlamaIndex

Criteria Superlinked LangChain / LlamaIndex
Specialization Vector compute (chunk, embed, search) General-purpose LLM framework
Architecture Declarative DAG Chain / Pipeline
Dynamic weights First-class citizen Need custom reranker
Multi-modal Text + Image + Number + Category + Time Primarily text
Inference server SIE (self-hosted, 100+ models) Third-party dependency

Conclusion

Superlinked (and SIE inheritance) solves a very practical problem: vector compute and inference for AI search/agent in productionIf you are building a RAG, semantic search, or recommendation system that needs to combine multiple data types (text, numbers, time, images), Superlinked is a choice worth considering — especially when query-time weighting is a core requirement, not a workaround.

With SIE, you can self-host the entire inference stack (embedding, reranking, OCR, generation) without depending on third-party APIs, keeping data entirely within your cloud or air-gapped environment.

Links:

Done — check your inbox.
Something went wrong. Please try again.