Skip to content
The Ratchet loop Four steps in a loop: the student answers first; the teacher answers when the student is unsure; the teacher's answers are recorded with their license; every night a new student is trained and released only through the gates. The loop turns one way: a bad release is rolled back. Student answers first Nano + your adapter Teacher if unsure Ultra, rented Recorded with its license teacher answers only Trained each night released through gates
Built on Nebius and NVIDIA open models

Rent intelligence today. Own it tomorrow.

Ratchet is an OpenAI-compatible gateway. A small student model answers first, the teacher answers when the student is unsure, and every night the student learns from the teacher's answers. You end up owning the LoRA adapter and its signed training lineage, learned only from teachers whose license allows it.
The big picture: every part of Ratchet and how they connectYour app sends OpenAI-style requests over HTTPS to Caddy and the gateway on a CPU VM. The gateway sends student calls to a Nebius Serverless Endpoint running vLLM with Nemotron 3 Nano 4B and your LoRA adapter, escalations and audits to the teacher Nemotron 3 Ultra on Token Factory, and student calls to the hosted Nano 30B fallback when the endpoint is off. Every request is written to the SQLite ledger. Night School, run by cron, reads the teacher answers, uploads train.jsonl to an Object Storage bucket, starts a Serverless Job on an L40S GPU that writes a new adapter to the bucket, and the endpoint loads it from the same bucket. Scout searches the web with Tavily.Your sideYour appany OpenAI SDKSearchTavilyScout's web searchGateway host · CPU VMCaddyHTTPS · edge guardGatewayOpenAI-compatible /v1 APIcascade · release gate · cost/ · /scout · /dashboardLedgerSQLite · examples with provenanceNight School (cron)python -m ratchet.live nightalso: gate tick · seal receiptsNebius Token Factory · per tokenTeacher · Nemotron 3 Ultraanswers escalations and auditsFallbackNano 30B, untunedwhile endpoint is offJudgeNemotron 3 Superfree-text evalNebius AI Cloud · per GPU-hourStudent · Serverless EndpointvLLM · Nano 4B + your LoRA adapterObject Storage bucket/data: night/ · adapters/Serverless Job · L40Strains a new adapter each nightHTTPSevery requestteacher answerstrain.jsonlwrites adapterhot-loads adapter

Swipe sideways to see the whole diagram.

The big picture. Your app calls the gateway like any OpenAI endpoint. The gateway asks the student first (blue) and escalates to the teacher on Token Factory (orange); every request is written to the ledger. Each night, Night School uploads the teacher's answers to the bucket, a Serverless Job trains a new adapter into the same bucket, and the endpoint loads it from there. While the GPU endpoint is off, the hosted Nano 30B answers student calls (dashed).

Student: Nano with the adapter you ownTeacher you rent per tokenHosted fallback (untuned)Ratchet and infrastructure

Three loops run at different speeds:

  • Every request (milliseconds to seconds): the student samples its answer three times. If the samples agree and the confidence score reaches the version’s threshold, the student’s answer is served. If not, the teacher answers. A few served answers are audited by the teacher.
  • Every few minutes: the release gate looks at the audits and moves a new version forward (shadow, then 10%, 50% and 100% of traffic) or rolls it back.
  • Every night: Night School trains a fresh adapter on the teacher’s answers only, tests it on a held-out golden set, and hands it to the release gate.

A ratchet turns only one way. Every night more of your traffic moves from the model you rent to the adapter you own, and the gates are the pawl that stops it from slipping back: a bad release is rolled back automatically.