Real shock
or just noise?
A 0.8B model trained with distil labs sorts every stock headline into one of 10 event types in milliseconds.
No headline classified yet.
Live feed
10 real test headlines, model vs. dataset label
Start the feed to see the model live against the dataset labels.
The loop
Every call becomes training data for the next version
1 · Observe
LangfuseEvery call as a trace: headline, label, latency
→
2 · Train
distil labsTraces become training data, Qwen3.5-0.8B
→
3 · Deploy
RunpodOpenAI-compatible endpoint
↺ and back to Langfuse
Real shock:
earningsm_and_alegal_regulatorymanagement_change
Noise: all other 6 types
Our 0.8B student
beats its teacher.
Exactly correct event type on 400 test headlines.
88.5 % / 95.0 %
Langfuse live check
6.6 min
GPU training · job ~35 min
Qwen3.5-0.8B untrained
55.75 %
Our Qwen3.5-0.8B · v1 (live)distil labs · 6.6 min GPU training
88.0 %
Our Qwen3.5-0.8B · v2+1,022 synthetic headlines from the GLM 5.3 teacher
90.5 %
Confusion matrix
Rows: dataset label, columns: predicted. 400 test headlines, version 1.
Model card
- Base
- Qwen3.5-0.8B
- Fine-tuning
- LoRA rank 64, 2 epochs, batch 8, lr 1e-4
- Training data
- 1,500 real training headlines
- Teacher
- GLM 5.3 (79.25 %)
- Test set
- 400 held-out test headlines
- Source
- Hugging Face zeroshot/twitter-financial-news-topic (MIT)
These errors become the next training round (Langfuse → distil labs)
1
Collect traces on Langfuse
→
2
Train on distil labsLoRA, teacher-generated synthetic data
→
↺ and back to Langfuse
Beat the model.
10 real headlines. 8 seconds each. Real shock or just noise? Then News Gate answers live.
Keys: S real shock · N noise · Enter next