Bundles
Why Bundles
Section titled “Why Bundles”Python ML libraries often have conflicting dependency requirements. Models using trust_remote_code=True or specialized backends can pin incompatible versions of transformers, torch, or sglang. SIE solves this with bundles: each bundle is a self-contained environment with compatible dependencies, built into its own Docker image.
Each bundle is a YAML file under packages/sie_server/bundles/ that lists the adapters it enables and the pinned dependency versions needed by those adapters. At build time, the Dockerfile selects one bundle via the BUNDLE build arg and installs only that bundle’s deps.
Published Bundles
Section titled “Published Bundles”Three bundles are published to GHCR today: default, sglang, and transformers5. The default bundle covers every model unless it needs the SGLang runtime or transformers>=5.
| Bundle | Purpose | Key Models |
|---|---|---|
default | Everything that runs on standard transformers + Flash Attention | BGE-M3, E5, Stella, Qwen3, GritLM, NV-Embed, gte-Qwen2-7B, llama-embed-nemotron-8b, ColBERT, ColPali, ColQwen2, GLiNER, GLiREL, GLiClass, Florence-2, Donut, CLIP, SigLIP, Grounding DINO, OwlV2, SPLADE, and more |
sglang | Text generation served through the SGLang runtime | Qwen3.x generation family, granite-guardian-3.0-2b, sqlcoder-7b-2 |
transformers5 | Adapters that require transformers>=5 | LightOnOCR, GLM-OCR, GLiNER2 classification, sparse vision documents |
The previous
glinerandflorence2bundles no longer exist; their adapters and dependencies were folded intodefaultonce the underlying version conflicts were resolved.
The repo’s bundles/ directory holds eight bundle YAML files in total. Of the rest, sglang-embedding (large LLM embeddings) and sglang-vision-extract run on the published sglang image via a bundles.<name>.imageBundle override in the Helm chart, while candle and gemma are separate local builds. This page covers the published subset.
Bundle Contents
Section titled “Bundle Contents”default
Section titled “default”The default bundle is the broad, general-purpose image. It bundles the standard transformers, sentence-transformers, Flash Attention, and the NER/vision adapters.
Included adapter families:
- Dense encoders: BERT (flash), ModernBERT (flash), BGE-M3, Qwen2, XLM-RoBERTa, Nomic, GTE, Stella, sentence-transformers, PyTorch embedding
- Cross-encoders / rerankers: BERT, ModernBERT, Qwen2, Jina (flash), NLI classification
- Multi-vector / late-interaction: ColBERT, ColBERT + ModernBERT, ColBERT + rotary, ColPali, ColQwen2, NeMo ColEmbed
- Sparse: SPLADE (flash), GTE sparse (flash)
- Vision and vision-language: CLIP, SigLIP, Grounding DINO, OwlV2, Florence-2, Donut
- Zero-shot NER / extraction: GLiNER, GLiREL, GLiClass
sglang
Section titled “sglang”The SGLang generation bundle. It enables the SGLang generation adapter with pinned SGLang, grammar-backend, and kernel dependencies for serving text-generation models.
sglang-embedding
Section titled “sglang-embedding”A companion bundle wired to the SGLang embedding adapter for large LLM embeddings (4B+ params). It shares the sglang dependency stack; the split exists for worker pool isolation.
Included models:
Qwen/Qwen3-Embedding-4Bintfloat/e5-mistral-7b-instructLinq-AI-Research/Linq-Embed-MistralSalesforce/SFR-Embedding-Mistral,Salesforce/SFR-Embedding-2_R
transformers5
Section titled “transformers5”Published to GHCR for adapters that require transformers>=5. It covers LightOnOCR and GLM-OCR document parsing, GLiNER2 classification, and the sparse vision (multimodal SparseEncoder) adapter.
Docker Images
Section titled “Docker Images”All three published bundles (default, sglang, transformers5) ship for both cpu and cuda12 platforms. The image tag format is {version}-{platform}-{bundle}, with a floating latest-{platform}-{bundle} tag that tracks the most recent release.
# Default bundle (CPU)docker run -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cpu-default
# Default bundle (CUDA 12, recommended for GPU)docker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cuda12-default
# SGLang bundle (CUDA 12)docker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cuda12-sglang
# Transformers 5 bundle (CUDA 12)docker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cuda12-transformers5
# Pin to a specific releasedocker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:v0.2.0-cuda12-defaultBundle Selection
Section titled “Bundle Selection”Choose a bundle based on the models you need:
- Start with
default. It covers dense, sparse, multi-vector, cross-encoder, vision, and extraction models, which is the overwhelming majority of use cases. - Use
sglangwhen you need text generation through the SGLang runtime. Run it as a second container alongsidedefaultand route requests by model name. - Use
transformers5for models that needtransformers>=5: LightOnOCR, GLM-OCR, GLiNER2 classification, and sparse vision documents.
Models are loaded on first request. The bundle only determines which models are available inside a given image.
What’s Next
Section titled “What’s Next”- Model Catalog - complete list of supported models
- Docker Deployment - tags, GPU configuration, and Docker Compose
- Deployment Overview - from single container to Kubernetes