Summary
The max_input_tokens for gpt-5, gpt-5-mini, and gpt-5-nano is set to 272,000 in model_list.json, but OpenAI's official documentation states a 400,000-token context window for all three models. The catalog convention is max_input_tokens = context_window — confirmed by every other OpenAI model in the catalog:
| Model |
max_input_tokens |
max_output_tokens |
Convention |
gpt-5.5 |
1,050,000 |
128,000 |
✅ max_input = context_window |
gpt-5.4-mini |
400,000 |
128,000 |
✅ max_input = context_window |
gpt-5.4-nano |
400,000 |
128,000 |
✅ max_input = context_window |
gpt-5 |
272,000 |
128,000 |
❌ = context_window − max_output |
gpt-5-mini |
272,000 |
128,000 |
❌ = context_window − max_output |
gpt-5-nano |
272,000 |
128,000 |
❌ = context_window − max_output |
The 272,000 value appears to have been incorrectly computed as 400,000 − 128,000 (context − max_output). Anthropic models also use the full context window (e.g., claude-sonnet-5 has max_input_tokens: 1000000 with max_output_tokens: 128000).
Affected Models
| Model ID |
Current max_input_tokens |
Correct max_input_tokens |
Line |
gpt-5 |
272,000 |
400,000 |
~537 |
gpt-5-mini |
272,000 |
400,000 |
~587 |
gpt-5-nano |
272,000 |
400,000 |
~603 |
All other fields (format, flavor, pricing, max_output_tokens, providers) are correct and unchanged.
Also affected but not included in this issue (4th model exceeds the 3-model limit):
gpt-5-pro: max_input_tokens 128,000 → should be 400,000 (same root cause; 128K = 400K − 272K max_output)
Verification Checklist
| Check |
Status |
Detail |
| Cross-source |
✅ |
Context window confirmed on individual model pages (gpt-5, gpt-5-mini, gpt-5-nano) — all state "400,000 context window" |
| Already fixed |
✅ |
All three entries currently show max_input_tokens: 272000 in model_list.json |
| ID format |
✅ |
Existing entries — no ID change |
| Duplicate check |
✅ |
No open issue covers GPT-5 context window / max_input_tokens |
Verification Notes
- "400,000 context window" is quoted directly from each model's official OpenAI docs page
- "128,000 max output tokens" is also quoted from the same pages — this field is already correct in the catalog
- The catalog convention (max_input_tokens = context_window) is consistent across all other major model families (GPT-5.4, GPT-5.5, Claude, Gemini)
Local Files Inspected
packages/proxy/schema/model_list.json — confirmed current values at lines ~537, ~587, ~603
packages/proxy/schema/models.ts — max_input_tokens described as "The model supports a maximum input token limit"
packages/proxy/scripts/sync_models.ts — none of these models are in SYNC_PRESERVED_FIELDS
{
"kind": "stale_metadata",
"provider": "openai",
"models": ["gpt-5", "gpt-5-mini", "gpt-5-nano"],
"status": "active",
"model_specs": {
"gpt-5": {
"format": "openai",
"flavor": "chat",
"multimodal": true,
"input_cost_per_mil_tokens": 1.25,
"output_cost_per_mil_tokens": 10,
"input_cache_read_cost_per_mil_tokens": 0.125,
"displayName": "GPT-5",
"reasoning": true,
"max_input_tokens": 400000,
"max_output_tokens": 128000,
"available_providers": ["openai", "azure"]
},
"gpt-5-mini": {
"format": "openai",
"flavor": "chat",
"multimodal": true,
"input_cost_per_mil_tokens": 0.25,
"output_cost_per_mil_tokens": 2,
"input_cache_read_cost_per_mil_tokens": 0.025,
"displayName": "GPT-5 mini",
"reasoning": true,
"max_input_tokens": 400000,
"max_output_tokens": 128000,
"available_providers": ["openai", "azure"]
},
"gpt-5-nano": {
"format": "openai",
"flavor": "chat",
"multimodal": true,
"input_cost_per_mil_tokens": 0.05,
"output_cost_per_mil_tokens": 0.4,
"input_cache_read_cost_per_mil_tokens": 0.005,
"displayName": "GPT-5 nano",
"reasoning": true,
"max_input_tokens": 400000,
"max_output_tokens": 128000,
"available_providers": ["openai", "azure"]
}
},
"source_urls": [
"https://developers.openai.com/api/docs/models/gpt-5",
"https://developers.openai.com/api/docs/models/gpt-5-mini",
"https://developers.openai.com/api/docs/models/gpt-5-nano"
]
}
Summary
The
max_input_tokensforgpt-5,gpt-5-mini, andgpt-5-nanois set to 272,000 inmodel_list.json, but OpenAI's official documentation states a 400,000-token context window for all three models. The catalog convention ismax_input_tokens = context_window— confirmed by every other OpenAI model in the catalog:gpt-5.5gpt-5.4-minigpt-5.4-nanogpt-5gpt-5-minigpt-5-nanoThe 272,000 value appears to have been incorrectly computed as
400,000 − 128,000(context − max_output). Anthropic models also use the full context window (e.g.,claude-sonnet-5hasmax_input_tokens: 1000000withmax_output_tokens: 128000).Affected Models
gpt-5gpt-5-minigpt-5-nanoAll other fields (format, flavor, pricing, max_output_tokens, providers) are correct and unchanged.
Also affected but not included in this issue (4th model exceeds the 3-model limit):
gpt-5-pro: max_input_tokens 128,000 → should be 400,000 (same root cause; 128K = 400K − 272K max_output)Verification Checklist
model_list.jsonVerification Notes
Local Files Inspected
packages/proxy/schema/model_list.json— confirmed current values at lines ~537, ~587, ~603packages/proxy/schema/models.ts—max_input_tokensdescribed as "The model supports a maximum input token limit"packages/proxy/scripts/sync_models.ts— none of these models are inSYNC_PRESERVED_FIELDS{ "kind": "stale_metadata", "provider": "openai", "models": ["gpt-5", "gpt-5-mini", "gpt-5-nano"], "status": "active", "model_specs": { "gpt-5": { "format": "openai", "flavor": "chat", "multimodal": true, "input_cost_per_mil_tokens": 1.25, "output_cost_per_mil_tokens": 10, "input_cache_read_cost_per_mil_tokens": 0.125, "displayName": "GPT-5", "reasoning": true, "max_input_tokens": 400000, "max_output_tokens": 128000, "available_providers": ["openai", "azure"] }, "gpt-5-mini": { "format": "openai", "flavor": "chat", "multimodal": true, "input_cost_per_mil_tokens": 0.25, "output_cost_per_mil_tokens": 2, "input_cache_read_cost_per_mil_tokens": 0.025, "displayName": "GPT-5 mini", "reasoning": true, "max_input_tokens": 400000, "max_output_tokens": 128000, "available_providers": ["openai", "azure"] }, "gpt-5-nano": { "format": "openai", "flavor": "chat", "multimodal": true, "input_cost_per_mil_tokens": 0.05, "output_cost_per_mil_tokens": 0.4, "input_cache_read_cost_per_mil_tokens": 0.005, "displayName": "GPT-5 nano", "reasoning": true, "max_input_tokens": 400000, "max_output_tokens": 128000, "available_providers": ["openai", "azure"] } }, "source_urls": [ "https://developers.openai.com/api/docs/models/gpt-5", "https://developers.openai.com/api/docs/models/gpt-5-mini", "https://developers.openai.com/api/docs/models/gpt-5-nano" ] }