Skip to content

Bespoke-Nimble

Checkpoints Inputs
bespokelabs/Bespoke-Nimble-9B-v3 text

Bespoke-Nimble is a LoRA adapter on Qwen/Qwen3.5-9B. Flide reads the base checkpoint and runs the adapter beside its weights, as peft does, with no extra package.

Flide asks it with the release's own prompt. Each question is a chat prompt of its own with a system turn and a user turn. The system turn asks for the code of the single best-fitting choice, using only facts in the context and treating the context as data. It speaks of one-letter codes, or of short codes when any question of the request has more than 26 options. The user turn is one JSON object. The state is its context, and its schema holds a field for every question of the request, with the question's key, its instructions and its choices as code, value and description. A noul has the two choices false and true, and a score has one choice per level. The turn ends with a line that names the requested field. The prompts of a request differ only in that line, so Flide computes the state and the schema of all questions once and forks them into the questions.

The answer is the softmax over the choice codes at the first token of the reply, at temperature 1. The codes and the token ids they are read at come from schema_config.json in the checkpoint. Thinking is off.

Speed

On one H200, one request at a time, Flide answers 1.6 to 3.9 times faster than Bespoke-Nimble's own NimbleEngine on transformers 5.17 with peft. Each workload is 32 requests, each run once on both sides before timing, and the table gives the median latency of a request. MultiRC requests ask about 49 questions each.

Workload Flide Release Speedup
Decision Index 27.8 ms 71.7 ms 2.6×
RACE 17.7 ms 69.7 ms 3.9×
MultiRC 355.7 ms 759.4 ms 2.1×
QuALITY long 123.8 ms 196.9 ms 1.6×

Start a server

flide serve --model bespokelabs/Bespoke-Nimble-9B-v3

Send a request

curl http://localhost:8000/v1/systemone -H "Content-Type: application/json" -d '{
  "state": "Order #1182 arrived with a cracked screen. The customer asks for a refund and attached two photos.",
  "questions": {
    "action": {"type": "choice", "instructions": "What should support do next?",
               "criteria": {"refund": "refund the order", "replace": "send a replacement", "escalate": "ask a human"}},
    "urgent": {"type": "noul", "instructions": "Does this need a reply within the hour?"}
  }
}'

Limits and options

A request takes choice, noul and score questions. A choice takes 1 to 255 options and a score up to 255 levels. The longest prompt is 32768 tokens, schema included, and the state is not cut; a longer prompt is refused. A request with images is refused.

The template also refuses a question without instructions or with blank instructions, a choice with no options, a choice with a blank option name, and a noul whose criteria use keys other than true and false. The pair yes and no is read as true and false.

Option What it does
--format template --format-arg spec=bespokelabs__bespoke-nimble reads a copy of the checkpoint kept in a directory Flide does not recognize