github ggml-org/llama.cpp b12406

latest release: b12407
pre-releaseone hour ago
Details

feat: add Inkling 2 support (text + vision) (#32217)

  • convert : add Inkling2 text GGUF conversion

Assisted-by: Codex

  • llama : implement Inkling2 text inference

Assisted-by: Codex

  • tests : cover Inkling2 text support

Assisted-by: Codex

  • conversion : dequantize packed Inkling2 experts in row chunks

Decode per-layer NVFP4 and MXFP8 schemes, validate companions, and use stored scale shapes with a warning for the declared MXFP8 [32,32] grid. Reorder packed w13 rows and their scale rows together. Keep normal GGUF outtype selection and 3D expert tensors.

Stream 128 rows per expert through LazyChunkedTensor. Real w13 (384x4608x4608) needs a 2.25 MiB F32 chunk instead of a 30.375 GiB expanded layer. Real-shaped sparse probes peak below 5.8 MiB of Python/NumPy chunk allocations, plus 5.2 MiB of callback metadata: budget about 16 MiB per projection including mapped pages, excluding runtime, other tensors and OS cache. Full-model chunk metadata is roughly 370 MiB.

Packed synthetic GGUF weights match the independent pinned vLLM decode bit-for-bit. CPU prefill/decode logits remain within 3.1e-6 absolute error, with 100% argmax agreement. Float fixtures, original-name conversion and CPU architecture checks pass. Real checkpoint conversion remains untested.

Assisted-by: Codex

  • convert : add Inkling2 vision mmproj support

Assisted-by: Codex

  • mtmd : implement Inkling2 still-image encoder

Assisted-by: Codex

  • inkling2 : scope image loading

Assisted-by: Codex

  • inkling2 : enable flash attention with folded bias and sinks

Assisted-by: Codex

  • cuda : route per-head flash attention masks through vec

Assisted-by: Codex

  • mtmd : support Inkling2 temporal frame means

Assisted-by: Codex

  • style : restore shared image comment

Assisted-by: Codex

  • tests : enlarge Inkling2 context fixture

Assisted-by: Codex

  • inkling2 : load per-layer expert feed-forward widths

Assisted-by: Codex

  • tests : add Inkling2 Metal fusion baselines

Assisted-by: Codex

  • inkling2 : group and align registry entries

Assisted-by: Fable

  • convert : regenerate the Inkling2 tokenizer hash with the update script

Assisted-by: Fable

  • conversion : revert the print_registered_models change

Assisted-by: Fable

  • conversion : sort the Inkling2 model map entries

Assisted-by: Fable

  • convert : map Inkling2 vision checkpoint names in the tensor table

Assisted-by: Fable

  • convert : map Inkling2 text checkpoint names in the tensor table

Assisted-by: Fable

  • tests : document the Inkling2 packed expert conversion test

Assisted-by: Fable

  • tests : cover Inkling2 checkpoint and transformers tensor names

Assisted-by: Fable

  • llama : place Inkling2 fields and list entries by file convention

Assisted-by: Fable

  • gguf-py : align Inkling2 tensor mapping comments

Assisted-by: Fable

  • mtmd : place Inkling2 entries by file convention

Assisted-by: Fable

  • tests : place Inkling2 cases after the existing ones

Assisted-by: Fable

  • cuda : index per-head flash attention masks in the tile and mma kernels

Assisted-by: Claude
Claude-Session: https://claude.ai/code/session_01GbYSza1yxgmTz8wdr6uV8Q

  • inkling2 : project the relative bias before the gather, drop arch branches

Assisted-by: Claude
Claude-Session: https://claude.ai/code/session_01GbYSza1yxgmTz8wdr6uV8Q

  • convert : require Inkling2 hparams, add inkling2 pre-tokenizer

Assisted-by: Claude
Claude-Session: https://claude.ai/code/session_01GbYSza1yxgmTz8wdr6uV8Q

  • mtmd : cap Inkling2 image size, drop video frame averaging

Assisted-by: Claude
Claude-Session: https://claude.ai/code/session_01GbYSza1yxgmTz8wdr6uV8Q

  • inkling2 : fix CI build, Meta device assert and Windows conversion test

Assisted-by: Claude

  • tests : use the default sliding window for the Inkling2 test model

Assisted-by: Claude

  • simplify mtmd part

  • give _v arch for vision

  • remove alpha channel handling, it should be a follow up

  • explicit rule about audio + vision models

  • add audio support

  • rm audio

  • rm gguf mtmd rope base

  • address review comment

  • nits

  • do not normalize embd from mtmd


Co-authored-by: Xuan Son Nguyen son@huggingface.co

Website:

Attestations:

macOS/iOS:

Linux:

Android:

Windows:

openEuler:

  • DISABLED
  • openEuler x86 (310p)
  • openEuler x86 (910b, ACL Graph)
  • openEuler aarch64 (310p)
  • openEuler aarch64 (910b, ACL Graph)

UI:

Don't miss a new llama.cpp release

NewReleases is sending notifications on new releases.