jkim96's picture
Upload DASH-Q quantized checkpoint (INTNone, gNone)
2f79daa verified
|
Raw
History Blame
2.26 kB
metadata
license: apache-2.0
base_model: microsoft/phi-4
library_name: transformers
tags:
  - dashq
  - quantized
  - post-training-quantization

phi-4-DASHQ-INT3-g32

This repository contains a DASH-Q packed quantized checkpoint for microsoft/phi-4.

DASH-Q checkpoints require the lightweight DASH-Q runtime package for loading. They are not plain Transformers checkpoints because linear layers are stored as PackedQuantizedLinear modules.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "jkim96/phi-4-DASHQ-INT3-g32", trust_remote_code=True, device_map="cuda", dtype="auto"
)
tokenizer = AutoTokenizer.from_pretrained("jkim96/phi-4-DASHQ-INT3-g32")

messages = [{"role": "user", "content": "Explain 2-bit quantization in one sentence."}]
text = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
print(tokenizer.decode(model.generate(**inputs, max_new_tokens=256)[0]))

trust_remote_code=True is required: the checkpoint ships its quantized-layer implementation (modeling_dashq.py) and Triton kernels (dashq_kernel.py). Without Triton, or on CPU, it falls back to dequantize-and-matmul in PyTorch.

Requirements

Package Minimum Verified with
torch 2.4 2.12.1+cu130
transformers 5.8 5.9.0
triton 3.0 (Linux; bundled with CUDA builds of PyTorch) 3.7.1
huggingface_hub 1.5 (pulled in by transformers) 1.15.0

Quantization

Field Value
Base model microsoft/phi-4
Bits 3
Group size 32
Scale/zero dtype float16
Calibration dataset wikitext2
Calibration samples 128
Sequence length 2048
Original size 29.3190 GB
Quantized size 9.2126 GB

Evaluation

Metric Value
wikitext2_ppl 6.6497
zero-shot accuracy avg 69.2339
arc_challenge 57.2526
arc_easy 74.9158
commonsense_qa 75.5119
hellaswag 80.5218
lambada_openai 73.9375
openbookqa 45.8000
piqa 81.1208
truthfulqa_mc2 59.5376
winogrande 74.5067