One streamed request, end to end
Number the hops. The router decides the pool and the server; the scheduler inside that server decides when the request starts.
- The team’s service calls the gateway, which checks the team, its allowance and
max_tokens. - The router picks the pool for the model, then a server in it.
- The server’s scheduler starts the request when there is room and runs it with the others.
- Tokens stream back through the router as they are written.
- At the end, usage is recorded for the team.
Diagram as text
Components: Team service (Client); Gateway (API gateway); Team allowance (Cache); Router (Load balancer); Scheduler on the server (Service); GPU (LLM); Usage per team (Analytics). Connections: Team service → Gateway (generate); Gateway → Team allowance (reserve); Gateway → Router (checked); Router → Scheduler on the server (pool, server); Scheduler on the server → GPU (when there is room); Scheduler on the server → Usage per team (at the end), asynchronous.
Read:Learn: High-level architectureLearn: Load balancing & traffic routing
Check yourself
Where does a request wait, and who decides it may start?
Show answerHide answer
In its server’s queue. The server’s scheduler decides, because only it knows how much memory is free at this step.