Skip to content

feat(models): refresh OpenAI / Anthropic model identifiers (May 2026)#41

Merged
iskakaushik merged 2 commits intomainfrom
feat/update-models-may-2026
May 1, 2026
Merged

feat(models): refresh OpenAI / Anthropic model identifiers (May 2026)#41
iskakaushik merged 2 commits intomainfrom
feat/update-models-may-2026

Conversation

@iskakaushik
Copy link
Copy Markdown
Collaborator

Summary

Brings the public model identifier surface up to date for both providers and aligns the runtime `supported_models()` with the headers.

OpenAI (`include/ai/openai.h`, `src/providers/openai/openai_client.cpp`)

  • Promote the GPT-5 family to current: `gpt-5.4` / `-pro` / `-mini` / `-nano`, `gpt-5-mini`, `gpt-5-nano`, plus `gpt-4.1` / `-mini`.
  • Default model → `kGpt54`.
  • Older identifiers (gpt-5, gpt-5.1, gpt-5.2, gpt-4o*, gpt-4-turbo, gpt-4, gpt-3.5-turbo, o1/o3/o4 variants) retained but marked DEPRECATED for backward compatibility.
  • Drop unverified `gpt-5.5` / `gpt-5.5-pro` — neither appears in OpenAI's public catalog nor in the Vercel AI SDK's curated `OpenAIChatModelId` / `OpenAIResponsesModelId` unions.

Anthropic (`include/ai/anthropic.h`, `src/providers/anthropic/anthropic_client.cpp`)

  • Promote `claude-opus-4-7`, `claude-sonnet-4-6`, `claude-opus-4-6`, `claude-haiku-4-5`. Default → `kClaudeSonnet46`.
  • `supported_models()` now contains both the friendly aliases (`claude-sonnet-4-5`) and dated snapshots (`claude-sonnet-4-5-20250929`) so `client.supports_model(ai::anthropic::models::kClaudeSonnet45)` no longer returns false.

Tests / examples / mocks / README updated to the new defaults. Fixes the previously-failing `AnthropicIntegrationTest.DefaultModelGeneration` which still asserted on the old `claude-sonnet-4-5` default — assertion now derives from `kDefaultModel`.

Test plan

  • `ctest -R OpenAIClient` — 13/13
  • `ctest -R AnthropicClient` — 13/13
  • `AnthropicIntegrationTest.DefaultModelGeneration` + `BasicTextGeneration` — 2/2 pass against real Anthropic API
  • Examples build (basic_chat, multi_provider, tool_calling_*, etc.)

OpenAI:
- Replace the gpt-4o / gpt-4 / gpt-3.5 lineup with the GPT-5 family as
  current (gpt-5.4 / -pro / -mini / -nano, gpt-5-mini, gpt-5-nano,
  gpt-4.1 / -mini). Older identifiers retained but marked DEPRECATED.
- Default model -> kGpt54.
- Drop unverified gpt-5.5 / gpt-5.5-pro entries (not in OpenAI's public
  catalog or in the Vercel AI SDK's curated list).

Anthropic:
- Promote claude-opus-4-7 / claude-sonnet-4-6 / claude-opus-4-6 /
  claude-haiku-4-5 to current; default model -> kClaudeSonnet46.
- supported_models() now lists both the friendly aliases (e.g.
  claude-sonnet-4-5) and the dated snapshots (e.g. -20250929) so the
  identifiers exposed by ai::anthropic::models::* validate via
  supports_model().

Tests / examples / mocks / README updated to the new defaults. Fixes
the previously-failing AnthropicIntegrationTest.DefaultModelGeneration
which still asserted against the old claude-sonnet-4-5 default.
@iskakaushik iskakaushik merged commit e2a4f48 into main May 1, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant