Decisions | OpenAI API
Short summary
OpenAI released the Decisions API, a beta tool that evaluates text and images to return typed answers—probabilities, category selections, or scored ratings—10x faster than the Responses API. It's built for content classification, request routing, and work prioritization without needing to generate free-form text.
- Three question types handle different tasks: predicates return probability estimates for yes/no conditions, choices select from fixed categories, and scores rate inputs against ordered severity levels using probability-weighted averages.
- The API costs $0.10 per 1M input tokens with no output charges, supports HIPAA and Zero Data Retention for eligible customers, and currently runs only on gpt-6-luna model via a dedicated endpoint.
- Real use cases include flagging product photos with visible damage (predicate), routing customer complaints to departments (choice), and assessing bug severity for triage (score).
Full summary
OpenAI's Decisions API handles classification and routing tasks 10x faster than their Responses API by returning typed answers instead of generated text. It evaluates text, images, or both and comes in three flavors: predicates (probability a condition is true, 0–1), choices (pick one from your fixed options), and scores (rate against ordered levels). The API uses only gpt-6-luna right now and costs $0.10 per million input tokens with no output charges. It's still in public beta but heading to general availability soon.
The three question types solve different problems. Predicates work for yes-or-no checks like spotting visible damage in product photos—you get back a probability (0.92 means 92% confident there's damage). Choices handle routing, like sending a customer complaint to billing, technical support, or shipping based on content; you get the winning option plus probability breakdowns for each choice and a confidence score. Scores evaluate against rubrics like issue severity by returning a probability-weighted average across ordered levels, so you might get 1.1 on a scale where 0 is cosmetic, 1 is workaround available, and 2 is fully blocked.
Use the Decisions API when you need one of those three answer types. If you need to extract structured data, generate explanations, or call functions, stick with Structured Outputs or function calling instead. For dependent decisions (like checking for damage first, then routing to repair if needed), send separate requests. Set your thresholds based on what false positives and false negatives cost you—labeled examples from your own data beat guessing.