Skip to content
Why did we open-source our inference engine? Read the post

How to integrate SIE with your existing stack

SIE provides three integration paths depending on how you are building. Framework adapters plug SIE into existing RAG pipelines with minimal code. The native SDK gives you full access to every feature. OpenAI compatibility lets you point existing OpenAI code at SIE with a single URL change.

OptionBest for
Framework adaptersLangChain, LlamaIndex, Haystack, Qdrant, Weaviate, Chroma, LanceDB, DSPy, CrewAI
Native SDKCustom pipelines, multi-vector output, full extraction support
OpenAI compatibilityMigrating existing OpenAI embeddings code

Use the summary table and anchor links above to jump to framework adapters, the native SDK, or OpenAI compatibility.


SIE provides dedicated packages for all major Python AI frameworks and vector stores, plus four TypeScript packages.

FrameworkPackageEmbeddingsSparseMultivectorRerankingExtractionMultimodal
Chromasie-chromaYesYesNoNoNoNo
CrewAIsie-crewaiNoYesNoYesYesNo
DSPysie-dspyYesYesNoYesYesNo
Haystacksie-haystackYesYesYesYesYesYes
LanceDBsie-lancedbYesNoNoYesYesNo
LangChainsie-langchainYesYesNoYesYesNo
LlamaIndexsie-llamaindexYesYesNoYesYesYes
Qdrantsie-qdrantYesYesYesNoNoNo
Weaviatesie-weaviateYesYesYesNoNoNo
FrameworkPackageEmbeddingsSparseMultivectorRerankingExtraction
Chroma@superlinked/sie-chromaYesYesNoNoNo
LanceDB@superlinked/sie-lancedbYesNoNoYesNo
LangChain.js@superlinked/sie-langchainYesYesNoYesYes
LlamaIndex.ts@superlinked/sie-llamaindexYesYesNoYesYes

Use a framework adapter when:

  • You are building a RAG pipeline with one of these frameworks
  • You need sparse embeddings for hybrid search
  • You need reranking to improve retrieval quality

For features marked “No” in the table above, you can use the native SDK alongside your framework integration. See each integration’s page for examples.


The native SDK gives you full access to all SIE features: dense, sparse, and multi-vector embeddings, reranking, and extraction (entities, relations, classifications, object detection).

pip install sie-sdk
# or
pnpm add @superlinked/sie-sdk
from sie_sdk import SIEClient
from sie_sdk.types import Item
client = SIEClient("http://localhost:8080")
# All output types from one model
result = client.encode(
"BAAI/bge-m3",
Item(text="Your text"),
output_types=["dense", "sparse", "multivector"]
)
# Reranking
scores = client.score(
"BAAI/bge-reranker-v2-m3",
query=Item(text="What is AI?"),
items=[Item(text="AI is..."), Item(text="Weather is...")]
)
# Entity extraction
entities = client.extract(
"urchade/gliner_multi-v2.1",
Item(text="Tim Cook leads Apple."),
labels=["person", "organization"]
)

Use the native SDK when:

  • You are building a custom pipeline without a framework
  • You need multi-vector (ColBERT) output
  • You need extraction (entities, relations, classifications, object detection)
  • You want fine-grained control over batching and timing

SIE exposes /v1/embeddings matching OpenAI’s API format. Existing OpenAI code works with a single URL change and no other modifications:

from openai import OpenAI
client = OpenAI(base_url="http://localhost:8080/v1", api_key="not-needed")
response = client.embeddings.create(
model="BAAI/bge-m3",
input=["Your text here", "Another text"]
)
for item in response.data:
print(f"Index {item.index}: {len(item.embedding)} dimensions")

Use OpenAI compatibility when:

  • You have existing code using the OpenAI SDK
  • You only need dense embeddings
  • You want zero code changes beyond the URL

Limitations: Dense embeddings only. Sparse, multi-vector, reranking, and extraction require the native SDK or a framework adapter.


FeatureFramework adaptersNative SDKOpenAI compat
Dense embeddingsAllYesYes
Sparse embeddingsMostYesNo
Multi-vector (ColBERT)Haystack, Qdrant, WeaviateYesNo
RerankingHaystack, LangChain, LlamaIndex, LanceDBYesNo
Extraction (NER, relations, classification, vision)Haystack, LangChain, LlamaIndex, LanceDB, CrewAI, DSPyYesNo

Does SIE work with Qdrant? Yes. Install sie-qdrant for dense and sparse embedding support with Qdrant. See the Qdrant integration guide.

Can I use SIE as a drop-in replacement for OpenAI embeddings? Yes, for dense embeddings. Change your base URL to your SIE server and set any string as the API key. The response format matches OpenAI’s exactly. See OpenAI compatibility above.

Which integration supports the most features? sie-haystack and sie-llamaindex support the most features, including embeddings, sparse, reranking, extraction, and multimodal. See the full feature table above.

Where can I find setup instructions for each framework? Each framework has its own dedicated page. See Chroma, LangChain, LlamaIndex, Haystack, Qdrant, Weaviate, LanceDB, DSPy, and CrewAI.

Contact us

Tell us about your use case and we'll get back to you shortly.