You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tooling.apache.org by ak...@apache.org on 2026/07/13 16:01:19 UTC
(tooling-gofannon) branch main updated: bedrock-mythos: migrate to Claude Mythos 5 on us-east-1
This is an automated email from the ASF dual-hosted git repository.
andrewmusselman pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tooling-gofannon.git
The following commit(s) were added to refs/heads/main by this push:
new e2826da bedrock-mythos: migrate to Claude Mythos 5 on us-east-1
e2826da is described below
commit e2826da47da496882dbbde39e7f6c2b92ee68e69
Author: Andrew Musselman <ak...@apache.org>
AuthorDate: Mon Jul 13 09:00:58 2026 -0700
bedrock-mythos: migrate to Claude Mythos 5 on us-east-1
Mythos preview transitioned to a numbered GA release. Update the
gofannon bedrock-mythos provider to the current endpoint and model:
- Region: ap-southeast-4 → us-east-1
- Model: anthropic.claude-mythos-preview → anthropic.claude-mythos-5
- litellm prefix: bedrock_mantle → bedrock/mantle
The last change is the important one: litellm has two Mantle providers
with confusingly similar names:
- bedrock_mantle/... (underscore) → BedrockMantleChatConfig →
/v1/chat/completions (OpenAI Chat Completions shape). This is
what we had, and it silently returned wrong-region-wrong-path
errors that looked like entitlement failures.
- bedrock/mantle/... (slash) → AmazonMantleMessagesConfig →
/anthropic/v1/messages (Anthropic Messages shape). This is what
Anthropic models on Mantle need.
Verified end-to-end via litellm.acompletion in dev — model
bedrock/mantle/anthropic.claude-mythos-5 returns real completions
with correct usage metadata.
Also fix docker-compose.override.yml AWS_REGION and correct two
stale doc comments in llm_service.py that referenced the wrong URL
path.
---
.../packages/api/user-service/config/bedrock_mythos/__init__.py | 2 +-
webapp/packages/api/user-service/config/provider_config.py | 9 +++++----
webapp/packages/api/user-service/services/llm_service.py | 6 ++----
3 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/webapp/packages/api/user-service/config/bedrock_mythos/__init__.py b/webapp/packages/api/user-service/config/bedrock_mythos/__init__.py
index 5d9cfb9..a8518db 100644
--- a/webapp/packages/api/user-service/config/bedrock_mythos/__init__.py
+++ b/webapp/packages/api/user-service/config/bedrock_mythos/__init__.py
@@ -9,7 +9,7 @@ models = {
# may need updating. Worth verifying when Anthropic's setup email
# confirms which thinking format Mythos expects.
# =========================================================================
- "anthropic.claude-mythos-preview": {
+ "anthropic.claude-mythos-5": {
"returns_thoughts": True,
"supports_effort": True,
"supports_thinking": True,
diff --git a/webapp/packages/api/user-service/config/provider_config.py b/webapp/packages/api/user-service/config/provider_config.py
index 14b72be..16823d3 100644
--- a/webapp/packages/api/user-service/config/provider_config.py
+++ b/webapp/packages/api/user-service/config/provider_config.py
@@ -38,13 +38,14 @@ PROVIDER_CONFIG = {
# Config knobs:
# aws_region — region where Mythos is provisioned
# assume_role_arn — cross-account devs role to assume
- # litellm_provider_prefix — built as "bedrock_mantle/<model-id>"
+ # litellm_provider_prefix — built as "bedrock/mantle/<model-id>"
# so litellm routes through its Mantle
- # provider (OpenAI-compatible endpoint)
+ # provider (Anthropic Messages endpoint at
+ # /anthropic/v1/messages)
"bedrock-mythos": {
- "aws_region": "ap-southeast-4",
+ "aws_region": "us-east-1",
"assume_role_arn": "arn:aws:iam::861792231409:role/bedrock-devs",
- "litellm_provider_prefix": "bedrock_mantle",
+ "litellm_provider_prefix": "bedrock/mantle",
"models": bedrock_mythos_models,
},
"openrouter": {
diff --git a/webapp/packages/api/user-service/services/llm_service.py b/webapp/packages/api/user-service/services/llm_service.py
index 3bfcd57..d66a7a1 100644
--- a/webapp/packages/api/user-service/services/llm_service.py
+++ b/webapp/packages/api/user-service/services/llm_service.py
@@ -290,8 +290,7 @@ async def call_llm(
# bedrock-mythos: mint a short-lived Mantle bearer token at
# request time, pass it to litellm as api_key. Also pass the
# region — litellm uses it to construct the Mantle endpoint URL
- # (bedrock-mantle.{region}.api.aws/v1); without it litellm
- # defaults to us-east-1 which doesn't host Mythos.
+ # (bedrock-mantle.{region}.api.aws/anthropic/v1/messages).
# The bearer token overrides any user-specific key above since
# bedrock-mythos auth is account-scoped, not per-user. See
# _get_bedrock_mythos_api_key().
@@ -725,8 +724,7 @@ async def stream_llm(
# bedrock-mythos: mint a short-lived Mantle bearer token at
# request time, pass it to litellm as api_key. Also pass the
# region — litellm uses it to construct the Mantle endpoint URL
- # (bedrock-mantle.{region}.api.aws/v1); without it litellm
- # defaults to us-east-1 which doesn't host Mythos.
+ # (bedrock-mantle.{region}.api.aws/anthropic/v1/messages).
# The bearer token overrides any user-specific key above since
# bedrock-mythos auth is account-scoped, not per-user. See
# _get_bedrock_mythos_api_key().
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tooling.apache.org
For additional commands, e-mail: commits-help@tooling.apache.org