🏆 First FP8 quantized Dream model for native PyTorch/transformers inference.
This is an FP8 quantized version of Dream-v0-Instruct-7B,
a diffusion-based large language model from HKU NLP Group.
What is Dream?
Dream 7B is a Diffusion Large Language Model (dLLM) - unlike traditional autoregressive models
(GPT, LLaMA, Claude) that generate text left-to-right one token at a time, Dream uses
parallel denoising to refine the entire sequence simultaneously.
Key advantages:
🔄 Bidirectional context modeling - considers full context in both directions
🎯 Flexible text generation order - not constrained to left-to-right
🧠 Superior planning abilities - excels at tasks requiring multi-step reasoning
⚡ Adjustable quality-speed tradeoff - control inference steps for your needs
Quantization Details
Property
Value
Base Model
Dream-v0-Instruct-7B
Quantization
FP8 Dynamic (Weight-only)
Method
llmcompressor FP8_DYNAMIC
Calibration
Data-free
Storage Size
~8.7GB
VRAM Required
~10GB
Quantization Time
1.7 minutes
Quantization Infrastructure
Professional hardware ensures consistent, high-quality quantization:
Note: Dream uses a custom diffusion architecture that requires transformers with trust_remote_code=True. It is not compatible with standard inference frameworks like vLLM.
python
1import torch
2from transformers import AutoModel, AutoTokenizer
34model_path ="TevunahAi/Dream-v0-Instruct-7B-FP8"56# Load FP8 model - will decompress to BF16 during inference7model = AutoModel.from_pretrained(8 model_path,9 torch_dtype="auto",# Auto-detects FP8, decompresses to BF1610 trust_remote_code=True,# Required for diffusion architecture11 device_map="auto",12 low_cpu_mem_usage=True,13)14tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)1516# Prepare input17messages =[18{"role":"user","content":"Explain quantum computing in simple terms."}19]2021inputs = tokenizer.apply_chat_template(22 messages,23 return_tensors="pt",24 return_dict=True,25 add_generation_prompt=True26)2728input_ids = inputs.input_ids.to(model.device)29attention_mask = inputs.attention_mask.to(model.device)3031# Dream uses diffusion_generate, not generate!32output = model.diffusion_generate(33 input_ids,34 attention_mask=attention_mask,35 max_new_tokens=512,36 steps=256,# More steps = better quality37 temperature=0.7,38 top_p=0.9,39 alg="entropy",40 alg_temp=0.,41)4243# Decode and clean up response44response = tokenizer.decode(output[0][input_ids.shape[1]:].tolist())45response = response.split("<|endoftext|>")[0].strip()46print(response)