DavidGadyan

AI Engineering

Microsoft Decision-1: What a Decision Model Is and When to Use It

By David Gadyan · Published · 14 min read

A Microsoft tile, a Microsoft Foundry tile and a tile showing a choice answer with a probability per option, billing 0.95, on a dark grid with the title "Microsoft Decision-1: a model that answers with a probability, not a paragraph"

Microsoft announced Decision-1 on 9 October 2026: a model post-trained from Qwen3.5-9B that does not generate text. You give it a text and a fixed set of options and it returns a calibrated probability for each option, in one pass, at $0.042 per million input tokens with free output. This post explains the difference from a language model, the three question types, what Microsoft claims and what is verified, the use cases where it replaces an LLM call, where it sits in an agent loop, what it costs at scale and its limits.

Most calls inside an AI application are not requests for prose. They are decisions: which queue does this ticket go to, is this tool call safe to run, does this generated answer meet the rubric, which of four actions comes next. Teams have been making those decisions with a language model and a regular expression on its output, paying flagship prices for a yes or a no.

Microsoft Decision-1, announced on 9 October 2026, is Microsoft's answer to that waste: a model that scores a fixed set of options and returns a probability for each, without generating any text. This post explains what that means, how it differs from a large language model, what Microsoft claims and what is verified, and the use cases where it belongs. It is the companion to Which LLM should you use?, where Decision-1 appears as one of nine model families, and it reuses the agent and evaluation patterns from my Azure document-intelligence project.

The short answer

Decision-1 is a decision model, not a chatbot. Give it a text (the state) and a set of questions with fixed answers, and it returns a calibrated probability per answer in one pass: yes/no, one of several choices, or a position on an ordered scale. It is post-trained from Qwen3.5-9B, takes up to 32,768 tokens of text, costs $0.042 per million input tokens with free output, and runs in Microsoft Foundry and on OpenRouter. Use it for routing, classification, prioritisation, agent gates and grading. Use a language model when the answer has to be written.

FactValue, as published by Microsoft
Announced9 October 2026, Microsoft Command Line blog; generally available in Microsoft Foundry
Base modelQwen3.5-9B, post-trained for single-pass decision scoring; Microsoft says it will rebase on other models, including MAI and OpenAI
What it returnsA calibrated probability score for every supplied answer option; no text, no rationale
Question formatsYes/no, multiple-choice, rating, classification and rubric-based questions
InputUp to 32K tokens of text; no image, audio or video
Price$0.042 per million input tokens; output tokens free
WhereMicrosoft Foundry (sold directly by Azure, billed through the Azure subscription) and OpenRouter
WeightsNot distributed

What is the difference between a decision model and an LLM?

A language model generates an answer token by token; a decision model evaluates options you supply and scores them. The difference is the contract, not the intelligence. With an LLM you write "analyse this complaint and say what we should do", receive a paragraph, and parse it, hoping the format holds. With a decision model you send the complaint plus the options "refund, replace the order, escalate, do nothing", and receive a probability for each. Figure 1 shows the two flows on the same input.

A language model and a decision model on the same complaint A language model Prompt "Analyse this customer complaint and say what we should do." Generates text token by token hundreds of output tokens, billed seconds of latency at the flagship tier Free-text answer "The customer is unhappy because…" you parse it; the format can drift A decision model State and fixed options the same complaint, plus refund · replace · escalate · nothing Scores every option in one pass no output tokens, no rationale a single forward pass of a 9B model A probability per option 0.15 · 0.65 · 0.18 · 0.02 (illustrative) threshold it, or escalate to a person Same input, different contract: text you have to parse, or a calibrated probability you can threshold. Decision-1 answers yes/no, multiple-choice and rating questions over up to 32K input tokens (Microsoft Learn, 6 Nov 2026).
Figure 1. The same complaint through a language model and through a decision model. The LLM returns text you must parse; Decision-1 returns a probability per option you can threshold. The probabilities in the figure are illustrative, not measured.
AspectLarge language modelDecision-1
InputA prompt, free text, optionally imagesA text state plus questions with fixed options
OutputGenerated text, or JSON through structured outputsA probability per option; a selected option for choice questions
ExplanationCan write a rationaleNone by design
LatencySeconds at the flagship tier; output length drives itMilliseconds: one forward pass, no output tokens (Microsoft reports a median about 35 times lower than GPT-6 Sol)
Cost$0.20 to $10 per million input tokens plus output$0.042 per million input tokens, output free
CalibrationA "confidence: 0.8" in generated text is a guessThe probability is part of the API; Microsoft's target is that a 90 percent prediction is right about nine times in ten on representative cases
Best forWriting, summarising, extracting, planning, codingClassifying, routing, prioritising, verifying, grading
Failure modeHallucinated content, format driftMis-calibration on inputs unlike the benchmark; abstention or refusal available

How does the Decision-1 API work?

The request has three parts: the text to score, the questions, and the deployment name. Each question has a type, instructions and the allowed answers. Microsoft Learn documents three types in the Foundry Decisions API, and the Decision-1 catalogue entry lists the same shapes under different names: yes/no, multiple-choice and rating.

Question typeAsk it toMain result
Predicate (yes/no)Check whether a condition is true: "Does the customer ask for a refund?"A probability from 0 to 1 that the condition is true
Choice (multiple-choice)Select one option without an order: a department, a content categoryThe chosen value, a probability per option, and a separate confidence
Score (rating)Rate an input against ordered levels: issue severity, answer qualityA probability per level and the probability-weighted average of the level indices

This is the shape of a choice question and its answer in the Foundry Decisions API, as documented by Microsoft Learn on 21 October 2026. The values are illustrative, like Microsoft's own example.

{
  "model": "YOUR-DEPLOYMENT-NAME",
  "input": "I was charged twice for my order.",
  "questions": [
    {
      "type": "choice",
      "name": "department",
      "instructions": "Which department should handle this complaint?",
      "choices": [
        { "value": "billing", "description": "Payments and refunds." },
        { "value": "technical", "description": "Product problems." },
        { "value": "shipping", "description": "Delivery and tracking." },
        { "value": "other", "description": "All other requests." }
      ]
    }
  ]
}
{
  "type": "choice",
  "name": "department",
  "choice": "billing",
  "probabilities": [
    { "value": "billing", "probability": 0.95 },
    { "value": "technical", "probability": 0.02 },
    { "value": "shipping", "probability": 0.01 },
    { "value": "other", "probability": 0.02 }
  ],
  "confidence": 0.93
}

Four rules from the documentation that save a week of debugging:

  1. Give every question a unique name. The answers array comes back in the same order, and the name is how you match them.
  2. Put independent questions in one request. Several questions about the same text are one call; a question that depends on an earlier answer is a second call.
  3. Include a fallback option such as "other" or "cannot tell" when the categories do not cover every input, and treat a refusal as different from a low probability.
  4. Choose each threshold on labelled examples from your own application, based on the cost of a false positive and a false negative in that scenario.

The Microsoft Learn how-to for the Decisions API uses the gpt-6-luna model and the /openai/v1/decisions endpoint; Decision-1 is deployed from the Foundry catalogue as its own model with the same three question types. Check the catalogue entry for the exact endpoint of your deployment.

What does Microsoft claim, and what is independently verified?

Everything below comes from Microsoft's announcement and its Learn pages. None of it had been reproduced by an independent evaluation on 6 November 2026, and third-party write-ups note that the Foundry catalogue describes the benchmark methodology without publishing figures. Read the table as the vendor's claims.

ClaimMicrosoft's figureStatus
Median latencyAbout 35 times lower than GPT-6 Sol; 2.5 times lower than the runner-up, H2O-Lightning-4B v1.1Vendor measurement through Foundry
AccuracyHighest in a 36-benchmark comparison spanning nearly 150,000 questionsVendor measurement; the benchmark list is not published with figures
RobustnessChanges its decision on 1.3 percent of perturbations on average; zero flips when option descriptions are paraphrasedVendor measurement
Safety testing5,250 requests across 11 benchmarksVendor measurement
CalibrationThe probability is part of the API, with the target that a 90 percent prediction is right about nine times in tenDesign goal; no calibration figure published
Xbox ResearchCompetitive on quality with GPT-6 Sol while running over 14 times faster and 200 times cheaperInternal Microsoft use case
CopilotCompetitive with GPT-5.6 Luna and 100 times fasterInternal Microsoft use case
Microsoft Discovery46 times more consistent than the LLM-based score at three times the speedInternal Microsoft use case
Price$0.042 per million input tokens, output freePublished

The honest reading: the architecture argument is sound and the price is real, and the quality numbers are what you should measure yourself on a few hundred labelled examples before trusting a threshold.

When should you use Decision-1 instead of an LLM?

Ask one question: can you list every acceptable answer before the call? If yes, and you do not need a written explanation, a decision model fits. If the answer has to be written, summarised or explained, it does not.

ProblemLanguage modelDecision-1
Write a customer emailExcellentNot suitable
Explain a financial reportExcellentNot suitable
Generate Python codeExcellentNot suitable
Extract fields into your own JSON schemaExcellent, with structured outputsNot suitable
Classify customer sentimentGoodExcellent fit
Route a request to the right agent or departmentGoodExcellent fit
Prioritise support ticketsGoodExcellent fit
Select the next action from a fixed listGoodExcellent fit
Grade an AI-generated answer against a rubricGood, with a rationaleExcellent fit for the score
Check whether a tool call is within policyGood, slowExcellent fit
Label a dataset with a fixed taxonomyGood, expensive at volumeExcellent fit
Content filtering and safety screeningGoodExcellent fit

The architectural takeaway is the same one that runs through the LLM comparison: an agent might make thirty decisions during one run, and most of them do not need a reasoning model. A lightweight decision model handles the gates and the checks; the powerful model handles the planning and the writing.

Where does a decision model sit in a real system?

Figure 2 shows the three places I put it: support triage, an agent loop, and an evaluation pipeline. Tap a layer to read what happens there.

Every ticket is scored once: is it urgent, which department, how frustrated is the customer. A language model only writes the reply, and only for the tickets that need one.

Typical use: Help desks, shared inboxes, form submissions and any queue where thousands of items a day need the same few labels.

Tap a layer to read what that technology does in this stack.

Support triage. Every ticket is scored once: is it urgent, which department, how frustrated is the customer. A language model only writes the reply, and only for the tickets that need one. Typical use: Help desks, shared inboxes, form submissions and any queue where thousands of items a day need the same few labels.
LayerTechnologyWhat it does
IncomingEmail, chat, web formThe text of the ticket is the state the model scores; the customer record can be appended as context.
Decision modelMicrosoft Decision-1Three questions in one call: urgent? (yes/no), department (choice), frustration (score). Each answer is a probability per option.
RoutingQueue per department, SLA timersThresholds you chose on labelled tickets decide the queue; everything below them goes to a person.
Reply draftingGPT-6.1 Terra, Claude Sonnet 5.5A mid-tier language model drafts the answer with the retrieved policy; this is the only step that generates text.
Quality gateMicrosoft Decision-1A rubric question grades the draft: grounded in the policy? polite? complete? Low scores go back or to a human.
PeopleAgent reviewHumans see the uncertain cases and the samples you audit; their labels feed the next threshold review.
Agent loop. A reasoning model plans and writes; a decision model gates every tool call and checks every result. Thirty decisions per run cost cents instead of dollars. Typical use: Agents that touch real systems: CRM updates, payments, deployments, anything where a wrong tool call has a cost.
LayerTechnologyWhat it does
TaskUser goalThe task in natural language, plus the context the agent is allowed to see.
PlanningClaude Opus 5.5, GPT-6 SolThe reasoning model decides what to do next and drafts the tool call.
Pre-action gateMicrosoft Decision-1Is this call within policy? Is it a write? Does it need approval? Three yes/no questions, scored in one pass before anything runs.
ToolsMCP tools, APIs and databasesThe same tool registry serves the agent and the MCP clients; permissions are per role.
Post-action checkMicrosoft Decision-1Did the step succeed? Continue, retry or escalate: a choice question over the tool output.
StatePostgreSQL, RedisCheckpoints of the loop, so a run can pause for a human and resume.
ObservabilityOpenTelemetry traces, MLflowEvery decision, its probabilities and its cost end up in one trace per run.
Evaluation and labelling. Grading thousands of model outputs or labelling a dataset is a decision per item. A decision model does it consistently and cheaply; a language model judge is sampled for the written rationale. Typical use: LLM evaluation pipelines, data labelling, content moderation queues and regression tests before a model upgrade.
LayerTechnologyWhat it does
Items to gradeModel outputs or raw recordsAnswers from the candidate model, or unlabelled records waiting for a category.
RubricOrdered levels with criteriaEach level has observable criteria; adjacent levels must differ clearly, or the probabilities blur.
ScoringMicrosoft Decision-1A score question returns a probability per level and a weighted score; a choice question returns the label.
Sampled rationaleLLM judge, Human auditA small sample gets a written explanation from a language model and a human check, to catch drift in the rubric itself.
TrackingMLflow, DashboardsScores per model version, per prompt version and per document set, side by side.
FeedbackPrompt and threshold updatesRubric, thresholds and prompts change on evidence; the same set is rerun before every upgrade.
Figure 2. Three places for a decision model. In support triage it labels every ticket and grades the drafted reply; in an agent loop it gates every tool call and checks every result; in evaluation it scores thousands of outputs against a rubric while a language model judge is sampled for the written rationale.

The agent loop is the one that changes the economics most, so Figure 3 draws it in full.

Where a decision model sits in an agent loop User task goal and context Planner: reasoning LLM Claude Opus 5.5 or GPT-6 Sol Gate: Decision-1 in policy? needs approval? Tool call MCP tool, API, database yes Human approval pause, approve, resume no, or needs approval Check: Decision-1 succeeded? continue, retry or escalate result escalate continue or retry: back to the planner with the result Per step: one planner call at dollars per million tokens and two decision calls at $0.042 per million. Thirty steps a run: the gates and checks cost cents; the planner is the bill. State checkpoints in PostgreSQL or Redis let a run wait for a person and resume where it stopped. Every decision, its probabilities and its cost land in the same OpenTelemetry trace as the planner's calls.
Figure 3. An agent loop with a decision model at the gate and at the check. The planner, a reasoning model, drafts each step; Decision-1 decides whether the tool call is within policy and needs approval, then whether the result means continue, retry or escalate.

The pattern in words:

  1. Plan. A reasoning model (Claude Opus 5.5, GPT-6 Sol) reads the task and drafts the next tool call.
  2. Gate. Decision-1 answers three yes/no questions over the draft: within policy, a write action, needs human approval. Thresholds come from labelled examples; anything uncertain waits for a person.
  3. Act. The tool call runs through the same registry that serves MCP clients, with permissions per role.
  4. Check. Decision-1 scores the tool output with a choice question: continue, retry or escalate.
  5. Record. The state goes to a checkpoint in PostgreSQL or Redis so the run can pause and resume, and every decision with its probabilities and cost lands in the OpenTelemetry trace.

This is the same approval-gated agent I built for the Azure document-intelligence project; the difference is that the gates were language-model calls then, and a decision model makes them cheaper and more consistent.

What does it cost at scale?

Arithmetic at list price, not a quote. Three workloads, each with the assumptions stated, compared with the same tokens on GPT-6.1 Terra at $1 per million input tokens (output not counted, which flatters the LLM).

WorkloadAssumptionsDecision-1 per monthGPT-6.1 Terra input only, per month
Support triage10,000 tickets a day, 1,500 tokens each, 3 questions in one call450M tokens, about $19about $450 plus output
Agent gates and checks2,000 runs a day, 30 steps, 2 decisions a step, 2,000 tokens each7.2B tokens, about $302about $7,200 plus output
Evaluation100,000 answers graded a week, 3,000 tokens each1.2B tokens, about $50about $1,200 plus output

The ratio is the point: at the same token count the decision model costs about 4 percent of a mid-tier language model's input price, and it produces no output tokens at all. Latency moves the same way, from seconds to milliseconds, which is what makes thirty gates per agent run acceptable.

What are the limits?

  • No explanation. The model returns probabilities and nothing else. When a user or an auditor needs a rationale, add a language-model call for the sampled cases.
  • Text only, 32K tokens. No images, audio or video; long documents must be chunked or summarised first. For images, the Foundry Decisions API with gpt-6-luna offers the same question types.
  • Closed weights. No download, fine-tuning, quantisation or self-hosting. If you need that, the base model Qwen3.5-9B is open, and a classifier trained on your labels remains the classic option.
  • Vendor benchmarks only. Speed, accuracy and calibration figures are Microsoft's own as of 6 November 2026.
  • A moving base. Microsoft plans to rebase Decision-1 on other models; keep the labelled set and rerun it on every version, as you would for any model retirement.
  • Not for consequential decisions about people. The model card rules out sole reliance for credit, employment, housing, insurance, education, healthcare and legal rights.
  • Thresholds are yours. A probability is only useful with a threshold you chose on your own data, and a low top probability means a person, not a coin flip.

How do you set the thresholds?

  1. Collect 200 to 500 labelled examples per question from real traffic, including the ugly ones.
  2. Run them through the question as written, and store the probability per option.
  3. Plot precision and recall against the threshold for each option, and pick the point where the cost of a false positive and a false negative balance for that scenario.
  4. Define the escalation band: everything between the thresholds, plus refusals, goes to a person.
  5. Monitor drift weekly: the share of escalations, the agreement with human labels on a sample, and the distribution of top probabilities. A shift means the inputs changed or the model version did.
  6. Rerun the set on every new version of the model before switching the deployment.

Which service should you choose for a decision?

Figure 4 is the three-question guide. It ends in Decision-1 more often than you would expect, and in a language model whenever the answer has to be written.

Decision model or language model: a decision flow Can you list every acceptable answer up front? A language model structured outputs or function calling no yes Does the answer need a written explanation? A language model judge or an LLM for the text, Decision-1 for the score yes no Text only, up to 32K tokens per call? GPT-6 Luna through the Decisions API the same three question types, with images no yes Microsoft Decision-1: a predicate, choice or score question per concern, in one call choose each threshold on labelled examples; send low confidence and refusals to a person Not the sole basis for decisions about people: credit, employment, housing, insurance, education, healthcare, legal rights (model card). Speed and accuracy figures are Microsoft's own as of 6 November 2026; test on your data before you rely on them.
Figure 4. Decision model or language model. If you cannot list the answers, use an LLM with structured outputs; if you need a written explanation, use an LLM judge or combine it with Decision-1 for the score; if the input is not text or exceeds 32K tokens, use the Decisions API with gpt-6-luna or a multimodal model; otherwise Decision-1.
NeedFirst optionWhy
Fixed options, text, high volumeMicrosoft Decision-1Calibrated probability, milliseconds, $0.042 per million
Fixed options over text and imagesDecisions API with gpt-6-luna in Microsoft FoundrySame predicate, choice and score questions, image input, language-model prices
Your own JSON schema or a written explanationA language model with structured outputs (Responses API)The answer has to be generated
Fixed options, must self-hostA classifier fine-tuned on your labels, or an open model such as Qwen3.5-9B with log-probability scoringWeights you control; calibration is your job

Sources

  • Microsoft, Microsoft-Decision-1: Our model for fast decision-making, Achint Srivastava, 9 October 2026: base model, question types, calibration target, latency and accuracy comparisons, internal use cases, price and availability. Read on 6 November 2026.
  • Microsoft Learn, Foundry Models sold by Azure, page dated 21 September 2026 and updated 29 October 2026: the Microsoft-Decision-1 row (decision, text classification, zero-shot classification; calibrated decision scoring; yes/no, multiple-choice, rating, classification and rubric-based questions; single-pass scoring over inputs of up to 32K tokens; text only; no explanations).
  • Microsoft Learn, Use the Azure OpenAI Decisions API, page dated 21 October 2026: the predicate, choice and score question types, the request and response shapes, refusals and threshold guidance.
  • Microsoft Foundry catalogue, Microsoft-Decision-1: the abstention option and the restriction on consequential decisions about people. The catalogue opens inside the signed-in Foundry portal; those two points are as quoted by the write-ups below, so check them in your own tenant.
  • OpenRouter, microsoft/microsoft-decision-1: the listing of 9 October 2026 with the same price.
  • Third-party write-ups read on 6 November 2026 for the independent-verification status (no published benchmark figures on the catalogue entry; weights not distributed): eesel.ai and Orca Router. Their numbers are not used here.
  • My own study notes of November 2026 on the use-case table, the agent loop, the cost arithmetic and the threshold procedure, written from the projects on this site. The cost figures are list-price arithmetic on stated assumptions, not quotes.

Questions this answers

What is Microsoft Decision-1?

A decision-scoring model Microsoft announced on 9 October 2026 and lists in Microsoft Foundry as generally available. It is post-trained from Qwen3.5-9B for fast, single-pass decision scoring: given a text and a fixed set of answer options it returns a calibrated probability for every option, over inputs of up to 32,768 tokens, and generates no text.

Is Decision-1 an LLM?

It is built from one, a 9-billion-parameter Qwen3.5 model, but it is not used as one. A language model generates text token by token; Decision-1 scores options in a single forward pass and returns probabilities, so there are no output tokens, no rationale and nothing to parse.

What does Microsoft Decision-1 cost?

$0.042 per million input tokens, and output tokens are free, per Microsoft's announcement of 9 October 2026. It is sold directly by Azure in Microsoft Foundry, billed through the Azure subscription, and listed on OpenRouter.

What is the difference between a deprecated and a retired model, and does it apply here?

Deprecated means an end date is announced and the model still answers; retired means every call fails. Decision-1 was released in October 2026 and has no announced end date, but Microsoft says it will rebase the model on other bases, including Microsoft AI and OpenAI models, so keep your evaluation set to rerun on each version.

Which question types does Decision-1 support?

Yes/no questions that return a probability from 0 to 1, multiple-choice questions that return one option plus a probability per option, rating questions over ordered levels, and rubric-based grading of AI responses and agent actions. Several questions about the same text can go in one request, and the model can abstain with an option such as "cannot tell".

When should I use Decision-1 instead of GPT or Claude?

When you can list every acceptable answer up front and you do not need a written explanation: classify a ticket, route a request to an agent, prioritise a queue, decide whether a tool call needs approval, grade a generated answer against a rubric. When the answer has to be written, summarised or explained, use a language model.

Are the speed and accuracy claims independently verified?

Not as of 6 November 2026. The median latency about 35 times lower than GPT-6 Sol, the highest accuracy across 36 benchmarks and nearly 150,000 questions, and the 1.3 percent decision flips under perturbation are Microsoft's own measurements through Foundry. Third-party write-ups note that the Foundry catalogue publishes the methodology but no figures.

Can I download the Decision-1 weights?

No. The weights are not distributed, so there is no self-hosting, no fine-tuning and no quantised variant. Access is through Microsoft Foundry or OpenRouter. If you need a self-hosted decision model, the base, Qwen3.5-9B, is open-weight, and a small classifier fine-tuned on your labels is the classic alternative.

Can Decision-1 read images?

No, it is text only and does not accept or produce image, audio or video content. In Microsoft Foundry the Decisions API with the gpt-6-luna model offers the same three question types over text and images, at language model prices.

Tags:microsoft decision-1microsoft foundrydecision modelllmai agentsclassificationmodel routingllm evaluation

Related projects

Need something like this built? See my Services · Portfolio

← All articles