Local Models
Java-Entwicklung mit lokalen AI-ModellenWie weit kommt man?
Why local?
Reasons to Run Models Locally
Cost Control
No provider charge per token.
Privacy
Keep code and context inside.
Independence
Reduce provider dependency.
Cost Schema: Local vs. Frontier
Prerequisites
Find the Smallest Model That Can Do the Job
Review the Generated Code
Engineer the Loop
Typical Required Components
Gemma
Qwen
Muse Glimmer
llama.cpp
vLLM
ONNX Runtime
Claude Code
Google ADK
Mastra
LangGraph
CPU and GPU Inference
870 EVO / 990 PRO SSDSwap · No Compute
You can serve a model larger than 1 TB from disk, but do not expect a response anytime soon.
7Local Inference Hardware
RTX PRO 4000
24 GB VRAM≈ €2,500 per GPUMac Studio
36-512 GB Unifiedfrom €2,999ASUS Ascent GX10
128 GB Unified Memory ≈ €4,850 per systemRTX PRO 6000 Blackwell
96 GB VRAM per GPU ≈ €17,700 eachModel Size by Deployment Class
Gemma 4 Family
2.3B effective
4.5B effective
3.8B active
ECore size, excluding large embedding lookup tables
AParameters selected by the router for each token
Memory Provisioning
Sizing Criteria
- Model Size
- Quantization
- KV Cache
- Context Size
- Operational Memory
Quantization Principle
Choosing a Quantization Level
Move down only when the model does not fit.
Video Compression Over Time
Prefill and Decoding without KV Cache
Prefill
Compute-BoundDecode
Recomputes the Entire Context- User Input
- Tool Response
- Thinking
KV Cache During Inference
Prefill
Builds the CacheDecode
Reuses the Cache- User Input
- Tool Response
- Thinking
Gemma 4 26B-A4B Memory Provisioning
Qwen 3.8 27B Memory Provisioning
Quality vs. Data Sovereignty
Frontier Models
Peak Quality
No Full Data SovereigntyThe Porsche Test
Do We Need Peak Capability for Every Trip?
Benchmark philosophy
Qualification Instead of Ranking
Full-Stack Capstone Task
Angular
- Feature component
- UI component
- SignalStore
- Unit test
Spring
- JPA entities
- Mapper
- Controller
- Database migration
Playwright
- End-to-end test
Benchmark Components
- Security
NVIDIA OpenShell
- Implementation
Pi coding agent
- Inference engine
llama.cpp
- Hardware
GX10
- Tracing
Langfuse
- Versioning
Git worktrees
Worker, Verifier and Reviewer
Worker
Implements the task
Edits the worktree
Validation
Builds · unit tests
Backend · Playwright
Reviewer
Does the patch meet
the requirements?
Done
Save result
Verifier
Explains failures
Benchmark Results
Spring Boot + Angular · Measured on ASUS GX10
| Model | Weights | Quantization | Time (h:mm) | Eff. Tokens/s | Validation | Review |
|---|---|---|---|---|---|---|
| Nemotron 3.5 Bolt 74B | 22.0 GB | IQ2 | 2:39 | 29.8 | 3/5 | 1/52 incomplete |
| Ternary Bonsai 2 27B | 5.9 GB | PTQ1_0 | 4:06 | 16.4* | 4/4 | 4/4 |
| GLM-5.3 Flash | 97.6 GB | IQ1_M | 1:28 | 13.4 | 5/5 | 5/5 |
| Muse Glimmer 30B | 15.9 GB | Q4_K_XL | 3:00 | 12.1 | 2/5 | 2/5 |
| Qwen3.8 27B | 17.6 GB | Q4_K_XL | 2:58 | 8.6 | 5/5 | 5/5 |
| Gemma 4 26B-A4B QAT | 14.2 GB | Q4_K_XL | 0:46 | 52.5 | 2/4 | 1/41 incomplete |
| Gemma 4 31B QAT | 17.3 GB | Q4_K_XL | 1:44 | 9.6 | 1/3 | 1/3 |
| DeepSeek V4 Flash | 86.9 GB | IQ1_M | 1:59 | 15.0 | 3/4 | 3/4 |
| Qwen3.6 27B | 17.6 GB | Q4_K_XL | 3:05 | 9.3 | 5/5 | 5/5 |
| Devstral Small 2 24B | 14.5 GB | Q4_K_XL | 5:23 | 9.3* | 1/2 | 1/2 |
| Qwen3-Coder 30B-A3B | 17.7 GB | Q4_K_XL | 0:34 | 36.9 | 0/5 | 0/5 |
47 runs · Medians · * Partial timing
25Tokens/s on Other Hardware
GX10 Measurement × Memory Bandwidth ÷ 273 GB/s
| Device | Memory | Bandwidth | Eff. Tokens/s |
|---|---|---|---|
| ASUS GX10 | 128 GB | 273 GB/s | — |
| NVIDIA DGX Spark | 128 GB | 273 GB/s | — |
| MacBook Pro M5 Max | 128 GB | 614 GB/s | — |
| Mac Studio M5 Ultra | 256 GB | 1,200 GB/s | — |
| GeForce RTX 5090 | 32 GB | 1,792 GB/s | — |
| RTX PRO 6000 Blackwell | 96 GB | 1,792 GB/s | — |
Blue = measured on GX10 · ≈ = bandwidth estimate
Estimates assume model weights, KV cache, and runtime buffers all fit in available GPU memory.
pi-kit
Questions?
Share Your Feedback
Once a model reliably handles the task, more speed is mainly a question of cost.
28