Image-Text-to-Text
GGUF
German
English
llama.cpp
mtp
speculative-decoding
qwen3
multimodal
conversational
Instructions to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0 # Run inference directly in the terminal: llama cli -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0 # Run inference directly in the terminal: llama cli -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0 # Run inference directly in the terminal: ./llama-cli -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Use Docker
docker model run hf.co/Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
- LM Studio
- Jan
- vLLM
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Davidmg0815/Qwen3.8-27B-MTP-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Davidmg0815/Qwen3.8-27B-MTP-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
- Ollama
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Ollama:
ollama run hf.co/Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
- Unsloth Studio
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for Davidmg0815/Qwen3.8-27B-MTP-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for Davidmg0815/Qwen3.8-27B-MTP-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for Davidmg0815/Qwen3.8-27B-MTP-GGUF to start chatting
- Pi
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Docker Model Runner:
docker model run hf.co/Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
- Lemonade
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Run and chat with the model
lemonade run user.Qwen3.8-27B-MTP-GGUF-Q8_0
List all available models
lemonade list
- Hermes Agent
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use Davidmg0815/Qwen3.8-27B-MTP-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "Davidmg0815/Qwen3.8-27B-MTP-GGUF:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Upload METHODIK.md with huggingface_hub
Browse files- METHODIK.md +131 -0
METHODIK.md
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Messprotokoll MATH-500 — warum eine Zahl allein nichts sagt
|
| 2 |
+
|
| 3 |
+
Diese Seite protokolliert, wie die Mathematik-Werte in der Modellkarte
|
| 4 |
+
zustande kommen, welche Fehler dabei aufgetreten sind und was noch fehlt.
|
| 5 |
+
Sie existiert, weil derselbe Messlauf je nach Auswertung **76 oder 98 Prozent**
|
| 6 |
+
ergibt — und beide Zahlen belegbar sind.
|
| 7 |
+
|
| 8 |
+
Wer Benchmark-Werte veröffentlicht, ohne das offenzulegen, veröffentlicht
|
| 9 |
+
eine Meinung.
|
| 10 |
+
|
| 11 |
+
## Der aktuelle Stand
|
| 12 |
+
|
| 13 |
+
| Modell | streng gewertet | nur abgeschlossene Antworten | abgeschnitten |
|
| 14 |
+
|---|---|---|---|
|
| 15 |
+
| Qwen3.8-27B Q8_0 | 76,0 % | 98,3 % | 34 von 150 (23 %) |
|
| 16 |
+
| Qwen3.8-27B Q6_K | 76,7 % | 97,5 % | 32 von 150 (21 %) |
|
| 17 |
+
| Qwen3.6-27B Q6_K | 76,0 % | 97,4 % | 33 von 150 (22 %) |
|
| 18 |
+
|
| 19 |
+
**Beide Spalten sind verzerrt, in entgegengesetzte Richtungen.** Die strenge
|
| 20 |
+
Wertung bestraft Antworten, die nur nicht ins Token-Budget passten. Die zweite
|
| 21 |
+
Spalte wirft genau diese Fälle weg — und das sind überwiegend die schweren
|
| 22 |
+
Aufgaben, also schönt sie nach oben. Die belastbare Zahl liegt dazwischen und
|
| 23 |
+
ist noch nicht gemessen.
|
| 24 |
+
|
| 25 |
+
## Fehler 1: das Token-Budget — offen
|
| 26 |
+
|
| 27 |
+
Der erste Durchgang lief mit **1.600 Token** Budget je Aufgabe. Das war die
|
| 28 |
+
denkbar schlechteste Wahl: knapp über dem 90.-Perzentil des tatsächlichen
|
| 29 |
+
Bedarfs.
|
| 30 |
+
|
| 31 |
+
Gemessener Bedarf der Antworten, die durchkamen:
|
| 32 |
+
|
| 33 |
+
| Stufe | Median | 80 % | größte abgeschlossene | abgeschnitten |
|
| 34 |
+
|---|---|---|---|---|
|
| 35 |
+
| L1 | 433 | 518 | 536 | 1 von 8 |
|
| 36 |
+
| L2 | 570 | 837 | 1.578 | 1 von 33 |
|
| 37 |
+
| L3 | 588 | 830 | 1.323 | 5 von 36 |
|
| 38 |
+
| L4 | 862 | 1.076 | 1.467 | 10 von 35 |
|
| 39 |
+
| **L5** | **980** | **1.235** | **1.575** | **17 von 38** |
|
| 40 |
+
|
| 41 |
+
Bei Stufe 5 wurde **fast die Hälfte** mitten im Rechenweg gekappt. Keine dieser
|
| 42 |
+
Antworten enthielt ein Ergebnis — der Abbruch ist echt, kein Extraktionsfehler.
|
| 43 |
+
|
| 44 |
+
Zum Vergleich: im Produktivbetrieb läuft dasselbe Modell mit **97.000 Token**
|
| 45 |
+
je Sitzung. Der Benchmark hat es also um den **Faktor 60** beschnitten und misst
|
| 46 |
+
damit teilweise das Budget statt das Modell.
|
| 47 |
+
|
| 48 |
+
**Behebung:** Nachmessung ausschließlich der abgeschnittenen Aufgaben mit
|
| 49 |
+
8.000 Token (`bench_nachmessen.py`). Kostet rund 25 Minuten je Modell statt
|
| 50 |
+
drei Stunden für eine Neumessung. Steht aus.
|
| 51 |
+
|
| 52 |
+
## Fehler 2: zu strenger Antwortvergleich — behoben
|
| 53 |
+
|
| 54 |
+
Von acht abgeschlossenen, aber als falsch gewerteten Antworten war **genau
|
| 55 |
+
eine wirklich falsch**. Die übrigen sieben waren Schreibvarianten:
|
| 56 |
+
|
| 57 |
+
| gegeben | erwartet | tatsächlich |
|
| 58 |
+
|---|---|---|
|
| 59 |
+
| `\frac{4}{3}` | `\frac43` | identisch, Kurzform ohne Klammern |
|
| 60 |
+
| `\frac{3}{4}` | `\frac 34` | identisch, Leerzeichen statt Klammern |
|
| 61 |
+
| `0,35625` | `.35625` | identisch, Dezimalkomma und führende Null |
|
| 62 |
+
| `5` | `x=5` | richtig gerechnet, ohne Zuweisungspräfix |
|
| 63 |
+
| `[-2, 7]` | `x \in [-2,7]` | richtig, ohne Mengenzeichen |
|
| 64 |
+
| `B` | `\text{(B)}` | richtig, Multiple-Choice-Buchstabe |
|
| 65 |
+
| `\frac{16}{49}` | `16/49` | identisch, andere Bruchschreibweise |
|
| 66 |
+
| `-0.09` | `\frac{9}{100}` | **echter Fehler** (Vorzeichen) |
|
| 67 |
+
|
| 68 |
+
Der Normalisierer fängt diese Formen jetzt ab. Wirkung ohne jede erneute
|
| 69 |
+
Modellrechnung — die Antworten lagen bereits vor:
|
| 70 |
+
|
| 71 |
+
| Modell | vorher | nachher |
|
| 72 |
+
|---|---|---|
|
| 73 |
+
| Qwen3.6-27B Q6_K | 70,7 % | **76,0 %** |
|
| 74 |
+
| Qwen3.8-27B Q6_K | 72,7 % | **76,7 %** |
|
| 75 |
+
| Qwen3.8-27B Q8_0 | 72,0 % | **76,0 %** |
|
| 76 |
+
|
| 77 |
+
**Vier bis fünf Prozentpunkte, die reine LaTeX-Konvention waren.** Der ältere
|
| 78 |
+
Selbsttest hatte diese Fälle nicht abgedeckt; er prüft sie jetzt (39 Prüfungen,
|
| 79 |
+
darunter jeder oben genannte Fall).
|
| 80 |
+
|
| 81 |
+
Das ist der Grund, warum `selftest_mathe.py` mitgeliefert wird: Bei
|
| 82 |
+
Mathematik-Benchmarks steckt der Fehler fast nie im Modell, sondern im
|
| 83 |
+
Vergleich.
|
| 84 |
+
|
| 85 |
+
## Fehler 3: Trainingskontamination — nicht geprüft
|
| 86 |
+
|
| 87 |
+
MATH-500 liegt seit Jahren öffentlich auf HuggingFace. Ob die getesteten
|
| 88 |
+
Modelle die Aufgaben im Training gesehen haben, ist **nicht untersucht**.
|
| 89 |
+
|
| 90 |
+
Für den Vergleich der Varianten untereinander ist das unerheblich —
|
| 91 |
+
Kontamination trifft alle sieben gleichermaßen. Für jeden Vergleich mit
|
| 92 |
+
fremden Modellen macht es die absoluten Zahlen wertlos.
|
| 93 |
+
|
| 94 |
+
**Geplante Prüfung:** Fortsetzungstest — dem Modell die ersten Wörter einer
|
| 95 |
+
Aufgabe vorlegen und sehen, ob es den Originaltext wörtlich vervollständigt.
|
| 96 |
+
Schlägt er an, gehört das als Warnung in die Modellkarte.
|
| 97 |
+
|
| 98 |
+
## Was die Zahlen deshalb bedeuten
|
| 99 |
+
|
| 100 |
+
**Belastbar:** Die sieben getesteten Varianten unterscheiden sich nicht. Alle
|
| 101 |
+
Konfidenzintervalle überlappen, in beiden Fächern (Code und Mathematik) und
|
| 102 |
+
über alle drei Auswertungsarten hinweg. Weder die neuere Generation noch die
|
| 103 |
+
höhere Quantisierung bringt einen messbaren Vorteil.
|
| 104 |
+
|
| 105 |
+
**Nicht belastbar:** Jeder absolute Wert und jeder Vergleich mit publizierten
|
| 106 |
+
MATH-500-Zahlen. Dort liegen Spitzenmodelle bei über 99 Prozent — allerdings
|
| 107 |
+
mit vollem Reasoning, das hier bewusst abgeschaltet war, und ohne
|
| 108 |
+
Budgetbeschränkung.
|
| 109 |
+
|
| 110 |
+
## Was noch aussteht
|
| 111 |
+
|
| 112 |
+
1. **Nachmessung** der abgeschnittenen Aufgaben mit 8.000 Token → schließt die
|
| 113 |
+
Lücke zwischen 76 und 98 Prozent
|
| 114 |
+
2. **Omega-Messung**: Qwen3.8-27B Q8_0 mit vollem Reasoning, Budget aus einer
|
| 115 |
+
vorgeschalteten Bedarfsmessung statt geraten, Vorgabe: keine Aufgabe bricht
|
| 116 |
+
ab. Erst diese Zahl ist mit Leaderboards vergleichbar.
|
| 117 |
+
3. **Kontaminationsprüfung** per Fortsetzungstest
|
| 118 |
+
|
| 119 |
+
## Mitgelieferte Werkzeuge
|
| 120 |
+
|
| 121 |
+
| Datei | Zweck |
|
| 122 |
+
|---|---|
|
| 123 |
+
| `bench_mathe.py` | Messlauf gegen MATH-500 / GSM8K |
|
| 124 |
+
| `selftest_mathe.py` | 39 Prüfungen des Vergleichs — **vor** jedem Lauf ausführen |
|
| 125 |
+
| `bench_nachmessen.py` | misst nur die abgeschnittenen Aufgaben nach |
|
| 126 |
+
| `neubewerten.py` | wertet gespeicherte Läufe mit korrigiertem Vergleich neu |
|
| 127 |
+
| `run_omega.sh` | zweistufige Reasoning-Messung mit gemessenem statt geratenem Budget |
|
| 128 |
+
|
| 129 |
+
Alle Rohdaten liegen unter `bench/` — je Aufgabe die gelieferte Antwort, die
|
| 130 |
+
erwartete, der Token-Verbrauch und der Abbruchgrund. Wer die Auswertung
|
| 131 |
+
anzweifelt, kann sie nachrechnen.
|