Views
No views yet
--kv-cache-dtype fp8 argument in vLLM.1from vllm import LLM
2model = LLM(model="neuralmagic/Meta-Llama-3-8B-Instruct-FP8-KV", kv_cache_dtype="fp8")
3result = model.generate("Hello, my name is")1from datasets import load_dataset
2from transformers import AutoTokenizer
3
4from auto_fp8 import AutoFP8ForCausalLM, BaseQuantizeConfig
5
6pretrained_model_dir = "meta-llama/Meta-Llama-3-8B-Instruct"
7quantized_model_dir = "Meta-Llama-3-8B-Instruct-FP8-KV"
8
9tokenizer = AutoTokenizer.from_pretrained(pretrained_model_dir, use_fast=True)
10tokenizer.pad_token = tokenizer.eos_token
11
12ds = load_dataset("mgoin/ultrachat_2k", split="train_sft")
13examples = [tokenizer.apply_chat_template(batch["messages"], tokenize=False) for batch in ds]
14examples = tokenizer(examples, padding=True, truncation=True, return_tensors="pt").to("cuda")
15
16quantize_config = BaseQuantizeConfig(
17 quant_method="fp8",
18 activation_scheme="static",
19 ignore_patterns=["re:.*lm_head"],
20 kv_cache_quant_targets=("k_proj", "v_proj"),
21)
22
23model = AutoFP8ForCausalLM.from_pretrained(pretrained_model_dir, quantize_config)
24model.quantize(examples)
25model.save_quantized(quantized_model_dir)| Meta-Llama-3-8B-Instruct | Meta-Llama-3-8B-Instruct-FP8 | Meta-Llama-3-8B-Instruct-FP8-KV (this model) | |
|---|---|---|---|
| gsm8k 5-shot | 75.44 | 74.37 | 74.98 |