File size: 6,158 Bytes
7b2ad78 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
---
base_model: microsoft/Phi-3-mini-128k-instruct
inference: false
language:
- en
library_name: gguf
license: mit
license_link: https://huggingface.co/microsoft/Phi-3-mini-128k-instruct/resolve/main/LICENSE
pipeline_tag: text-generation
quantized_by: legraphista
tags:
- quantized
- GGUF
- imatrix
- quantization
- imat
- imatrix
- static
---
# Phi-3-mini-128k-instruct-IMat-GGUF
_Llama.cpp imatrix quantization of microsoft/Phi-3-mini-128k-instruct_
Original Model: [microsoft/Phi-3-mini-128k-instruct](https://huggingface.co/microsoft/Phi-3-mini-128k-instruct)
Original dtype: `BF16` (`bfloat16`)
Quantized by: llama.cpp [b3003](https://github.com/ggerganov/llama.cpp/releases/tag/b3003)
IMatrix dataset: [here](https://gist.githubusercontent.com/legraphista/d6d93f1a254bcfc58e0af3777eaec41e/raw/d380e7002cea4a51c33fffd47db851942754e7cc/imatrix.calibration.medium.raw)
- [Phi-3-mini-128k-instruct-IMat-GGUF](#phi-3-mini-128k-instruct-imat-gguf)
- [Files](#files)
- [IMatrix](#imatrix)
- [Common Quants](#common-quants)
- [All Quants](#all-quants)
- [Downloading using huggingface-cli](#downloading-using-huggingface-cli)
- [Inference](#inference)
- [Simple chat template](#simple-chat-template)
- [Llama.cpp](#llama-cpp)
- [FAQ](#faq)
- [Why is the IMatrix not applied everywhere?](#why-is-the-imatrix-not-applied-everywhere)
- [How do I merge a split GGUF?](#how-do-i-merge-a-split-gguf)
---
## Files
### IMatrix
Status: β³ Processing
Link: [here](https://huggingface.co/legraphista/Phi-3-mini-128k-instruct-IMat-GGUF/blob/main/imatrix.dat)
### Common Quants
| Filename | Quant type | File Size | Status | Uses IMatrix | Is Split |
| -------- | ---------- | --------- | ------ | ------------ | -------- |
| Phi-3-mini-128k-instruct.Q8_0 | Q8_0 | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.Q6_K | Q6_K | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.Q4_K | Q4_K | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.Q3_K | Q3_K | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.Q2_K | Q2_K | - | β³ Processing | π’ Yes | -
### All Quants
| Filename | Quant type | File Size | Status | Uses IMatrix | Is Split |
| -------- | ---------- | --------- | ------ | ------------ | -------- |
| Phi-3-mini-128k-instruct.FP16 | F16 | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.BF16 | BF16 | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.Q5_K | Q5_K | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.Q5_K_S | Q5_K_S | - | β³ Processing | βͺ No | -
| Phi-3-mini-128k-instruct.Q4_K_S | Q4_K_S | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.Q3_K_L | Q3_K_L | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.Q3_K_S | Q3_K_S | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.Q2_K_S | Q2_K_S | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ4_NL | IQ4_NL | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ4_XS | IQ4_XS | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ3_M | IQ3_M | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ3_S | IQ3_S | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ3_XS | IQ3_XS | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ3_XXS | IQ3_XXS | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ2_M | IQ2_M | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ2_S | IQ2_S | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ2_XS | IQ2_XS | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ2_XXS | IQ2_XXS | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ1_M | IQ1_M | - | β³ Processing | π’ Yes | -
| Phi-3-mini-128k-instruct.IQ1_S | IQ1_S | - | β³ Processing | π’ Yes | -
## Downloading using huggingface-cli
If you do not have hugginface-cli installed:
```
pip install -U "huggingface_hub[cli]"
```
Download the specific file you want:
```
huggingface-cli download legraphista/Phi-3-mini-128k-instruct-IMat-GGUF --include "Phi-3-mini-128k-instruct.Q8_0.gguf" --local-dir ./
```
If the model file is big, it has been split into multiple files. In order to download them all to a local folder, run:
```
huggingface-cli download legraphista/Phi-3-mini-128k-instruct-IMat-GGUF --include "Phi-3-mini-128k-instruct.Q8_0/*" --local-dir Phi-3-mini-128k-instruct.Q8_0
# see FAQ for merging GGUF's
```
---
## Inference
### Simple chat template
```
<s><|user|>
Can you provide ways to eat combinations of bananas and dragonfruits?<|end|>
<|assistant|>
Sure! Here are some ways to eat bananas and dragonfruits together:
1. Banana and dragonfruit smoothie: Blend bananas and dragonfruits together with some milk and honey.
2. Banana and dragonfruit salad: Mix sliced bananas and dragonfruits together with some lemon juice and honey.<|end|>
<|user|>
What about solving an 2x + 3 = 7 equation?<|end|>
<|assistant|>
```
### Llama.cpp
```
llama.cpp/main -m Phi-3-mini-128k-instruct.Q8_0.gguf --color -i -p "prompt here (according to the chat template)"
```
---
## FAQ
### Why is the IMatrix not applied everywhere?
According to [this investigation](https://www.reddit.com/r/LocalLLaMA/comments/1993iro/ggufs_quants_can_punch_above_their_weights_now/), it appears that lower quantizations are the only ones that benefit from the imatrix input (as per hellaswag results).
### How do I merge a split GGUF?
1. Make sure you have `gguf-split` available
- To get hold of `gguf-split`, navigate to https://github.com/ggerganov/llama.cpp/releases
- Download the appropriate zip for your system from the latest release
- Unzip the archive and you should be able to find `gguf-split`
2. Locate your GGUF chunks folder (ex: `Phi-3-mini-128k-instruct.Q8_0`)
3. Run `gguf-split --merge Phi-3-mini-128k-instruct.Q8_0/Phi-3-mini-128k-instruct.Q8_0-00001-of-XXXXX.gguf Phi-3-mini-128k-instruct.Q8_0.gguf`
- Make sure to point `gguf-split` to the first chunk of the split.
---
Got a suggestion? Ping me [@legraphista](https://x.com/legraphista)! |