File size: 3,424 Bytes
5378a1a
dcfcf69
5378a1a
 
dcfcf69
5378a1a
dcfcf69
 
5378a1a
 
dcfcf69
 
 
 
 
5378a1a
dcfcf69
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
---
license: apache-2.0
language:
- en
pipeline_tag: text-generation
tags:
- qwen2.5
- agentic
- heretic
- uncensored
- fastflowlm
- q4nx
- npu
base_model:
- richardyoung/fable-qwen2.5-3b-agentic-merged-heretic
---

# Qwen2.5-3B-Fable (Agentic/H eretic) - Q4NX for FastFlowLM (AMD Ryzen AI XDNA2)

Fable-Qwen2.5-3B, an agentic merged/heretic fine-tune of Qwen2.5-3B, converted to Q4NX for FastFlowLM. Runs on the Qwen2.5 engine (3B kernels).

## What is Q4NX?

Q4NX is FastFlowLM's native packed-quantization format - a rearranged Q4_1
layout tuned for the NPU matrix engine's tile sizes and memory access
patterns. It is **not** a GGUF file and it does not run on llama.cpp or
Ollama; it is meant exclusively for the [FastFlowLM](https://fastflowlm.com)
engine on AMD Ryzen AI NPUs.

## Requirements

- FastFlowLM >= 0.9.45 (`flm` CLI)
- AMD Ryzen AI processor with **XDNA2 (NPU2)** - Strix Point / Ryzen AI 300
  series or later
- Linux with the XRT NPU stack installed
- ~8 GB of unified system memory (Q4NX weights + activations + KV cache)

## Files

| File | Purpose |
|---|---|
| model.q4nx  | Quantized Q4NX weights |
| config.json  | FastFlowLM model configuration |
| tokenizer.json  | Tokenizer |
| tokenizer_config.json  | Special tokens and chat template |
| chat_template.jinja  | Chat template (optional) |
| flm-add.py  | Installer script - registers this model with FastFlowLM |


## Install and run

This repository ships `flm-add.py`, a small installer that copies the model
into the FastFlowLM user directory and registers the tag `qwen2.5-fable:3b`. It never
modifies the system FastFlowLM install.

```bash
# one-time environment (add these to ~/.bashrc)
export FLM_CONFIG_PATH="$HOME/.config/flm/model_list.json"
export FLM_XCLBIN_PATH="$HOME/.config/flm"

git lfs install
git clone https://huggingface.co/Atomic-Germ/Qwen2.5-3B-Fable-Agent-Heretic-NPU2
cd Qwen2.5-3B-Fable-Agent-Heretic-NPU2
python3 ./flm-add.py . 
flm run qwen2.5-fable:3b
```

Run `python3 ./flm-add.py --help` for all options. Without a clone, the same
command works against the repo id directly:

```bash
python3 ./flm-add.py Atomic-Germ/Qwen2.5-3B-Fable-Agent-Heretic-NPU2 
```


## Kernels

FastFlowLM's NPU kernels (xclbins) are closed source and are not shipped in
this repository. `flm-add.py` links the kernels of the official **`qwen2.5-it:3b`**
model (`Qwen2.5-3B-Instruct-NPU2`), because this model shares the same engine family
(`qwen2`) and architecture.

## Serve (OpenAI-compatible)

```bash
flm serve qwen2.5-fable:3b --port 8080
```

```bash
curl http://127.0.0.1:8080/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"qwen2.5-fable:3b","messages":[{"role":"user","content":"Hello!"}],"max_tokens":256}'
```

## Model

- Registry tag: `qwen2.5-fable:3b`
- Engine family: `qwen2`
- Kernel source: Qwen2.5-3B-Instruct-NPU2
- Context length: 32,768 tokens (from config)
- `model.q4nx` size: 2.59 GB
- Base model: [richardyoung/fable-qwen2.5-3b-agentic-merged-heretic](https://huggingface.co/richardyoung/fable-qwen2.5-3b-agentic-merged-heretic)
- License: apache-2.0

## Original model card

See the upstream model card for training details, benchmarks, and upstream
usage. This repository only contains the Q4NX conversion for FastFlowLM.
- Upstream card: [richardyoung/fable-qwen2.5-3b-agentic-merged-heretic](https://huggingface.co/richardyoung/fable-qwen2.5-3b-agentic-merged-heretic)