Zero-Shot Classification
Transformers
qwen3_5
feature-extraction
decision-model
system-one
classification
3-bit
hqq
lora
custom_code
Instructions to use BoldingBuilds/Wildcat with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use BoldingBuilds/Wildcat with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("zero-shot-classification", model="BoldingBuilds/Wildcat", trust_remote_code=True)# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModel processor = AutoProcessor.from_pretrained("BoldingBuilds/Wildcat", trust_remote_code=True) model = AutoModel.from_pretrained("BoldingBuilds/Wildcat", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
Model card
Browse files
README.md
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: other
|
| 3 |
+
license_name: fastino-community-license
|
| 4 |
+
license_link: https://huggingface.co/BoldingBuilds/Wildcat/blob/main/LICENSES/FASTINO-LICENSE.txt
|
| 5 |
+
base_model: vllm-sr/d3-ultra
|
| 6 |
+
pipeline_tag: zero-shot-classification
|
| 7 |
+
library_name: transformers
|
| 8 |
+
tags:
|
| 9 |
+
- decision-model
|
| 10 |
+
- system-one
|
| 11 |
+
- classification
|
| 12 |
+
- 3-bit
|
| 13 |
+
- hqq
|
| 14 |
+
- lora
|
| 15 |
+
---
|
| 16 |
+
|
| 17 |
+
<!-- DRAFT for Josh's review. Not uploaded. -->
|
| 18 |
+
|
| 19 |
+
# Wildcat
|
| 20 |
+
|
| 21 |
+
**Wildcat is d3-ultra squeezed to 3 bits, then repaired.** It answers the same decision questions as
|
| 22 |
+
[vllm-sr/d3-ultra](https://huggingface.co/vllm-sr/d3-ultra) (pick one option, yes / no, rate on a scale) and
|
| 23 |
+
returns a probability for every answer. It loads in **about 13 GB of GPU memory** and runs on a single 24 GB card
|
| 24 |
+
(tested on an RTX 3090). d3-ultra in bf16 needs about 54 GB.
|
| 25 |
+
|
| 26 |
+
| | |
|
| 27 |
+
| --- | --- |
|
| 28 |
+
| **Base** | d3-ultra (27B, Qwen3.5 family), Apache-2.0 |
|
| 29 |
+
| **Weights** | 400 text Linears in 3-bit HQQ (group 64), packed; everything else bf16 as in d3-ultra |
|
| 30 |
+
| **Repair** | Two LoRA adapters (rank 32, two training seeds) averaged, applied on top of the 3-bit weights |
|
| 31 |
+
| **GPU memory** | 13.19 GiB loaded; runs on 24 GB cards |
|
| 32 |
+
| **Download** | 13.6 GiB |
|
| 33 |
+
| **License** | Fastino Community License (see below). Built with Fastino GLiDE. |
|
| 34 |
+
|
| 35 |
+
## How it was made
|
| 36 |
+
|
| 37 |
+
1. **Squeeze.** d3-ultra's text-layer weights are quantized to 3 bits with HQQ (group size 64). The vision tower,
|
| 38 |
+
embeddings, norms and the small `in_proj_a` / `in_proj_b` projections stay in bf16. The 3-bit codes are stored
|
| 39 |
+
packed (a 2-bit plane plus a 1-bit plane); a small Triton kernel unpacks each layer just before its matmul, bit
|
| 40 |
+
for bit equal to HQQ's own dequantize.
|
| 41 |
+
2. **Repair.** A LoRA is trained on top of the frozen 3-bit model to match the answer probabilities of three
|
| 42 |
+
teachers: d3-ultra, [Jeffan](https://huggingface.co/tattrongvu) and [Fastino GLiDE](https://huggingface.co/fastino/GLiDE).
|
| 43 |
+
The questions come only from public training splits of permissively licensed datasets, checked against the
|
| 44 |
+
Decision Index for leaks. No Decision Index data was used for training.
|
| 45 |
+
3. **Blend.** Two runs with different seeds are averaged (each adapter at half strength).
|
| 46 |
+
|
| 47 |
+
## Results
|
| 48 |
+
|
| 49 |
+
**Decision Index 0.3 public index: 70.66** (complete run, all 140,620 requests, one RTX PRO 6000). d3-ultra's public
|
| 50 |
+
index on the board is 71.57, so Wildcat is **0.9 points below the model it was made from**, at a quarter of the memory.
|
| 51 |
+
The board's own ranking uses its private tests, which we have not seen.
|
| 52 |
+
|
| 53 |
+
| Area (public index, skill) | Wildcat | d3-ultra (board) |
|
| 54 |
+
| --- | --- | --- |
|
| 55 |
+
| Knowledge & reasoning | 58.9 | 62.3 |
|
| 56 |
+
| Language understanding | 73.7 | 72.4 |
|
| 57 |
+
| Retrieval & classification | 71.9 | 71.8 |
|
| 58 |
+
| Tools & automation | 87.2 | 87.8 |
|
| 59 |
+
| Arts & human taste | 60.7 | 63.5 |
|
| 60 |
+
| **Index** | **70.66** | **71.57** |
|
| 61 |
+
|
| 62 |
+
Where the 3-bit squeeze shows: multi-step reasoning and hard knowledge (MuSR, GPQA Diamond, CRUXEval, MMLU-Pro,
|
| 63 |
+
GSM8K are 3 to 10 points lower). The repair LoRA gains on language tasks (iSarcasmEval +8.7, FinEntity +2.7).
|
| 64 |
+
|
| 65 |
+
Speed over the full public run on one RTX PRO 6000 (in-process, one request at a time): median 157 ms, p80 351 ms
|
| 66 |
+
per request. The mean is 1,258 ms because about 1,000 very long ToolRet requests take minutes each; without ToolRet
|
| 67 |
+
the mean is 438 ms. On 750 sampled rows timed the same way, Wildcat and d3-ultra were level (mean 818 vs 932 ms).
|
| 68 |
+
|
| 69 |
+
On cards under 40 GB the engine answers one question at a time (batch size 1) so that requests with many long
|
| 70 |
+
questions fit; on cards over 72 GB it unpacks to bf16 and merges the LoRA for speed. Very long requests can fall
|
| 71 |
+
back to a slower path that still answers them.
|
| 72 |
+
|
| 73 |
+
## What was not tested
|
| 74 |
+
|
| 75 |
+
- **Box and Track** (image and video locations). d3-ultra supports them; Wildcat was only measured on choice,
|
| 76 |
+
yes / no and score questions. Expect them to be weaker than d3-ultra's.
|
| 77 |
+
- AMD GPUs. The packed kernel is Triton and was only run on NVIDIA (CUDA).
|
| 78 |
+
|
| 79 |
+
## Run it
|
| 80 |
+
|
| 81 |
+
Needs an NVIDIA GPU with 24 GB or more, and the packages in `requirements.txt` plus `triton` and `accelerate`.
|
| 82 |
+
|
| 83 |
+
```bash
|
| 84 |
+
hf download BoldingBuilds/Wildcat --local-dir wildcat
|
| 85 |
+
```
|
| 86 |
+
|
| 87 |
+
With the Decision Index kit (this is how the board runs it):
|
| 88 |
+
|
| 89 |
+
```bash
|
| 90 |
+
PYTHONPATH=wildcat python -m decision_index run --engine d3_q3:D3Q3Engine --option model=wildcat \
|
| 91 |
+
--rows <rows.jsonl.gz> --out <run dir>
|
| 92 |
+
```
|
| 93 |
+
|
| 94 |
+
The LoRA in `lora.safetensors` attaches on load. Nothing else needs passing.
|
| 95 |
+
|
| 96 |
+
<!-- TODO: a plain Python example (D3.from_pretrained with d3_q3.install()) once checked. -->
|
| 97 |
+
|
| 98 |
+
## Files
|
| 99 |
+
|
| 100 |
+
| File | What it is |
|
| 101 |
+
| --- | --- |
|
| 102 |
+
| `q3.safetensors` | the packed 3-bit Linears (`<module>.lo / .hi / .scale / .zero`) |
|
| 103 |
+
| `model-rest.safetensors` | every other backbone tensor, bf16 |
|
| 104 |
+
| `lora.safetensors` | the repair LoRA, both seeds stacked and scaled (`<module>.A / .B`) |
|
| 105 |
+
| `readout.safetensors`, tokenizer, configs, `d3_*.py` | from d3-ultra, unchanged |
|
| 106 |
+
| `d3_q3.py` | the 3-bit engine and loader |
|
| 107 |
+
| `MODEL_MANIFEST.json` | SHA-256 of every file; checked on load |
|
| 108 |
+
|
| 109 |
+
## License
|
| 110 |
+
|
| 111 |
+
Wildcat learned from Fastino GLiDE's answers, so it is a Derivative Work under the
|
| 112 |
+
[Fastino Community License](LICENSES/FASTINO-LICENSE.txt) and ships under it. In short:
|
| 113 |
+
|
| 114 |
+
- Free to use, change and share. Keep this license with any copy.
|
| 115 |
+
- **Commercial use:** show "Built with Fastino GLiDE" in the product's docs, about page or UI.
|
| 116 |
+
- **Companies with more than $10M yearly revenue** using it in production need a separate agreement with Fastino
|
| 117 |
+
(hello@fastino.ai). Evaluation, testing, benchmarking and research are not production.
|
| 118 |
+
|
| 119 |
+
d3-ultra's weights, readout and runtime are Apache-2.0 (`LICENSE`, `NOTICE`). Qwen's Apache-2.0 license is in
|
| 120 |
+
`LICENSES/Qwen3.8-27B-LICENSE`.
|
| 121 |
+
|
| 122 |
+
**Built with Fastino GLiDE.**
|
| 123 |
+
|
| 124 |
+
## Credits
|
| 125 |
+
|
| 126 |
+
- **d3-ultra** and its runtime: the vLLM Semantic Router team ([vllm-sr/d3-ultra](https://huggingface.co/vllm-sr/d3-ultra)). Wildcat is their model, made smaller.
|
| 127 |
+
- **Fastino GLiDE**: teacher ([fastino/GLiDE](https://huggingface.co/fastino/GLiDE)).
|
| 128 |
+
- **Jeffan** (tattrongvu): teacher.
|
| 129 |
+
- **Qwen** (Alibaba Cloud): the base model family.
|
| 130 |
+
- **HQQ** (Mobius Labs): the 3-bit quantizer.
|
| 131 |
+
- The **Decision Index** (multimodalart) for the benchmark and kit.
|
| 132 |
+
- The authors of every public dataset in the repair mix (below).
|
| 133 |
+
|
| 134 |
+
## Repair data
|
| 135 |
+
|
| 136 |
+
36,559 questions, all from **train splits** of public datasets (or generated here), each checked against the
|
| 137 |
+
Decision Index public rows for overlapping text; overlapping rows were dropped. Several sources are the train
|
| 138 |
+
splits of benchmarks the Decision Index tests (for example BANKING77, CLINC150, GSM8K, WinoGrande, HellaSwag,
|
| 139 |
+
When2Call, Amazon ESCI, iSarcasmEval, New Yorker captions), so expect Wildcat to do relatively better there.
|
| 140 |
+
|
| 141 |
+
- Intent and topic: CLINC150, BANKING77, DBpedia-14, LEDGAR
|
| 142 |
+
- Reading, inference and paraphrase: SQuAD v2, BoolQ, SNLI, WANLI, VitaminC, PAWS, STS-B, PubMedQA, claim_stance + Perspectrum
|
| 143 |
+
- Commonsense and science: HellaSwag, WinoGrande, PIQA, Social IQa, CommonsenseQA, Cosmos QA, ARC, OpenBookQA, QASC, RuleTaker
|
| 144 |
+
- Maths and knowledge: GSM8K, AQuA-RAT, MATH (hendrycks), MMLU (train), MedMCQA
|
| 145 |
+
- Ratings and taste: Feedback Collection, HelpSteer2, WMT DA, GoEmotions, Civil Comments, New Yorker Caption Contest, iSarcasmEval
|
| 146 |
+
- Tools and search: When2Call, Amazon ESCI
|
| 147 |
+
- Generated here (MIT): chord, CRUX-style code tracing, BBH-style, CLadder-style and SQuAD-based hallucination questions
|
| 148 |
+
|
| 149 |
+
Each source keeps its own licence (CC-BY, CC-BY-SA, Apache-2.0, MIT, CC0, AFL-3.0); no non-commercial data.
|