Current model families
| Family | Model IDs in the live catalog | First workloads to test |
|---|---|---|
| Claude Opus | claude-opus-4-6, claude-opus-4-7, claude-opus-4-8, claude-opus-5, claude-opus-5-5 | Architecture, difficult debugging, long reviews |
| Claude Sonnet | claude-sonnet-4-6, claude-sonnet-5 | Daily coding, support, structured drafts |
| Claude Fable | claude-fable-5, claude-fable-5-1 | Controlled model comparisons |
| GPT | gpt-5.6-luna, gpt-5.6-terra, gpt-5.6-sol, gpt-6-luna, gpt-6-sol, gpt-6-astra, gpt-6.1-sol | General tasks, automation, coding |
| Gemini | gemini-3.1-pro, gemini-3.7-flash, gemini-3.8-flash | General text and fast processing tests |
| DeepSeek | deepseek-v4-flash, deepseek-v4-pro, deepseek-v4.1-flash | Coding and high-volume text tests |
| GLM | glm-5.2, glm-5.3, glm-5.3-flash | Separate coding and reasoning evaluations |
| Qwen | qwen3.8-flash, qwen3.8-max | Fast text routes and quality comparisons |
| Image | gpt-image-2, gpt-image-2-5, nano-banana, nano-banana-2, nano-banana-pro | Image generation and editing tests |
The names above are catalog IDs. They are not a promise of a benchmark position, a fixed context limit, or a particular price. Check the models documentation for current account terms.
Selection table
| Task | First route | Second route to compare |
|---|---|---|
| Hard architecture review | claude-opus-5-5 | gpt-6.1-sol |
| Routine code change | claude-sonnet-5 | gpt-6-sol |
| Bulk extraction | gpt-6-luna | deepseek-v4-flash |
| Customer support answer | claude-sonnet-5 | gemini-3.7-flash |
| Long technical document | claude-opus-5-5 | gemini-3.1-pro |
| Image generation | gpt-image-2 | nano-banana-2 |
A route is ready when it passes your fixture set. Check answer accuracy, schema compliance, latency, token use, retries, and refusal behavior. Keep the model ID in configuration so you can roll back without a code edit.
One API boundary
Keep provider-specific details at the edge of your application. The service chooses a model, sends the supported request shape, validates the response, and records the model ID. Your business code receives a typed result.
const model = process.env.AI_MODEL ?? "claude-sonnet-5";
const response = await client.responses.create({
model,
input: prompt,
});
return parseModelResponse(response);
The exact client method depends on the request protocol. Use the API guides for the integration you are building, and keep API keys in server-side secrets.
How to keep the catalog current
Read the model list during deployment checks and alert when a configured ID disappears. Keep historical posts labeled with their publication date. An old article can explain a migration without pretending its model list is current.
Do not bake public price claims into an application. Record the price returned or displayed for the account and date, then recalculate when the provider changes terms. The models page is the place to inspect current pricing before a budget decision.
A five-step evaluation
- Collect anonymized requests from the real workflow.
- Write a pass rule for each request.
- Run two model IDs with the same prompt and parser.
- Save failures, latency, and token counts.
- Move a small traffic slice before changing the default.
If a model fails a support policy or code review check, keep the failure in the fixture set. The next model comparison then has a concrete target.
FAQ
Does this list include every live model?
It lists the 32 model IDs returned by the public catalog checked on October 4, 2026. Recheck the API and models documentation before deployment because availability can change.
Why does this page not show exact prices?
The live catalog response used for this update did not provide a stable public price sheet. Prices can also depend on account terms. Use the current models page and calculator for a real estimate.
Which model should be the default?
Start with Sonnet 5 or GPT 6 Sol for a mixed workload, then compare them with your fixtures. Use Opus 5.5 or GPT 6.1 Sol for cases that need more careful reasoning.
Can I use image models through the same API key?
The current catalog lists the image IDs in the same service. Check the supported endpoint and response shape for the selected image route before connecting it to your app.
How should I handle a retired ID?
Keep the old route available only for migration, map it to a tested replacement, and run the fixture set before changing the production default. Do not assume two similarly named IDs behave the same.