The model can now be forced to obey a schema
In 2023 you asked the model nicely to return JSON and prayed. In 2026 every major provider supports a structured-output mode where the model is constrained at the decoding level — every token sampled is checked against the schema, and tokens that would produce invalid JSON are simply not emitted. Output structure is no longer a prompt instruction; it's a server-side guarantee.
Per-provider features
- OpenAI —
response_format = {"type": "json_schema", "json_schema": {...}}. Strict mode enforces the schema exactly. - Anthropic — JSON mode via tool calling (define a single tool whose input_schema is the desired output, force its use). Native structured-output endpoint exists in newer SDKs.
- Gemini —
response_mime_type = "application/json"withresponse_schema.
What the prompt still does
Even with structured outputs enforced, the prompt does the heavy lifting: it explains the meaning of each field, the relationship between fields, and the policy for null/empty values. The schema is the shape; the prompt is the semantics. Don't treat structured output as a replacement for instruction.