cagataydev's picture
DEPLOY: upload playground app
9bf7d58 verified
Raw History Blame Contribute Delete
22.1 kB
{
"_about": "One example per ability of the strands decider (sources: the strands-decider README and docs/vision.md). `measured` blocks were recorded through app.answer() on the stated model and date -- never typed by hand.",
"families": [
{
"id": "pick",
"label": "Pick",
"blurb": "choice: one of N options, with probabilities"
},
{
"id": "rate",
"label": "Rate",
"blurb": "score: an ordered rubric, read as an expected value"
},
{
"id": "yesno",
"label": "Yes-No",
"blurb": "noul: P(true)"
},
{
"id": "agentic",
"label": "Agentic",
"blurb": "routing, tool checks, guardrails, rules"
},
{
"id": "vision",
"label": "Vision",
"blurb": "over pixels · Qwen3.5 models only"
},
{
"id": "code",
"label": "Code",
"blurb": "yes/no over a function"
}
],
"examples": [
{
"id": "triage-choice",
"family": "pick",
"title": "triage choice",
"golden": true,
"shows": "Route a support message to the team that should own it.",
"teaches": "A choice answer is a distribution, not a label: billing wins, 23% of the mass sits elsewhere, and the confidence (0.659) is what you act on.",
"state": "Help! My payouts have been failing for 3 days!",
"questions": [
{
"type": "choice",
"instructions": "Which team should handle this?",
"options": [
"billing",
"sales",
"retail"
]
}
],
"expected_shape": "choice -> billing (confidence ~0.659); billing ~0.773, sales ~0.121, retail ~0.106 (README, cpu)",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"choice_0"
],
"answers": {
"choice_0": {
"type": "choice",
"display": "billing",
"value": "billing",
"probs": {
"billing": 0.7728,
"sales": 0.1213,
"retail": 0.106
},
"confidence": 0.6591,
"vote": "billing"
}
},
"input_tokens": 68,
"latency_ms": 329.141,
"cold": true
}
},
{
"id": "urgency-noul",
"family": "yesno",
"title": "urgency yes/no",
"golden": true,
"shows": "Is this message urgent?",
"teaches": "noul returns only P(true): with two outcomes the probability already is the uncertainty.",
"state": "Help! My payouts have been failing for 3 days!",
"questions": [
{
"type": "noul",
"instructions": "Does this convey urgency?",
"options": []
}
],
"expected_shape": "noul ~0.858 (README, cpu)",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.8581",
"value": 0.8581,
"probs": {
"true": 0.8581,
"false": 0.14190000000000003
},
"confidence": null,
"vote": "true"
}
},
"input_tokens": 86,
"latency_ms": 262.437,
"cold": false
}
},
{
"id": "frustration-score",
"family": "rate",
"title": "frustration score",
"golden": true,
"shows": "Rate the writer on calm < frustrated < depressed.",
"teaches": "A score is the expected value over the ordered levels you type, so the levels are the scale.",
"state": "Help! My payouts have been failing for 3 days!",
"questions": [
{
"type": "score",
"instructions": "How frustrated is the writer?",
"options": [
"calm",
"frustrated",
"depressed"
]
}
],
"expected_shape": "score ~1.03 (confidence ~0.509); calm ~0.196, frustrated ~0.574, depressed ~0.230 (README, cpu)",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"score_0"
],
"answers": {
"score_0": {
"type": "score",
"display": "1.0345",
"value": 1.0345,
"probs": {
"calm": 0.1958,
"frustrated": 0.5738,
"depressed": 0.2303
},
"confidence": 0.5091,
"legend": {
"0": "calm",
"1": "frustrated",
"2": "depressed"
},
"vote": "frustrated"
}
},
"input_tokens": 84,
"latency_ms": 256.475,
"cold": false
}
},
{
"id": "multi-question",
"family": "pick",
"title": "three questions, one read",
"shows": "All three questions on one state, in one request.",
"teaches": "The state is encoded once, so extra questions about the same text are nearly free.",
"state": "Help! My payouts have been failing for 3 days!",
"questions": [
{
"type": "noul",
"instructions": "Does this convey urgency?",
"options": []
},
{
"type": "choice",
"instructions": "Which team should handle this?",
"options": [
"billing",
"sales",
"retail"
]
},
{
"type": "score",
"instructions": "How frustrated is the writer?",
"options": [
"calm",
"frustrated",
"depressed"
]
}
],
"expected_shape": "noul ~0.858 · choice billing (~0.659) · score ~1.03 -- the same numbers as the three single-question examples",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0",
"choice_0",
"score_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.8581",
"value": 0.8581,
"probs": {
"true": 0.8581,
"false": 0.14190000000000003
},
"confidence": null,
"vote": "true"
},
"choice_0": {
"type": "choice",
"display": "billing",
"value": "billing",
"probs": {
"billing": 0.7728,
"sales": 0.1213,
"retail": 0.106
},
"confidence": 0.6591,
"vote": "billing"
},
"score_0": {
"type": "score",
"display": "1.0345",
"value": 1.0345,
"probs": {
"calm": 0.1958,
"frustrated": 0.5738,
"depressed": 0.2303
},
"confidence": 0.5091,
"legend": {
"0": "calm",
"1": "frustrated",
"2": "depressed"
},
"vote": "frustrated"
}
},
"input_tokens": 196,
"latency_ms": 604.615,
"cold": false
}
},
{
"id": "model-routing",
"family": "agentic",
"title": "model routing",
"shows": "Pick the LLM for a task: small and fast, or large and careful.",
"teaches": "Options come from the request, not the weights: rename them to your own tiers.",
"state": "User request: \"Draft a 3-page legal memo comparing the indemnification clauses in these two vendor contracts and flag any asymmetric liability caps.\"",
"questions": [
{
"type": "choice",
"instructions": "Which model should handle this request?",
"options": [
"small fast model",
"large careful model"
]
}
],
"expected_shape": "choice -> one of the two tiers, with P(each) and a confidence",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"choice_0"
],
"answers": {
"choice_0": {
"type": "choice",
"display": "large careful model",
"value": "large careful model",
"probs": {
"small fast model": 0.0925,
"large careful model": 0.9075
},
"confidence": 0.8149,
"vote": "large careful model"
}
},
"input_tokens": 85,
"latency_ms": 239.644,
"cold": false
}
},
{
"id": "argument-check",
"family": "agentic",
"title": "argument check",
"shows": "Verify a tool call's arguments before it runs.",
"teaches": "JSON goes in as state; gate the call on P(true) with your own threshold.",
"state": "Tool: send_email(to, subject, body)\nCall: {\"to\": \"\", \"subject\": \"Q3 invoice\", \"body\": \"Hi, attached is the Q3 invoice. Best, Sam\"}",
"questions": [
{
"type": "noul",
"instructions": "Are the arguments complete and ready to execute?",
"options": []
}
],
"expected_shape": "noul P(true) -- low, since `to` is empty",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.1268",
"value": 0.1268,
"probs": {
"true": 0.1268,
"false": 0.8732
},
"confidence": null,
"vote": "false"
}
},
"input_tokens": 120,
"latency_ms": 277.906,
"cold": false
}
},
{
"id": "grounding-guardrail",
"family": "agentic",
"title": "grounding check",
"shows": "Is a claim supported by the passage it cites?",
"teaches": "With evidence and claim in one state, noul is a hallucination detector in one pass.",
"state": "Passage: The clinic opens at 8:00 on weekdays and 9:00 on Saturdays. It is closed on Sundays and public holidays.\nClaim: The clinic is open on Sundays from 9:00.",
"questions": [
{
"type": "noul",
"instructions": "Is the claim supported by the passage?",
"options": []
}
],
"expected_shape": "noul P(true) -- low: the passage says closed on Sundays",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.0423",
"value": 0.0423,
"probs": {
"true": 0.0423,
"false": 0.9577
},
"confidence": null,
"vote": "false"
}
},
"input_tokens": 125,
"latency_ms": 285.565,
"cold": false
}
},
{
"id": "rule-application",
"family": "agentic",
"title": "apply a policy",
"shows": "A written policy plus a case: which outcome does the policy dictate?",
"teaches": "Rules written in plain words apply at request time, nothing to retrain.",
"state": "Policy: Refunds are approved automatically within 14 days of purchase. Between 15 and 30 days a refund needs a manager's approval. After 30 days refunds are denied unless the item arrived defective.\nCase: Purchased 22 days ago, item works, customer changed their mind.",
"questions": [
{
"type": "choice",
"instructions": "What does the policy say should happen?",
"options": [
"approve automatically",
"needs manager approval",
"deny"
]
}
],
"expected_shape": "choice -> needs manager approval (22 days falls in the 15-30 band)",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"choice_0"
],
"answers": {
"choice_0": {
"type": "choice",
"display": "needs manager approval",
"value": "needs manager approval",
"probs": {
"approve automatically": 0.0292,
"needs manager approval": 0.9456,
"deny": 0.0252
},
"confidence": 0.9184,
"vote": "needs manager approval"
}
},
"input_tokens": 126,
"latency_ms": 288.074,
"cold": false
}
},
{
"id": "language-id",
"family": "pick",
"title": "language id",
"shows": "Which language is 'sihamba ngokushesha'?",
"teaches": "Options can be anything nameable; a label set of languages works like a label set of teams.",
"state": "sihamba ngokushesha",
"questions": [
{
"type": "choice",
"instructions": "What language is this phrase in?",
"options": [
"English",
"Zulu",
"Dutch"
]
}
],
"expected_shape": "choice -> Zulu",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"choice_0"
],
"answers": {
"choice_0": {
"type": "choice",
"display": "Zulu",
"value": "Zulu",
"probs": {
"English": 0.0444,
"Zulu": 0.9112,
"Dutch": 0.0444
},
"confidence": 0.8668,
"vote": "Zulu"
}
},
"input_tokens": 66,
"latency_ms": 244.617,
"cold": false
}
},
{
"id": "judge-score",
"family": "rate",
"title": "judge an answer",
"shows": "Score a model's answer on a rubric from 0 to 4.",
"teaches": "An ordered rubric makes the decider a cheap judge: the expected value is the grade.",
"state": "Question: What is the capital of Australia?\nModel answer: The capital of Australia is Sydney, its largest city.\nRubric: 4 = correct and complete, 3 = correct with a minor flaw, 2 = partly correct, 1 = mostly wrong, 0 = wrong or no answer.",
"questions": [
{
"type": "score",
"instructions": "Grade the model answer against the rubric.",
"options": [
"0",
"1",
"2",
"3",
"4"
]
}
],
"expected_shape": "score near the low end (Canberra is the capital)",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"score_0"
],
"answers": {
"score_0": {
"type": "score",
"display": "2.3892",
"value": 2.3892,
"probs": {
"0": 0.1218,
"1": 0.156,
"2": 0.1965,
"3": 0.2626,
"4": 0.2631
},
"confidence": 0.3895,
"legend": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4"
},
"vote": "4"
}
},
"input_tokens": 158,
"latency_ms": 330.912,
"cold": false
}
},
{
"id": "signature-signed",
"family": "vision",
"title": "signature: filled",
"vision_only": true,
"image": "form_signed.png",
"shows": "A release form whose signature block is signed and dated.",
"teaches": "The image enters the state as vision tokens; the readout and confidence are the text model's.",
"state": "",
"questions": [
{
"type": "noul",
"instructions": "Is the signature block filled in?",
"options": []
}
],
"expected_shape": "noul P(true) -- higher than on the empty form",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.6868",
"value": 0.6868,
"probs": {
"true": 0.6868,
"false": 0.31320000000000003
},
"confidence": null,
"vote": "true"
}
},
"input_tokens": 232,
"latency_ms": 1160.211,
"cold": true
}
},
{
"id": "signature-empty",
"family": "vision",
"title": "signature: empty",
"vision_only": true,
"image": "form_unsigned.png",
"shows": "The same form, signature block empty.",
"teaches": "The gap between the two P(true) values is what the model reads from the pixels.",
"state": "",
"questions": [
{
"type": "noul",
"instructions": "Is the signature block filled in?",
"options": []
}
],
"expected_shape": "noul P(true) -- lower than on the signed form",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.1344",
"value": 0.1344,
"probs": {
"true": 0.1344,
"false": 0.8656
},
"confidence": null,
"vote": "false"
}
},
"input_tokens": 232,
"latency_ms": 1057.52,
"cold": false
}
},
{
"id": "shape-choice",
"family": "vision",
"title": "which shape",
"vision_only": true,
"image": "shapes.png",
"shows": "One large shape is drawn; pick which.",
"teaches": "choice over images works like choice over text: the option tokens follow the image.",
"state": "",
"questions": [
{
"type": "choice",
"instructions": "Which shape is drawn in the image?",
"options": [
"circle",
"triangle",
"square"
]
}
],
"expected_shape": "choice -> triangle",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"choice_0"
],
"answers": {
"choice_0": {
"type": "choice",
"display": "triangle",
"value": "triangle",
"probs": {
"circle": 0.0119,
"triangle": 0.9766,
"square": 0.0115
},
"confidence": 0.9649,
"vote": "triangle"
}
},
"input_tokens": 256,
"latency_ms": 1128.372,
"cold": false
}
},
{
"id": "empty-list-code",
"family": "code",
"title": "empty list?",
"shows": "Does this Python function handle the empty list?",
"teaches": "Code is state; one forward pass answers a property of the function.",
"state": "def average(xs):\n return sum(xs) / len(xs)",
"questions": [
{
"type": "noul",
"instructions": "Does this function handle the empty list?",
"options": []
}
],
"expected_shape": "noul P(true) -- low: len([]) == 0 divides by zero",
"measured": {
"label": "measured on cpu, strands-decider-2B-qwen3.5-v1-2610, 2026-10-10 02:20Z",
"model": "strands-decider-2B-qwen3.5-v1-2610",
"device": "cpu",
"torch": "2.14.1",
"question_ids": [
"noul_0"
],
"answers": {
"noul_0": {
"type": "noul",
"display": "0.2203",
"value": 0.2203,
"probs": {
"true": 0.2203,
"false": 0.7797000000000001
},
"confidence": null,
"vote": "false"
}
},
"input_tokens": 91,
"latency_ms": 359.318,
"cold": false
}
}
]
}