add eu cross-region inference model ids for anthropic models (#685)

This commit is contained in:
Markus Ylisiurunen 2026-01-13 14:02:27 +02:00 committed by GitHub
parent 0f4d929a8e
commit 922b0a4668
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 69 additions and 13 deletions

View file

@ -154,14 +154,14 @@ async function loadModelsDevData(): Promise<Model<any>[]> {
id = "us." + id;
}
models.push({
const bedrockModel = {
id,
name: m.name || id,
api: "bedrock-converse-stream",
provider: "amazon-bedrock",
api: "bedrock-converse-stream" as const,
provider: "amazon-bedrock" as const,
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
reasoning: m.reasoning === true,
input: m.modalities?.input?.includes("image") ? ["text", "image"] : ["text"],
input: (m.modalities?.input?.includes("image") ? ["text", "image"] : ["text"]) as ("text" | "image")[],
cost: {
input: m.cost?.input || 0,
output: m.cost?.output || 0,
@ -170,7 +170,19 @@ async function loadModelsDevData(): Promise<Model<any>[]> {
},
contextWindow: m.limit?.context || 4096,
maxTokens: m.limit?.output || 4096,
});
};
models.push(bedrockModel);
// Add EU cross-region inference variants for Claude models
if (modelId.startsWith("anthropic.claude-haiku-4-5") ||
modelId.startsWith("anthropic.claude-sonnet-4-5") ||
modelId.startsWith("anthropic.claude-opus-4-5")) {
models.push({
...bedrockModel,
id: "eu." + modelId,
name: (m.name || modelId) + " (EU)",
});
}
}
}

View file

@ -158,6 +158,57 @@ export const MODELS = {
contextWindow: 163840,
maxTokens: 81920,
} satisfies Model<"bedrock-converse-stream">,
"eu.anthropic.claude-haiku-4-5-20251001-v1:0": {
id: "eu.anthropic.claude-haiku-4-5-20251001-v1:0",
name: "Claude Haiku 4.5 (EU)",
api: "bedrock-converse-stream",
provider: "amazon-bedrock",
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
reasoning: true,
input: ["text", "image"],
cost: {
input: 1,
output: 5,
cacheRead: 0.1,
cacheWrite: 1.25,
},
contextWindow: 200000,
maxTokens: 64000,
} satisfies Model<"bedrock-converse-stream">,
"eu.anthropic.claude-opus-4-5-20251101-v1:0": {
id: "eu.anthropic.claude-opus-4-5-20251101-v1:0",
name: "Claude Opus 4.5 (EU)",
api: "bedrock-converse-stream",
provider: "amazon-bedrock",
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
reasoning: true,
input: ["text", "image"],
cost: {
input: 5,
output: 25,
cacheRead: 0.5,
cacheWrite: 6.25,
},
contextWindow: 200000,
maxTokens: 64000,
} satisfies Model<"bedrock-converse-stream">,
"eu.anthropic.claude-sonnet-4-5-20250929-v1:0": {
id: "eu.anthropic.claude-sonnet-4-5-20250929-v1:0",
name: "Claude Sonnet 4.5 (EU)",
api: "bedrock-converse-stream",
provider: "amazon-bedrock",
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
reasoning: true,
input: ["text", "image"],
cost: {
input: 3,
output: 15,
cacheRead: 0.3,
cacheWrite: 3.75,
},
contextWindow: 200000,
maxTokens: 64000,
} satisfies Model<"bedrock-converse-stream">,
"global.amazon.nova-2-lite-v1:0": {
id: "global.amazon.nova-2-lite-v1:0",
name: "Nova 2 Lite",