mlx-bun library API
    Preparing search index...

    The existing TurboQuant codec over shared tensor-row storage. Row changes copy encoded bytes without decoding, rotating or requantizing their values.

    Reads: append, then attend with the kernel set the layout was built with (turboQuantKernels, the graph's: dense for Qwen 3.5, deferred for Gemma 4 and MiniCPM5), so no caller sees rotated values. While every row is unpadded and at one position, decode passes no mask and a window the fused causal mask; otherwise both pass the per-row mask (causal, past each row's left padding) that makeMask builds for their query count, built once per forward through masks. Those are the masks the graphs build with makeMask before the append. A committed span is the window read.

    Implements

    Index
    fusedDecode: boolean = ...
    kBits: number
    masks: AttentionMasks = ...

    The per-forward masks of the model this layout serves.

    turboQuantKernels: TurboQuantKernels

    How the named reads attend, named by the graph the layout serves.

    vBits: number
    • Stable storage identity for compatibility guards and persistence. REQUIRED: every capability predicate (isPlainKvCache, isRotating*, packages/inference/src/state/persistence.ts codecs) is a string compare on this value, so a missing override used to fail OPEN into wrong routing (PRs #42/#43: BatchedRotatingCache shipped without one and batched joins dropped running rows). Wrappers report their own kind plus the inner kind.

      Returns string

    • Speculative verify-round support for NON-trimmable recurrent caches (SSMCache — gated-DeltaNet conv + recurrent state). A cache exposing these is spec-eligible without isTrimmable(): the serve loop arms a round before the verify forward (the layer snapshots pre-round state — free, MLX arrays are immutable — and records its position-local kernel inputs), then resolves it: commit on full accept, or rollback(keep) which restores the snapshot and bit-exactly REPLAYS the first keep window tokens through the recurrence (identical arithmetic prefix ⇒ identical state). Trimmable caches leave these unset and keep trim().

      Returns void

    • Drop the last n tokens (future writes overwrite them). bypass (default false → unchanged behavior) skips the isTrimmable guard for the speculative-decode rollback case (trim the last n ≤ γ tips right after a

      1 concat write); rotating caches then physically shrink the buffer tail.

      Parameters

      • count: number

      Returns void