Sage-A1.5 — ROCmFPX GGUF

InternScience/Sage-A1.5, the 35B mixture-of-experts agentic model from Shanghai AI Laboratory, quantized to the ROCmFPX formats, a llama.cpp fork with low-bit weight types for AMD GPUs (Vulkan and HIP/ROCm).

Start with Q4_0_ROCMFP4_STRIX. It is the closest 4-bit file to the original.

These files only load in a ROCmFPX build of llama.cpp. Stock llama.cpp, LM Studio and Ollama do not know these types. These files have not been tested on AMD hardware yet.

Not an official release of InternScience. All credit for the model goes to its authors.

Files and measured quality

Measured against the BF16 model (72 GB, perplexity 6.2751) on WikiText-2 test, 40 chunks of 512 tokens. KLD is the mean KL divergence of the next-token distribution from BF16 (lower is better). Same top is how often the quant picks the same next token as BF16.

File Size PPL KLD Same top
Sage-A1.5-Q8_0_ROCMFPX.gguf 36.7 GB 6.2945 0.0107 95.62% 8-bit, closest to BF16
Sage-A1.5-Q6_0_ROCMFPX.gguf 29.4 GB 6.2826 0.0115 95.05% 6-bit, almost as close as 8-bit
Sage-A1.5-Q4_0_ROCMFP4_STRIX.gguf 19.1 GB 6.4536 0.0537 88.81% Recommended. 4-bit recipe tuned for Strix Halo (gfx1151)
Sage-A1.5-Q4_0_ROCMFP4_FAST.gguf 19.0 GB 6.4873 0.0543 89.19% speed-first 4-bit (one scale per block)
Sage-A1.5-Q2_0_ROCMFPX.gguf 11.4 GB 10.4152 0.5274 70.22% smallest file; clear quality loss
mmproj-Sage-A1.5-F16.gguf 0.9 GB vision projector (F16), converted but not tested

Not published: Q3_0_ROCMFPX (19.8 GB, PPL 6.6816, KLD 0.0741, same top 87.80%) is larger than Q4_0_ROCMFP4_STRIX and further from BF16.

The 8-bit file is not as close to BF16 as a stock Q8_0 usually is: ROCmFPX block scales have a fixed smallest step, so 8-bit blocks of small weights keep fewer than 8 bits (ROCmFPX#118).

How these were made

  1. convert_hf_to_gguf.py --outtype bf16 (and --mmproj --outtype f16 for the vision projector).
  2. Importance matrix from the BF16 model on the GPU over a general calibration text (calibration_datav3), 512-token chunks.
  3. llama-quantize --imatrix, one run per type, from HarshaVardhan3002/ROCmFPX (ROCmFPX fb08d7c merged onto upstream llama.cpp).
  4. Quality: the BF16 reference ran on an NVIDIA GPU with stock BF16 kernels. Each quant was expanded back to F16 (llama-quantize --allow-requantize ... F16), which keeps its stored weights, and scored on the same GPU with stock F16 kernels. The fork's own CUDA kernels for these types are not correct on NVIDIA, so they were not used. As a check, this method gave KLD 0.0050 for a 9B model's Q8_0_ROCMFPX where the CPU backend gave 0.0054. AMD GPU kernels compute the same math in a different order, so results on an AMD GPU can differ slightly.

Run

git clone https://github.com/HarshaVardhan3002/ROCmFPX && cd ROCmFPX
cmake -B build -DGGML_VULKAN=ON          # or -DGGML_HIP=ON -DAMDGPU_TARGETS=gfx1151 (gfx1100 for RX 7900)
cmake --build build --target llama-server -j
build/bin/llama-server -m Sage-A1.5-Q4_0_ROCMFP4_STRIX.gguf -ngl 999 -fa on --jinja

License

Apache-2.0, same as the base model.

Downloads last month
-
GGUF
Model size
36B params
Architecture
qwen35moe
Hardware compatibility
Log In to add your hardware

2-bit

4-bit

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Harsha001/Sage-A1.5-ROCmFPX

Quantized
(25)
this model