FinRAG Trading — LoRA für Qwen3.6-27B

LoRA-Adapter, der Qwen3.6-27B zu einem disziplinierten Strategie-Analysten für Crypto, Aktien und FX macht: maschinenlesbare Spezifikation, vollständiges Kostenmodell, Kapazitätsgrenze und ein Falsifikationstest in jeder Antwort — und ein deutlich kürzerer Denkteil.

Was das hier nicht ist: keine Handelsempfehlung, kein Backtest, kein Wissens-Upgrade. Der Adapter ändert Verhalten, nicht Wissen. Zahlen, die das Modell nennt, sind Annahmen, sofern es sie nicht ausdrücklich mit einer Quelle belegt.

Verwendung

from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base = "Qwen/Qwen3.6-27B"
m = AutoModelForCausalLM.from_pretrained(base, dtype="bfloat16", device_map="auto")
m = PeftModel.from_pretrained(m, "REPO_ID")
tok = AutoTokenizer.from_pretrained(base)

Für vLLM den Adapter vorher in die Basis mischen (scripts/training/merge_lora_qwen36.py im Projekt-Repo). Der direkte Tensor-Merge ist nötig, weil AutoModelForCausalLM bei model_type: qwen3_5 nur den Sprachteil lädt — ein save_pretrained daraus verlöre die 333 Vision- und 15 MTP-Tensoren, und vLLM lädt das Repo dann nicht.

Serving: gemessen wurde mit --quantization fp8 (dynamisch, aus bf16). Das LoRA-Delta ist mit 0,49–0,59 % relativer Frobenius-Norm kleiner als der FP8-Quantisierungsfehler selbst — dass es trotzdem durchschlägt, liegt daran, dass das Delta eine gerichtete Änderung ist und das Quantisierungsrauschen ungerichtet. Der Nachweis ist die Messung oben, nicht die Norm. 4-Bit nicht verwenden — dabei geht das Delta unter, das ist in diesem Projekt für ein anderes Modell gemessen worden.

Training

Verfahren Rejection-Sampling-SFT (QLoRA, NF4)
Daten eigene Samples des Basismodells + GLM-5.2 als zweite Spur, beide durch denselben objektiven Verifier gefiltert
Ziele q,k,v,o_proj + gate,up,down_proj, r=32, α=64, dropout 0,05
Optimierung lr 1e-4 cosine, warmup 4 %, effektive Batchgröße 8, seq 2048
Hardware 1× RTX PRO 6000 (96 GB)

Der Denkteil im Trainingsziel ist nicht der des Basismodells (im Mittel 14.649 Zeichen), sondern ein kurzer, aus der jeweiligen Antwort abgeleiteter Prüfpfad: Datenlage → Leckage → Kosten → Kapazität → Falsifikation.

Bewertung

Gemessen mit eval_v3: 159 stratifizierte Fragen, davon 36 mit dokumentierter Grundwahrheit (24 Berichte mit gepflanztem Fehler, 12 unmögliche Daten/Signal-Paarungen). Der Grader ist programmatisch, kein Richter. Gepaarter exakter McNemar-Test gegen dasselbe Basismodell.

Ergebnis (159 Fragen, gepaarter exakter McNemar-Test gegen dasselbe Basismodell)

Kriterium Basis Finetune nur Basis nur FT p
cost_model_valid 64,2 % 91,9 % 8 42 <0,001
capacity_present 78,9 % 93,5 % 5 23 0,001
falsifiable 82,9 % 95,1 % 3 18 0,001
schema_complete 67,5 % 83,7 % 14 34 0,006
brevity 84,3 % 89,3 % 2 10 0,039
sources_or_marked 88,1 % 88,7 % 4 5 1,000
lookahead_guard 98,7 % 98,7 % 0 0
flaw_detected (Grundwahrheit) 83,3 % 100 % 0 4 0,125
infeasible_flag (Grundwahrheit) 100 % 100 % 0 0
proxy_unmarked (niedriger besser) 0 % 0 % 0 0

Kein Kriterium ist schlechter geworden. Bei Bonferroni-Korrektur über zehn Kriterien (α = 0,005) bleiben cost_model_valid, capacity_present und falsifiable klar signifikant; schema_complete liegt mit p = 0,006 knapp darüber, brevity hält der Korrektur nicht stand.

Länge: Antwort im Median 2.782 → 2.294 Zeichen (−18 %), Denkteil 14.226 → 11.762 (−17 %). Das Verhältnis Denken zu Antworten bleibt bei 5,1× — die angestrebte Denk-Effizienz ist ausgeblieben, obwohl das Trainingsziel einen Denkblock von im Median 580 Zeichen enthielt.

Grenzen

  • Der Grader prüft, ob ein Feld gefüllt und plausibel getippt ist, nicht ob die Zahl stimmt.
  • lookahead_guard ist musterbasiert und findet nur explizite Formen.
  • Die Trainingsdaten stammen überwiegend aus dem Modell selbst. Was es nicht weiß, lernt es hier nicht — die GLM-Spur mildert das, ersetzt aber kein Retrieval.
  • Kontamination gegen den Eval wurde gemessen (höchste 5-Gramm-Jaccard-Ähnlichkeit 0,598 bei Schwelle 0,65), nicht nur behauptet.
Downloads last month
16
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for dustin2050/finrag-qwen3.6-27b-trading-lora

Base model

Qwen/Qwen3.6-27B
Adapter
(343)
this model