anomalyco / anomalyco/models.dev

Bedrock: Mantle models template `api` on `${AWS_REGION}`, but aren't served in every region

Open
#4,818 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
6.9k
Forks
1.7k
Avg merge
3h 21m
Merged PRs (30d)
873

Description

The Mantle-routed Bedrock models build their endpoint from the consumer's region:

api = "https://bedrock-mantle.${AWS_REGION}.api.aws/openai/v1"

Mantle's coverage varies by region though, so with a non-US AWS_REGION you get a 404 with no hint that region is the problem:

POST bedrock-mantle.eu-west-1.api.aws/openai/v1/responses {"model":"openai.gpt-5.6-terra"}
  → 404 The model 'openai.gpt-5.6-terra' does not exist
POST bedrock-mantle.us-east-1.api.aws/openai/v1/responses  (same body)
  → 200

Same 200/404 split for gpt-5.6-luna, gpt-5.6-sol, openai.gpt-5.4, openai.gpt-5.5 and xai.grok-4.3. us-east-2 and us-west-2 serve them too.

openai.gpt-oss-120b works in both regions, so this looks like per-model coverage rather than a provider-wide thing — its ${AWS_REGION} should stay as-is.

Two suggestions below, a la carte — they're independent of each other, so either one helps on its own and they can be merged separately.

1. Pin the affected Mantle models to us-east-1

-api = "https://bedrock-mantle.${AWS_REGION}.api.aws/openai/v1"
+api = "https://bedrock-mantle.us-east-1.api.aws/openai/v1"

That unlocks these models for people in every AWS region, and the only cost is a bit of routing loss for the few who are currently in us-east-2/us-west-2. us-east-1 serves every Mantle model, so it's the most compatible choice. It also lines up with the pricing already in those files (the comments say US East in-region).

2. Add global.openai.gpt-5.6-* entries

So the catalog would list both "GPT 5.6 Sol" and "GPT 5.6 Sol (Global)", same as the global.anthropic.* variants do today. AWS added these global endpoints on 13th August and I've confirmed they work — global.openai.gpt-5.6-terra returns 200 from eu-west-1. Small quirk: the global endpoints go through Bedrock core, not Mantle, so the files would just be a base_model + (Global) name with no [provider] block, letting them fall through to Converse.

Related: #607, #37

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Inspect the catalog entries for the Mantle-routed models and compare them with the existing global.anthropic.* entries. Choose one of the independent approaches described in the issue, then verify that the affected models work from non-US regions while openai.gpt-oss-120b retains its regional endpoint.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws
Domain
cloud, data
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.