Files
librefang-registry/providers/anthropic.toml
T
Evan 80c6ee79cd feat(anthropic): add Claude Opus 4.7 and fix Opus 4.6 context window (#66)
Add `claude-opus-4-7`, Anthropic's current flagship model (per
https://platform.claude.com/docs/en/docs/about-claude/models/overview).

- Context window: 1,000,000 tokens (Opus 4.7 ships with a new tokenizer)
- Max output: 128,000 tokens
- Pricing: $5 / input MTok, $25 / output MTok (unchanged from 4.6)
- Tier: frontier
- Supports tools, vision, streaming, and adaptive thinking

Move the `opus` / `claude-opus` aliases from 4.6 to 4.7 so a user asking
for "opus" gets the current flagship. Opus 4.6 is now in Anthropic's
"Legacy" section of the models overview; keeping it in the registry
entry (for existing callers that pin the exact ID) but without the
generic aliases.

Also **correct Opus 4.6's `context_window`**: it was listed as 200,000
tokens but the official model page has shown 1M tokens since release.
That was a pre-existing bug this PR fixes in passing since it directly
affects anyone who'd have routed queries to 4.6 expecting 1M.

Add a header comment pinning the source URL and explaining the
"latest-first" ordering convention so future additions don't silently
rebind aliases to a previous-generation snapshot.
2026-04-20 14:15:45 +09:00

114 lines
2.6 KiB
TOML

# Anthropic — https://anthropic.com
# Models: 7
[provider]
id = "anthropic"
display_name = "Anthropic"
api_key_env = "ANTHROPIC_API_KEY"
base_url = "https://api.anthropic.com"
key_required = true
# Source for model metadata:
# https://platform.claude.com/docs/en/docs/about-claude/models/overview
# Keep entries ordered with the currently-promoted "latest" at the top so the
# `opus` / `claude-opus` / `sonnet` / etc. aliases resolve to the current
# flagship and not a previous-generation snapshot.
[[models]]
id = "claude-opus-4-7"
display_name = "Claude Opus 4.7"
tier = "frontier"
context_window = 1000000
max_output_tokens = 128000
input_cost_per_m = 5.0
output_cost_per_m = 25.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = ["opus", "claude-opus"]
[[models]]
id = "claude-opus-4-6"
display_name = "Claude Opus 4.6"
tier = "frontier"
context_window = 1000000
max_output_tokens = 128000
input_cost_per_m = 5.0
output_cost_per_m = 25.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "claude-sonnet-4-6"
display_name = "Claude Sonnet 4.6"
tier = "smart"
context_window = 200000
max_output_tokens = 64000
input_cost_per_m = 3.0
output_cost_per_m = 15.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = ["sonnet", "claude-sonnet"]
[[models]]
id = "claude-opus-4-20250514"
display_name = "Claude Opus 4"
tier = "frontier"
context_window = 200000
max_output_tokens = 32000
input_cost_per_m = 15.0
output_cost_per_m = 75.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "claude-sonnet-4-20250514"
display_name = "Claude Sonnet 4"
tier = "smart"
context_window = 200000
max_output_tokens = 64000
input_cost_per_m = 3.0
output_cost_per_m = 15.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "claude-haiku-4-5-20251001"
display_name = "Claude Haiku 4.5"
tier = "fast"
context_window = 200000
max_output_tokens = 8192
input_cost_per_m = 0.25
output_cost_per_m = 1.25
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = ["haiku", "claude-haiku"]
[[models]]
id = "claude-sonnet-4-5-20250514"
display_name = "Claude Sonnet 4.5"
tier = "smart"
context_window = 200000
max_output_tokens = 64000
input_cost_per_m = 3.0
output_cost_per_m = 15.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []