strands-decider:2b-fp16
3 TagsUpdated 2B params4096 contextEnglishApache-2.0by Strands Agents
Strands Decider v1 (2610): a LoRA and a pointer head on Qwen3.5-2B base. Each question is one row, every option scored at the end of its own line, calibrated per question type. Up to 255 options and 10 score levels, 4,096 tokens per row. Needs about 8 GB of memory (weights widened to fp32 at load). This tag computes in fp16 on NVIDIA GPUs: faster than strands-decider:2b, with at least 99.5 % of its decisions the same. On a CPU it runs, slowly; use strands-decider:2b there.
2b
ollaya run strands-decider:2b-fp16 --preset triage "I was charged twice for my subscription this month and want a refund."curl http://localhost:11435/api/decide \
-H "Content-Type: application/json" \
-d '{
"model": "strands-decider:2b-fp16",
"state": "I was charged twice for my subscription this month and want a refund.",
"questions": {
"department": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments, invoices and refunds",
"technical": "Bugs, errors and outages",
"account": "Login, profile and settings"
}
},
"refund": {
"type": "noul",
"instructions": "Is the customer asking for a refund?"
}
}
}'# Already using a TypeSafe SDK? Set TYPESAFE_BASE_URL=http://localhost:11435 instead.
import requests
response = requests.post(
"http://localhost:11435/api/decide",
json={
"model": "strands-decider:2b-fp16",
"state": "I was charged twice for my subscription this month and want a refund.",
"questions": {
"department": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments, invoices and refunds",
"technical": "Bugs, errors and outages",
"account": "Login, profile and settings"
}
},
"refund": {
"type": "noul",
"instructions": "Is the customer asking for a refund?"
}
}
},
)
answers = response.json()["answers"]
print(answers["department"]["choice"], answers["refund"]["noul"])const response = await fetch("http://localhost:11435/api/decide", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "strands-decider:2b-fp16",
state: "I was charged twice for my subscription this month and want a refund.",
questions: {
department: {
type: "choice",
instructions: "Which team should handle this?",
criteria: {
billing: "Payments, invoices and refunds",
technical: "Bugs, errors and outages",
account: "Login, profile and settings"
}
},
refund: {
type: "noul",
instructions: "Is the customer asking for a refund?"
}
}
}),
});
const { answers } = await response.json();
console.log(answers.department.choice, answers.refund.noul);Details
- graph5b373e9dfcfe · 11 MB
onnx · strands · 2B · fp16 - weights928acbf11878 · 4.5 GB
huggingface.co/Qwen/Qwen3.5-2B-Base/resolve/b1485b2…/model.safetensors-00001-of-00001.safetensors - weightsae1d0cd1ac3e · 202 MB
huggingface.co/StrandsAgents/strands-decider-2B-qwen3.5-v1-2610/resolve/216d1cc…/lora/adapter_model.safetensors - weightsace56742545b · 13 MB
huggingface.co/StrandsAgents/strands-decider-2B-qwen3.5-v1-2610/resolve/216d1cc…/head.safetensors - tokenizera2cdd2e10856 · 20 MB
huggingface.co/StrandsAgents/strands-decider-2B-qwen3.5-v1-2610/resolve/216d1cc…/tokenizer.json - decision23b3978d6e12 · 3 KB
{"engine": "onnx", "family": "strands", "encoder": "", "layout": "strands-pointer-v1", …} - calibration0e7d56a732ea · 255 B
{"temperature": [0.863, 1.834, 1.07]} - license104aa005bc92 · 11 KB
Strands Decider by Strands Agents (https://huggingface.co/StrandsAgents/strands-decider-2B-qwen3.5-v1-2610)
Every layer is checked against its sha256 when it is pulled. Weights and tokenizers download from the model author's Hugging Face repository at a pinned commit; Ollaya never re-hosts them.