Components · AI pipeline

Multi-LoRA server

Serves many fine-tuned adapters on one base model in shared batches.

Lesson
Coming soon
Zone
ai
Place it
10 cr on the blank canvas, free inside a problem

At a glance

Did you know
Multi-LoRA serving runs one base model for many fine-tuned adapters, batching requests for different adapters together.
Rule of thumb
Cap adapters per batch; swapping adapters in and out of GPU memory costs time.
Watch out
Adapter swaps and too many adapters per batch slow everyone.

Its settings in ScaleMySystems

What you can change on it in the lab, and what each number does.

Concurrency (slots)
Calls it can work on at once (per instance when autoscaling). Needed slots ≈ calls per second × seconds each takes. Extra calls wait in the queue, then are rejected.
Queue capacity
Calls allowed to wait for a free slot. A bigger queue absorbs bursts but adds waiting time; 0 rejects straight away.
vCPU
CPU cores available. Needed ≈ calls per second × CPU per request ÷ 1000. Above about 90% busy it slows down and may crash.
CPU per request (ms)
CPU time each call burns. Part of what the component is; make the code cheaper to lower it.
Latency (p50) (ms)
Typical time one call takes here, before any calls it makes itself. Slots are held for this long.
Latency (p99) (ms)
The slowest 1% of calls. Callers must set their timeout above this or they cut off healthy calls.
Timeout to dependencies (ms)
How long it waits for each call it makes before giving up. Set it above the dependency’s p99 but low enough that a dead dependency does not hold every slot.
Error rate
Share of calls that fail on their own (bugs, declines, flaky tools). An agent that calls it on every step multiplies this.
Quota (req/min)
Calls allowed per minute (an API key or provider limit). Calls over it get 429s. Needed = calls per second × 60, with headroom.

Problems that start with it

  • Too many fine-tunes on one GPU One multi-LoRA server hosts 200 customer adapters on a shared base model. At 60 requests a second the shared batches overflow.
  • Translation with per-language adapters A translation product serves 40 language adapters from one multi-LoRA server with 24 slots.
  • Shadowing the new model doubles the load A fine-tuned candidate model is deployed as an adapter on the production GPU pool, and a traffic mirror copies 100% of live requests to it to compare answers. Production is 60 requests a second on a pool that serves about 80.

Full lesson coming soon

Lessons are being added one component at a time: how it works, its settings, a live exercise to break and fix it, interview questions and a short check. See the Circuit breaker lesson for what one looks like.