Skip to content

Support published K2-Horizon FP8 model weights in SGLang #50

Open

Description

@mvillmow

Public source requirements

Use the public Hugging Face artifacts below for all K2-Horizon work in this issue.
These identities define the model consumer. They do not add model bytes, runtime execution, or another owner to a source-only issue.
These requirements supersede earlier internal checkpoints, source revisions, private locators, model aliases, and conversion requirements for this campaign.

Public source Immutable revision Qualification owner
IFM/K2-Horizon-375B-A23B-FP8 f3d9e54cb096b5567a94feb26d87caa9f700daca #863
IFM/K2-Horizon-MoVA-36B-A4B-FP8 feffd71999eb06bfa2fbb8ad220059b694077457 #866
IFM/K2-Horizon-32B-FP8 ff78aa18915bbfd44fc9c76859500436f8d35944 #864
IFM/K2-Horizon-7B-FP8 7f26f4c991cb5ba9bde7d7b409f8b6bf5784f191 #865

The source catalog and artifact cookbooks bind the accepted 2026-09-13 source epoch.
Use their exact content identities, manifests, input roles, and loader requirements.
A changed upstream head requires a separately reviewed source epoch.
A local cache or storage path is a physical input. It does not identify the model.

Earlier internal checkpoint tests, image runs, and qualification results do not qualify these public bytes.
Repeat the applicable source, engine, topology, request, and cleanup checks for each selected public identity.
Keep model bytes unchanged and outside Git. Keep admitted model inputs read-only.
Keep remote checkpoint code disabled. Use reviewed installed runtime support.

Verify the published model-weight format and tensor headers. An FP8 KV cache does not prove FP8 model-weight support.
Do not assume that the published artifact has the old internal expert-only quantization scope.

Problem and scope

SGLang needs loading support for the four published K2-Horizon FP8 artifacts.
The source catalog distinguishes compressed-tensors FP8 linear weights from the MoVA quant_method: fp8 format.
Use each pinned artifact's configuration, index, and staged tensor headers as the authority for quantization scope.

The former private expert-only checkpoint is historical evidence.
Do not assume that all public FP8 artifacts quantize only routed experts.
No private validation package is required for this public source contract.

Required behavior and acceptance

  • Define separate loader capability checks for compressed-tensors FP8 and the published MoVA FP8 format.
  • Detect quantization scope from typed metadata and verified staged tensor headers.
  • Load all tensors and scales required by the selected published format.
  • Preserve the declared dtype of every tensor outside the declared quantization scope.
  • Keep support for expert-only scope when the accepted source explicitly declares it.
  • Test mixed quantized and unquantized tensors and reject accidental quantization of unrelated tensors.
  • Reject missing scales, incomplete expert tensors, inconsistent metadata, and unsupported formats.
  • Test dense linear, routed-expert, shared-expert, and MoVA cases where the source format requires them.
  • Support tensor parallelism, expert parallelism, and DeepEP when the selected model and topology require them.
  • Test distributed expert ownership and shard loading.
  • Reject BF16-only and FP8-KV-cache-only evidence at the FP8 model-weight gate.
  • Run fresh H200 qualification for each accepted public FP8 artifact without invalid values or missing weights.
  • Bind each result to exact public source, engine, image, quantization, topology, and cleanup identities.
  • Publish sanitized receipt identities and outcomes. Public model names, revisions, and published tensor-format facts are permitted.
  • Keep credentials, private storage paths, hosts, endpoints, and private runtime data out of public records.

Dependencies and boundaries

LLM360/sglang#49 owns native public base-model support.
LLM360/comet#847 owns Comet FP8 admission integration.
LLM360/comet#811 owns managed image qualification.
Comet #863, #864, #865, and #866 own complete service rows.
Do not change published model bytes or substitute a private quantization artifact.

Native MoVA FP8 implementation progress

The native loader change is in sgl-project/sglang PR #39509.
Signed merge commit 35dd6431ec108b721a0e00c43a00ac55e76b9e88 includes required upstream base ddd4600197a43a36962ec761af9628b78be05c69.
The four feature files and public checkpoint revision did not change.

Fork CI run 35278828188 used commit 35dd6431ec108b721a0e00c43a00ac55e76b9e88.
All 144 affected native CPU cases passed. These cases include all 114 new cases.
Required upstream checks still apply. Maintainers control upstream CI authorization.

The public MoVA FP8 configuration still lacks the necessary training router provenance.
Positive small-model tests declare synthetic provenance explicitly.
This PR does not complete the four public FP8 rows or their H200 qualification.
The acceptance items in this issue stay open.

Native FP8 source progress

This progress section can change when new evidence is accepted.
The public source requirements and all acceptance items above stay unchanged.

Native source Signed PR head Accepted CPU result
Dense FP8, PR #52 3d6db36e46f5f15643a642e92f97ef2fb750a56a Six cases passed at this head.
Standard-MoE FP8, PR #53 a4060a6e0e0627c14ae4246f171ed403c39570eb 22 cases passed at 2e102a72abe31f3e47ace517d11f26524a3c7752.
MoVA FP8 restore, PR #54 adabb14a39ab514277e9714cb8e4d7c726bd3982 One case passed at this head.

The standard-MoE successor changes only test formatting. Its full test syntax tree and product bytes are unchanged.
Dense and standard-MoE cases include native cache restore followed by a weight update.
The MoVA case includes real cache restore, checksum verification, tensor bytes, and rejection of a second load before source iteration.

Signed integration 9040ecfdf31edaa225e96967f176c2e5aba5f390 keeps all three completion states.
PR #55 contains this source.
CI run 35362262881 collected three restore cases at this source.
All three passed, with no failures, errors or skips. Ordinary PR CI and platform controls apply.
This source is a candidate for the Comet build. Comet #1137 owns the build input and its proposed successor.

These synthetic CPU cases do not qualify GPU execution, DeepEP transport, distributed cache-key admission, full public checkpoints, images, or service rows.
The standard-MoE restore uses TP1 cache metadata with a TP2/MoE-TP1/EP2 rank-1 model.
The public MoVA configuration does not give the necessary training router provenance. Positive cases declare synthetic provenance.
All wider acceptance requirements stay open.

Activity

  1. changed the title [-]Support expert-only compressed-tensors FP8 for IFM[/-] [+]Support published K2-Horizon FP8 model weights in SGLang[/+] on Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions