Views
No views yet
pip install auto-adpq1import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4model_id = "Tfloow/Llama-3.2-1B-adpq-4bit-sim-16workers"
5
6model = AutoModelForCausalLM.from_pretrained(
7 model_id,
8 torch_dtype=torch.bfloat16,
9 device_map="auto"
10)
11tokenizer = AutoTokenizer.from_pretrained(model_id)
12
13inputs = tokenizer("Hello, world!", return_tensors="pt").to("cuda")
14output = model.generate(**inputs, max_new_tokens=20)
15print(tokenizer.decode(output[0]))| model | PPL |
|---|---|
| unsloth/Meta-Llama-3.1-8B | 4.8693 |
| unsloth/Meta-Llama-3.1-8B-bnb-4bit | 5.0733 |
| Tfloow/Meta-Llama-3.1-8B-weights-adpq-4bit-sim | 5.3671 |
| ---- | ---- |
| unsloth/Meta-Llama-3.2-1B | 6.5546 |
| unsloth/Meta-Llama-3.2-1B-bnb-4bit | 6.9971 |
| unsloth/Meta-Llama-3.2-1B-adpq | 7.5700 |
1
2import torch
3from transformers import AutoModelForCausalLM
4
5from auto_adpq import Auto_AdpQ, AutoAdpQConfig
6
7model_name = "meta-llama/Llama-3.2-1B"
8
9# Setup Auto-AdpQ configuration
10adpq_config = AutoAdpQConfig(
11 group_size=group_size,
12 n_iters=30, # Seems quite slow otherwise
13 alpha=0.09,
14 device="cpu",
15 q_bit=4,
16 data_packing=False,
17 symmetrical_quantization=True,
18)
19
20user = "Tfloow"
21adpq_model_name = f"{user}/{model_name.split('/')[-1]}-adpq-4bit-sim-16workers"
22
23model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16)
24
25print(model.dtype)
26
27# virtual quantization
28quantized = Auto_AdpQ.apply_quantization(model, adpq_config, multi_threaded=16)
29
30model.push_to_hub(adpq_model_name)