Skip to content

Releases: superlinked/sie

v0.6.17

Choose a tag to compare

@slrelease slrelease released this 09 Jul 19:02
  • chore(main): release 0.6.17
  • docs(gateway): clarify multi-gpu sidecar routing
  • fix(sidecar): refresh ready slots on cancel fanout failure
  • fix(sidecar): release cancelled scheduler pressure
  • fix(sidecar): wire local ingest through adapter pool
  • fix(req6): align candle chart after rebase
  • fix(server): keep ipc ping alive on gpu health errors
  • refactor(sidecar): name adapter worker pool generically
  • feat(worker): support multi-gpu sidecar children
  • fix(req6): harden multi-gpu worker review fixes
  • fix(req6): harden multi-gpu worker routing
  • fix(req6): resolve main rebase fallout
  • fix(req6): wire pressure-aware multi-gpu routing
  • test(tilt): emulate multi-child sidecar on cpu
  • feat(worker): route by child queue pressure
  • feat(worker): route multi-gpu sidecar children
  • docs: state req6 multi-gpu target directly
  • docs: clarify multi-gpu worker target topology
  • feat(server): support multi-gpu worker placement
  • feat(cloud): CLI WorkOS device-flow auth — retire the shared-token shortcut for customer commands (#1697)
  • chore(deps): bump the uv group across 3 directories with 12 updates
  • feat(oss): OSS amendments from the SIE Cloud build — engine, SDKs, gateway/sidecar seams (#1696)
  • fix(sidecar): bound queue admission through scheduler completion
  • chore(models): correct gte-Qwen2-1.5B compute_precision label to fp32 reality
  • fix(candle): address rope review feedback
  • fix(candle): repair rebase conflict resolution
  • fix(candle): remove rust worker forward coalescing
  • fix(sidecar): bulk enqueue scheduler items
  • fix(sidecar): expose scheduler flush reasons
  • feat(candle): add GTE RoPE embedding kernel
  • test(sdk): golden wire-contract fixture for ModelState + fix TS drift
  • refactor(server): move eviction-candidate decision into residency policy
  • refactor(gateway): unify worker-error retry semantics into one classifier
  • refactor(gateway): collapse header/pool/profile resolution into one seam

v0.6.16

Choose a tag to compare

@slrelease slrelease released this 07 Jul 03:36
  • chore(main): release 0.6.16
  • fix(adapters): honor caller instruction in use_model_encode without a template
  • feat(adapters): use_model_encode — delegate to checkpoint-native encode()
  • Revert "feat(adapters): opt-in template_as_prompt for ST prompt-length-aware templates"
  • Revert "fix(models): serve NV-Embed-v2 via its native latent-attention ST path"
  • fix(models): serve NV-Embed-v2 via its native latent-attention ST path
  • feat(adapters): opt-in template_as_prompt for ST prompt-length-aware templates
  • chore(models): remove Qwen3-0.6B experimental custom LoRA profile
  • test(keda): cover gpu-agnostic kind smoke demand
  • docs(gateway): clarify legacy empty demand comments
  • fix(adapters): harden splade flash gate + add flash-vs-native parity test
  • fix(gateway): normalize explicit GPU demand labels
  • fix(gateway): fan out gpu-agnostic demand across pool profiles for scale-from-zero
  • fix(bundles): pin flash-attn-4 prerelease so sglang 0.5.10.post1 resolves
  • fix(helm): wake a deterministic owner lane on gpu-agnostic demand for multi-profile bundles
  • fix(colbert): GTE muvera also at simhash 6 - CMedQA/MMarco evals OOM at dim 81920
  • fix(colbert): mxbai muvera at simhash 6 (FDE dim 20480) - runner dies at 81920
  • fix(colbert): retune GTE/mxbai muvera for the Dense-projected representation
  • fix(colbert): serve pylate Dense chains and align fallback with flash
  • fix(models): restore e5 templates on multilingual-e5-large ST profile
  • fix(colbert_modernbert_flash): faithful ModernBERT forward + hardened 1_Dense loading
  • test: cover candle warm model residency
  • fix: align candle workers with catalog lane config
  • refactor(server): dedup flash mean-pooling into _flash_pack
  • fix(colbert_modernbert_flash): address CodeRabbit review on #1591
  • fix(colbert_modernbert_flash): only apply Dense head when out_features==token_dim
  • fix(colbert_modernbert_flash): apply trained ColBERT Dense projection
  • Revert "feat(models): onboard topk-io/Iso-ModernColBERT (ColBERT multivector)"
  • fix(colbert_modernbert_flash): tolerate transformers>=5 tokenizer_class
  • feat(models): onboard topk-io/Iso-ModernColBERT (ColBERT multivector)

v0.6.15

Choose a tag to compare

@slrelease slrelease released this 03 Jul 16:05
  • chore(main): release 0.6.15
  • fix(playground): keyboard-accessible tabs + associated form labels
  • fix(server): address CI + review comments on the Apple Silicon re-land
  • feat(server): land Apple Silicon as a primary device onto main
  • fix(sidecar): start batch cancel before direct pulls
  • fix(tilt): wait for complete trace before asserting span chain
  • fix(gateway): harden batch direct fallback cancellation
  • fix(gateway): cancel abandoned direct batch fallback work
  • test(tracing): assert run_batch metadata and malformed traceparent
  • fix(gateway): ignore pre-latch stale NAKs after republish
  • fix(docs): drop otel.name from span-attribute table; tighten tracing dashboard test
  • feat(helm): add SIE tracing dashboard and tempo datasource uid
  • docs(gateway): document distributed tracing span chain and enable switch
  • refactor(helm): migrate bundled Tempo to grafana-community chart 2.2.3
  • refactor(helm): gate tempo datasource on grafana
  • fix(gateway): use real RUSTSEC id for second quick-xml advisory
  • feat(helm): add optional bundled Tempo tracing backend
  • fix(gateway): ignore quick-xml <0.41 RustSec advisories in cargo-deny
  • refactor(sie_gateway): clarify publish-seam comment, drop redundant otel.name
  • feat(sie_gateway): emit gateway.publish span on non-streaming queue-publish path (#1596)
  • feat(gateway): count dropped stale NAKs from abandoned attempts
  • test(observability): use single import style in shutdown_tracing test
  • feat(observability): bound tracing shutdown and trim env inputs across all four runtimes
  • fix(models): serve gte-Qwen2-1.5B via sentence_transformer adapter (#1593)
  • feat(observability): gate Rust tracing on SIE_TRACING_ENABLED
  • test: update queue executor batch mocks
  • test: cover queue runtime app wiring
  • fix: complete empty preformed worker requests
  • fix: address sidecar PR review feedback
  • fix: clean stale Python queue ownership drift
  • docs: clarify sidecar queue batching ownership
  • fix: remove Python worker pull-loop path
  • fix(server): serialize hot reload registry mutations
  • fix(server): move load headroom behind adapter contract
  • fix(server): make SGLang load eviction headroom-aware
  • test(config): time-box idempotency mismatch request
  • fix(config): shield idempotency failure cleanup
  • fix(config): defer cancellation after config commit starts
  • fix(config): handle idempotency in-flight races
  • fix(server): cap LoRA drain to snapshot backlog so post-snapshot arrivals don't overshoot
  • fix(gateway): keep signalling SSE incompleteness on lag; only skip cancel when done (#1602)
  • perf(gateway): build the HRW ring from the by_bundle index, not a whole-cluster scan (#1607)
  • fix(gateway): don't report a succeeded SSE generation as inter_chunk_timeout on consumer lag (#1602)
  • fix(gateway): drop stale NAKs from abandoned attempts in handle_nak (#1601)
  • perf(server): vectorize bge_m3_flash CLS gather to drop N per-encode GPU syncs (#1605)
  • fix(server): bound the continuous-batching drain so a busy LoRA can't starve siblings (#1606)
  • fix(server): stop mislabelling uint8 embeddings as "binary" on the queue path (#1603)
  • fix(server): /v1/embeddings maps OOM to 503 RESOURCE_EXHAUSTED, not 500 (#1604)
  • fix(server): unregister model from MemoryManager even if adapter.unload() raises (#1600)
  • fix: select rustls provider at binary startup
  • revert: restore gateway sidecar rustls defaults
  • fix: select rustls provider for rust services
  • fix(gateway): append forwarded embeddings headers to preserve multi-value tracestate
  • fix(gateway): forward traceparent/tracestate through /v1/embeddings rewrite
  • test(gateway): pin RetryAfter aliases to wire literals, not tautologies (#1574)
  • fix(tracing): parent sidecar.dispatch on first valid inbound context
  • refactor(gateway): injectable clock for TokenBucket (#1575, publisher PR 1/n)
  • refactor(gateway): one typed RetryAfter home for cold-load retry hints (#1574)
  • refactor(gateway): normalize rejected-request labels via sanitize_label (#1573)
  • docs(server): ADR-0004 — cost is modality-native, not commensurable (#1571)
  • refactor(server): controller owns its config write-back via apply_step (#1570, BatchPolicy PR 1/n)
  • feat(tracing): emit sidecar.dispatch span from sie_server_sidecar (#1550)
  • refactor(server): typed EvictionResult for evict_lru_excluding (#1569, ResidencyPolicy PR 1/n)
  • fix(gateway): record demand on backpressure so KEDA scales the lane (#1568)
  • refactor(server): single typed definition for the queue-path inference_error code (#1572)
  • fix(gateway): route engine-pin errors through endpoint_error_response (#1567)
  • chore(deps): refresh gateway Rust lockfile
  • docs(gateway): use 'gateway' terminology in resolve_routing pool comment (#1543)
  • refactor(gateway): fold pool + GPU resolution into resolve_routing (#1543, PR 3/3)
  • refactor(gateway): wrap routing decision in resolve_routing (#1543, PR 2/3)
  • refactor(gateway): extract resolve_bundle_for_request from proxy_request (#1543)
  • test(gateway/config/server): shared conformance vectors for bundle_config_hash (#1542)
  • refactor(server): make ModelRegistry.get() a pure read; add touch_lru() (#1541)
  • refactor(tracing): use is_some() borrow check for inbound ctx branch
  • test(tracing): bind a JetStream consumer in the encode propagation IT
  • test(tracing): add NATS-gated integration test for encode trace propagation
  • fix(tracing): attach inbound trace context for non-generation publishes
  • feat(tracing): inject queue trace context for non-generation endpoints
  • fix(adapters): guard empty-document MaxSim batches; strengthen single-doc test (#1539)
  • refactor(preprocessor): extract shared _load_rgb image loader (#1540)
  • refactor(adapters): shared multivector MaxSim scoring helpers (#1539)
  • refactor(adapters): extract shared flash varlen position-id builder (#1538)
  • test(server): add score/extract invalid-item regressions for decode_item seam (#1537)
  • refactor(server): validate queue-path items through one decode_item seam (#1537)
  • fix(candle): keep catalog additions candle-only
  • fix(models): restore per-task MTEB instruction for stella_en_v5 (#1340)
  • docs(helm): document collector suppression + exporterInsecure in chart README
  • fix(helm): make bundled collector downstream OTLP TLS configurable
  • fix(helm): suppress bundled collector when explicit tracing endpoint set
  • fix(helm): set OTEL_EXPORTER_OTLP_PROTOCOL=grpc on traced pods
  • feat(helm): add opt-in OTLP tracing wiring + bundled collector to sie-cluster
  • fix(candle): harden native worker routing
  • fix(tracing): assert items/metadata alignment before zip in scheduler batch
  • feat(tracing): propagate trace context through the non-streaming worker loop
  • fix(muvera): center tokens before SimHash to fix answerai @muvera Blackwell collapse (#1528)
  • fix(candle): harden native worker runtime
  • fix(sdk): raise actionable error on encode result-count desync (#1526)
  • fix(models): load stock tokenizer for gte-Qwen2-7B-instruct (#1483)
  • fix(server): skip EOS on empty input; cover non-default profile on queue path
  • fix(models): serve embeddinggemma-300m via SentenceTransformerDenseAdapter (#1523)
  • fix(server): apply profile runtime options and append EOS on cluster encode path (#1489)
  • fix(candle): publish loaded models in health
  • chore(deps): bump Rust gateway and sidecar dependencies
  • fix: repair candle rebase fallout
  • fix(gateway): separate queue timeouts from model loading
  • fix(candle): run bge-m3 profile in bf16
  • perf(candle): optimize bge-m3 xlm-r runtime path
  • fix(candle): align readiness with loaded model state
  • fix(candle): restore sidecar model readiness
  • fix(sidecar): keep only config hash wiring
  • fix(sidecar): bound scheduler bulk enqueue waves
  • perf(sidecar): bulk enqueue scheduler batches
  • feat: tune candle forward concurrency
  • fix: remove candle replica fallback path
  • feat: improve candle replica concurrency
  • fix: log candle batch failure context
  • fix: restore default candle cuda stream
  • perf: improve candle worker concurrency and build cache
  • fix: improve candle embedding runtime throughput
  • fix: install gateway pool config hashes
  • fix: preserve control-plane bundle hash in sidecar
  • fix: align worker pool config hashes
  • fix: export profile bundle targets
  • fix: repair candle ci routing checks
  • fix: harden candle bge-m3 runtime bring-up
  • feat(candle): add native adapter runtime
  • fix(muvera): drop same-dim count-sketch + retune colbert muvera configs (#1493)

v0.6.14

Choose a tag to compare

@slrelease slrelease released this 26 Jun 22:26
  • chore(main): release 0.6.14
  • test(encode): cover dual-type muvera filter; harden response_output_types fallback (#1430)
  • fix(encode): preserve postprocessor dense output for muvera profile (#1430)
  • fix(colbert): patch ColBERTRotaryFlashAdapter score_pairs too (#1430)
  • fix(colbert): override score_pairs to ignore encode-time options (#1430)

v0.6.13

Choose a tag to compare

@slrelease slrelease released this 25 Jun 17:19
  • chore(main): release 0.6.13
  • fix: extend tester structured generation timeouts
  • fix(server): serialize async config registry updates
  • fix(server): preflight profile variant config updates
  • fix(server): drain removed profile variants during config apply
  • fix(sie-mcp): chunk GLiNER extract/redact for large docs; flag the other 4B
  • feat(sie-mcp): per-tool GPU routing and env-overridable GLiNER models
  • docs(sie-mcp): add the Obsidian contract-graph example
  • fix(server): tighten profile variant reconciliation
  • fix(server): preserve profile variants during config reconcile
  • fix(gateway): retry failed payload cleanup deletes
  • fix(gateway): dedupe offloaded payload cleanup keys
  • fix(gateway): track exact offloaded payload keys
  • docs(sie-mcp): use the rendered Excalidraw PNG for the architecture diagram
  • docs(sie-mcp): replace the ASCII architecture sketch with an Excalidraw diagram
  • docs(sie-mcp): accessible README intro; drop the redundant product page
  • fix(sie-mcp): bound text offload inputs
  • feat(sie-mcp): integrate managed plugin skills

v0.6.12

Choose a tag to compare

@slrelease slrelease released this 24 Jun 19:19
  • chore(main): release 0.6.12
  • fix(gateway): record offload before the store write (PR review)
  • test(gateway): cover payload-store cleanup guard
  • fix(gateway): skip payload-store cleanup DELETEs for inline requests
  • fix(gliclass): guard label-window overflow + defer LEDGAR for v1.0 uni-encoders

v0.6.11

Choose a tag to compare

@slrelease slrelease released this 23 Jun 19:29
  • chore(main): release 0.6.11
  • fix: handle sidecar progress ack failures
  • fix: harden worker-direct batch fallback
  • fix: align retryable generation review feedback
  • fix: preserve queue delivery budget
  • fix: return retryable model loading for generation
  • test: cover default-backed pinned pool gauge
  • fix: harden logical pool queue routing
  • docs: clarify logical pool backing queues
  • feat: support logical pools backed by queue pools
  • refactor(bench): re-task Florence-2-base to COCO detection (card metric), keep OCR fallback (#1437)
  • fix(ci): raise uv HTTP timeout for the gemma cu130 wheel downloads
  • docs(deploy): note machineProfiles entry for the gemma example pool
  • feat(deploy): fail fast when a bundle is placed on the wrong platform
  • docs(server): accurately scope what the gemma cuda13 CI smoke covers
  • fix(server): correct stale cuda13/gemma platform references
  • refactor(bench): re-task Florence-2-base to OCR, measure on olmOCR-bench not KIE (#1437)
  • feat(server): first-class cuda13 platform for the gemma bundle
  • fix(server): make transformers version bundle-controlled
  • docs(server): correct the gemma cu130 Docker validation comments
  • fix(server): parse --mamba-scheduler-strategy value exactly in spec guard
  • fix(server): route grammar off :mtp for Gemma 4 via grammar_profile
  • test(server): surface errors and non-settling tasks in pinned-load drain helper
  • fix(worker): make pinned models profile-aware and reconcile on config arrival
  • docs(helm): trim staticQueuePools pinnedModels comment to effect-only
  • feat(worker): bridge gateway pinned-model set to the worker at runtime
  • docs(server): mark gemma-4-26B-A4B mtp profile validated (Modal H200)
  • feat(server): extend pinned-model protection to the disk cache
  • fix(server): gemma Docker builder — effective uv cache, skip bytecode, fix comment
  • fix(server): drop FP8 from gemma-4-26B-A4B (BF16 only)
  • feat(server): keep pinned models loaded and exclude them from LRU eviction
  • fix(server): require extra_buffer value in the speculative mamba-scheduler guard
  • fix(server): wire per-bundle CUDA indexes into the cuda12 Docker builder
  • feat(server): add Gemma 4 generation models (E2B, E4B, 26B-A4B)

v0.6.10

Choose a tag to compare

@slrelease slrelease released this 22 Jun 12:25
  • chore(main): release 0.6.10
  • fix: sync generation visibility api contract
  • fix: improve generation failure observability
  • feat(florence2): fix bbox conversion, re-task base-ft/large to COCO detection (#1347)
  • feat(bench): floor measure-first dark models, retire donut-rvlcdip (#1347)
  • fix(qwen3_vl_embedding): coalesce whitespace-only instruction to default
  • test(qwen3_vl_embedding): pin empty/None instruction -> default contract
  • fix(bench): align gliner label inputs
  • fix(bench): align gliner v2.5 conll protocol
  • fix(deploy): address payload-store review feedback
  • feat(deploy): provision and enable the payload store by default
  • fix(sie-cluster): address PR review findings on the self-host edge
  • fix(sie-cluster): make AWS self-host turnkey (warm default + edge nits)
  • fix(helm): let the MCP edge ingress drive cert-manager without a global gateway host
  • fix(worker): preserve label order when batching extract requests
  • fix(cluster): propagate --aws-region to terraform + standardize release name on 'sie'
  • docs(sie_mcp): runbook must actively wait through cluster create/destroy
  • docs(sie_mcp): clean-room AWS self-host runbook for a fresh agent
  • refactor(sie_mcp): consolidate the offload skill into one surface-agnostic SKILL.md
  • feat(helm): add sglang worker bundle to the AWS l4 pool
  • docs(sie_mcp): local Cowork verification guide + example MCP client
  • feat(helm): optional MCP-edge component for the sie-cluster chart
  • feat(sie_mcp): containerize the MCP edge
  • fix(qwen3_vl_embedding): pool post-RMSNorm last_hidden_state + normalize instruction (#1385)
  • fix(sie-server): make transformers5 bundle reachable via pip (#826)

v0.6.9

Choose a tag to compare

@slrelease slrelease released this 19 Jun 06:40
  • chore(main): release 0.6.9
  • chore(gateway): regenerate openapi.json for pinned_models profile docstrings
  • feat(gateway): support profile-qualified ids in per-pool pinned-model set
  • fix(gateway): bound pinned-model metric labels and add handler validation tests
  • feat(gateway): add per-pool pinned-model set to the pool config API
  • fix(server): alias PEFT LoRA adapter names
  • fix: scope worker preload models by lane

v0.6.8

Choose a tag to compare

@slrelease slrelease released this 16 Jun 20:47
  • chore(main): release 0.6.8
  • fix(server): share score media batch cost
  • fix(server): serialize worker use with unload state
  • fix(server): keep score traffic from idle-evicting rerankers
  • refactor(gateway): consolidate warm floor onto minimum_worker_count; retire admission gate
  • feat(gateway): add per-pool warm floor (min_machines) with KEDA enforcement