--- license: intel-research --- # Phi-4-mini-FastDraft-120M-int8-ov ## Description FastDraft is a novel and efficient approach for pre-training and aligning a draft model to any LLM to be used with speculative decoding, by incorporating efficient pre-training followed by fine-tuning over synthetic datasets generated by the target model. FastDraft was presented in https://arxiv.org/abs/2411.11055 at ENLSP@NeurIPS24 by Intel Labs. This is a draft model that was trained with FastDraft to accompany [Phi-4-mini-instruct](https://huggingface.co/microsoft/Phi-4-mini-instruct). This is Phi-4-mini-FastDraft-120M model converted to the [OpenVINO™ IR](https://docs.openvino.ai/2025/documentation/openvino-ir-format.html) (Intermediate Representation) format with weights compressed to INT8 by [Optimum](https://github.com/huggingface/optimum). ## Quantization Parameters Weight compression was performed using `nncf.compress_weights` with the following parameters: * mode: **INT8_ASYM** For more information on quantization, check the [OpenVINO model optimization guide](https://docs.openvino.ai/2024/openvino-workflow/model-optimization-guide/weight-compression.html). ## Compatibility The provided OpenVINO™ IR model is compatible with: * OpenVINO version **2025.1** and higher * Optimum Intel **1.23.0** and higher ## Running Model Inference with OpenVINO GenAI 1. Install packages required for using [OpenVINO GenAI](https://github.com/openvinotoolkit/openvino.genai) with Speculative decoding: ``` pip install openvino-genai huggingface_hub ``` 2. Download models from HuggingFace Hub ``` import huggingface_hub as hf_hub main_model_id = "OpenVINO/Phi-4-mini-instruct-int4-ov" draft_model_id = "OpenVINO/Phi-4-mini-FastDraft-120M-int8-ov" main_model_path = "main" draft_model_path = "draft" hf_hub.snapshot_download(main_model_id, local_dir=main_model_path) hf_hub.snapshot_download(draft_model_id, local_dir=draft_model_path) ``` 3. Run model inference using the speculative decoding and specify the pipeline parameters: ``` import openvino_genai prompt = “What is OpenVINO?” config = openvino_genai.GenerationConfig() config.num_assistant_tokens = 3 config.max_new_tokens = 128 def streamer(subword): print(subword, end='', flush=True) return False main_device = "CPU" draft_device = "CPU" draft_model = openvino_genai.draft_model(draft_model_path, draft_device) pipe = openvino_genai.LLMPipeline(args.model_dir, main_device, draft_model=draft_model) pipe.generate(prompt, config, streamer) ``` More GenAI usage examples can be found in OpenVINO GenAI library [docs](https://github.com/openvinotoolkit/openvino.genai/blob/master/src/README.md) and [samples](https://github.com/openvinotoolkit/openvino.genai/tree/master/samples) ## Legal Information The model is distributed under the [Intel Research Use License Agreement](https://huggingface.co/OpenVINO/Phi-4-mini-FastDraft-120M-int8-ov/blob/main/LICENSE.md). ## Disclaimer Intel is committed to respecting human rights and avoiding causing or contributing to adverse impacts on human rights. See [Intel’s Global Human Rights Principles](https://www.intel.com/content/dam/www/central-libraries/us/en/documents/policy-human-rights.pdf). Intel’s products and software are intended only to be used in applications that do not cause or contribute to adverse impacts on human rights.