06f20ae7522baae506d517ec2a7fb0795671cbe5
ThreadingHTTPServer fanned unbounded concurrent forwards into single-slot llama.cpp -> pile-up (client-disconnect never cancels upstream, so contention cascades into a hang). Add a BoundedSemaphore per local backend, slots from local-backends.json (qwen3-4b=1, bosch-dspark=32), in-system cap = slots*4 -> fast 503 backend_busy on saturation, ~90s bounded wait otherwise. Gates local backends only. Verified: 6 concurrent -> 4 served serially + 2 fast-503, no pile-up. Deployed on hossenfelder. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Description
Boltzmann LLM proxy with compression + classifier middleware
Languages
Python
96.5%
Shell
3.5%