ModelSpec is an analysis of alternatives for AI models: it decides which models fit a job from your requirements, sourced benchmarks and real cost, and shows its work.
Long documents
Find a text model that can accept million-token documents and produce strong written analysis.
Worked example as of 2026-09-23, from the public data image.
Million-token context; quality first, cost as a tie-breaker.
Requirements
model.class = text-generator: The result must be generated as text.model.context_window >= 1000000: The model must accept a million-token document in one request.
Preferences
writing: Prefer clear, high-quality long-form writing.reasoning: Prefer stronger multi-step analysis of the document.-offering.cost_per_task: Use cost as a smaller tie-breaker after writing and reasoning quality.
Applied template spec
spec_version- 1
where- model.class = text-generator
- model.context_window >= 1000000
optimizeweightswriting- 0.5
reasoning- 0.3
-offering.cost_per_task- 0.2
Worked answer
Decision status: partial.
No recommendation: the public image has no answer with enough evidence.
This is a partial answer. Unknown facts or missing objective evidence can leave eligible candidates unranked.
probability bands: a model joins the leader when P(its score >= the leader's) >= 0.25 under the score posteriors; a weighted capability with an 80% interval wider than 2.8 is not enough evidence
Score and score interval use the objective's dimensionless normalised units. Cost per task is for the engine-selected offering and the applied spec's task size. When task size is omitted, the engine uses its documented default. P(best) is the engine probability. Unavailable means the engine did not return a value. Thin evidence is undetermined and is not a recommendation.
Thin evidence: undetermined
| Model | Score | Score interval | P(best) | Cost per task, USD | Capability estimates and intervals |
|---|---|---|---|---|---|
google/gemini-3-7-flash | 0.791458 | [-0.257187, 1.840103] | 0.1015625 | 0.045 |
|
google/gemini-3-8-flash | 0.78012 | [-0.216673, 1.776913] | 0.08203125 | 0.045 |
|
anthropic/claude-opus-4-6 | 0.741334 | [-0.257456, 1.740125] | 0.06640625 | 0.3 |
|
anthropic/claude-fable-5-1 | 0.67071 | [-0.373527, 1.714948] | 0.04296875 | 0.6 |
|
anthropic/claude-fable-5 | 0.634924 | [-0.414579, 1.684427] | 0.0625 | 0.6 |
|
google/gemini-3-1-pro-preview | 0.623031 | [-0.37576, 1.621821] | 0.0625 | 0.128 |
|
openai/gpt-5-6-sol | 0.580157 | [-0.472287, 1.632601] | 0.05859375 | 0.24 |
|
anthropic/claude-opus-4-7 | 0.569051 | [-0.42974, 1.567841] | 0.05859375 | 0.3 |
|
anthropic/claude-opus-5 | 0.566419 | [-0.484461, 1.617299] | 0.04296875 | 0.3 |
|
meta/muse-spark-1-3 | 0.53194 | [-0.798338, 1.862218] | 0.109375 | 0.067 |
|
google/gemini-3-5-flash | 0.518371 | [-0.538896, 1.575638] | 0.078125 | 0.096 |
|
zhipu/glm-5-3 | 0.46333 | [-0.584231, 1.510891] | 0.0546875 | 0.0736 |
|
openai/gpt-6-astra | 0.454539 | [-0.542479, 1.451557] | 0.04296875 | 0.6 |
|
openai/gpt-5-4 | 0.408376 | [-0.60046, 1.417212] | 0.0234375 | 0.16 |
|
meta/muse-spark-1-1 | 0.329212 | [-1.001067, 1.65949] | 0.05859375 | 0.067 |
|
zhipu/glm-5-2 | 0.306316 | [-0.747665, 1.360297] | 0.03515625 | 0.0736 |
|
deepseek/deepseek-v4-pro | 0.191481 | [-0.863308, 1.246271] | 0.01953125 | 0.06864 |
|
Unknown requirements
Some candidates may qualify. Missing facts:
model.context_windowoffering.cost_per_taskreasoningwriting
Engine warnings
- not_separable
- proxy_evidence_only
Omitted result rows: models 7; offerings 10. The bands above include all ranked models.
Decision dec_da950856dd6ff0655d97ff6a on public snapshot snap_05a963d2477ac2fb.
What this template teaches
Context capacity is a Must; writing, reasoning, and cost remain trade-offs expressed as Prefers.
The live board uses current data. Its answer can change as evidence changes.
Human lookup is free on Decide. CLI, API, and MCP access requires a key. Access and pricing.